bugs.
ndb/include/util/UtilBuffer.hpp:
Fix accessing memory after free(), if called with source and destination
pointer the same (which should not really happen...).
Fixes a problem in ndb_restore.
ndb/src/common/util/SimpleProperties.cpp:
Fix typo in check of maxValue.
Fix some too small buffers in backup
ndb/include/kernel/ndb_limits.h:
backport for 5.1
add MAX_WORDS_META_FILE for computing Backup::NO_OF_PAGES_META_FILE
ndb/src/kernel/blocks/backup/Backup.cpp:
Make sure to set maxInsert so that we actually can handle NO_OF_META_PAGES
ndb/src/kernel/blocks/backup/Backup.hpp:
backport for 5.1
add MAX_WORDS_META_FILE for computing Backup::NO_OF_PAGES_META_FILE
and other commands related to ndb. For all of these, the help screen contains
"Ndb.cfg" string. Now i change the "Ndb.cfg" to "my.cnf" because "Ndb.cfg" is obsolete.
ndb/include/util/ndb_opts.h:
Change help info from Ndb.cfg to my.cnf in the header file.
ndb/test/ndbapi/flexScan.cpp:
Change help info from Ndb.cfg to my.cnf.
ndb/tools/ndb_config.cpp:
Change help info from Ndb.cfg to my.cnf
Fixed the cluster logfile rotation code, let the cluster logfile be renamed correctly when the main logfile exceeds the configured maximum size.
ndb/include/util/File.hpp:
Fix for BUG#21345, Error in cluster logfile rotation.
ndb/src/common/logger/FileLogHandler.cpp:
Fix for BUG#21345, Error in cluster logfile rotation.
ndb/src/common/util/File.cpp:
Fix for BUG#21345, Error in cluster logfile rotation.
bug #18184 SELECT ... FOR UPDATE does not work..: New test case
ha_ndbcluster.h, ha_ndbcluster.cc, NdbConnection.hpp:
Fix for bug #21059 Server crashes on join query with large dataset with NDB tables: Releasing operation for each intermediate batch, before next call to trans->execute(NoCommit);
mysql-test/r/ndb_lock.result:
bug #18184 SELECT ... FOR UPDATE does not work..: New test case
mysql-test/t/ndb_lock.test:
bug #18184 SELECT ... FOR UPDATE does not work..: New test case
ndb/include/ndbapi/NdbConnection.hpp:
Fix for bug #21059 Server crashes on join query with large dataset with NDB tables: Releasing operation for each intermediate batch, before next call to trans->execute(NoCommit);
sql/ha_ndbcluster.cc:
Fix for bug #21059 Server crashes on join query with large dataset with NDB tables: Releasing operation for each intermediate batch, before next call to trans->execute(NoCommit);
sql/ha_ndbcluster.h:
Fix for bug #21059 Server crashes on join query with large dataset with NDB tables: Releasing operation for each intermediate batch, before next call to trans->execute(NoCommit);
- invalidate ndb dict cache on cluster disconnect (ClusterMgr.cpp)
- add check for correct frm on external lock when table cache is found invalid
ndb/include/ndbapi/ndb_cluster_connection.hpp:
Bug #16875 Using stale MySQLD FRM files can cause restored cluster to fail
ndb/src/ndbapi/ClusterMgr.cpp:
Bug #16875 Using stale MySQLD FRM files can cause restored cluster to fail
ndb/src/ndbapi/ClusterMgr.hpp:
Bug #16875 Using stale MySQLD FRM files can cause restored cluster to fail
ndb/src/ndbapi/DictCache.cpp:
Bug #16875 Using stale MySQLD FRM files can cause restored cluster to fail
ndb/src/ndbapi/DictCache.hpp:
Bug #16875 Using stale MySQLD FRM files can cause restored cluster to fail
ndb/src/ndbapi/TransporterFacade.hpp:
Bug #16875 Using stale MySQLD FRM files can cause restored cluster to fail
ndb/src/ndbapi/ndb_cluster_connection.cpp:
Bug #16875 Using stale MySQLD FRM files can cause restored cluster to fail
ndb/src/ndbapi/ndb_cluster_connection_impl.hpp:
Bug #16875 Using stale MySQLD FRM files can cause restored cluster to fail
sql/ha_ndbcluster.cc:
Bug #16875 Using stale MySQLD FRM files can cause restored cluster to fail
mysql-test/r/ndb_autodiscover3.result:
Bug #16875 Using stale MySQLD FRM files can cause restored cluster to fail
mysql-test/t/ndb_autodiscover3.test:
Bug #16875 Using stale MySQLD FRM files can cause restored cluster to fail
Unleash backup to write more than 32k at a time
Using parameter BackupMaxWriteSize
(greatly affect LCP time in 5.1, set default value to 256k)
ndb/include/mgmapi/mgmapi_config_parameters.h:
Add config fro max write size in backup
ndb/src/kernel/blocks/backup/BackupInit.cpp:
Unleash backup to write more than 32k at a time
ndb/src/mgmsrv/ConfigInfo.cpp:
Add config fro max write size in backup
ndb_mgmd limited no of api nodes, by restricting no of mgmsessions
(these are used for dynamic port allocation)
ndb/include/util/SocketServer.hpp:
Increase default max session to ~0
ndb/src/common/util/SocketServer.cpp:
Increase default max session to ~0
post weeked fixes :-)
change impl. to use READ_NODESREQ to query state of other qmgr(partition)
this as it has no (current) side effects, so that it's possible only to kill
starting cluster (if one started and one starting)
ndb/include/kernel/signaldata/FailRep.hpp:
Add paritioned FAIL_REP
ndb/src/kernel/blocks/qmgr/Qmgr.hpp:
Use READ_NODESREQ to query state of other QMGR (instead of CM_REGREQ)
ndb/src/kernel/blocks/qmgr/QmgrInit.cpp:
Use READ_NODESREQ to query state of other QMGR (instead of CM_REGREQ)
ndb/src/kernel/blocks/qmgr/QmgrMain.cpp:
Use READ_NODESREQ to query state of other QMGR (instead of CM_REGREQ)
ndb/test/ndbapi/testNodeRestart.cpp:
Require that only starting cluster dies
this also impl. gcp safe multi node shutdown
1) block gcp
2) wait for ongoing gcp
3) inform all stopping QMGR's (so that they don't start with error handler)
4) wait for all QMGR's to reply
5) broadcast failrep for stopping nodes
6) (if !master died) unblock gcp
ndb/include/kernel/signaldata/DumpStateOrd.hpp:
Impl. GCP safe multi node shutdown in order to test bug#18612
ndb/include/kernel/signaldata/FailRep.hpp:
Impl. GCP safe multi node shutdown in order to test bug#18612
ndb/include/kernel/signaldata/StopReq.hpp:
Impl. GCP safe multi node shutdown in order to test bug#18612
ndb/src/kernel/blocks/ndbcntr/Ndbcntr.hpp:
Impl. GCP safe multi node shutdown in order to test bug#18612
ndb/src/kernel/blocks/ndbcntr/NdbcntrInit.cpp:
Impl. GCP safe multi node shutdown in order to test bug#18612
ndb/src/kernel/blocks/ndbcntr/NdbcntrMain.cpp:
Impl. GCP safe multi node shutdown in order to test bug#18612
ndb/src/kernel/blocks/qmgr/Qmgr.hpp:
Impl. GCP safe multi node shutdown in order to test bug#18612
ndb/src/kernel/blocks/qmgr/QmgrInit.cpp:
Impl. GCP safe multi node shutdown in order to test bug#18612
ndb/src/kernel/blocks/qmgr/QmgrMain.cpp:
Impl. GCP safe multi node shutdown in order to test bug#18612
ndb/test/ndbapi/testNodeRestart.cpp:
test program for bug#18612
Partial system restart, can not try to start with higher GCI that own
even if knowing about a higher number
ndb/include/kernel/signaldata/DumpStateOrd.hpp:
Add new dump for setting time between gcp
ndb/include/kernel/signaldata/StartPerm.hpp:
Move error codes into StartPerm + Add new error code
ndb/src/kernel/blocks/ERROR_codes.txt:
Add new error insert
ndb/src/kernel/blocks/dbdih/Dbdih.hpp:
Move error codes into StartPerm + Add new error code
ndb/src/kernel/blocks/dbdih/DbdihMain.cpp:
Fix so that we don't try to restart to a too new GCI when doing a partial start
Add new error code when this node later tries to join
ndb/test/include/NdbRestarter.hpp:
Add new method for selecting random node
ndb/test/ndbapi/testSystemRestart.cpp:
Add new testcase for bug#18385
ndb/test/run-test/daily-basic-tests.txt:
Run test in daily-basic
ndb/test/src/NdbRestarter.cpp:
Add new method for selecting random node
Activly abort transactions (that's affected) during NF
This removes a lot of bugs that can occur otherwise is using
high value for TransactionDeadLockTimout
ndb/include/kernel/signaldata/TcContinueB.hpp:
New continueb for active transaction abort on nf
ndb/src/kernel/blocks/dbtc/Dbtc.hpp:
Add bitmask of participating nodes to transaction record
Add bitmask of node fail steps, so that NF_CompleteRep is not sent until all steps has completed
ndb/src/kernel/blocks/dbtc/DbtcMain.cpp:
Active transaction baortion
Implement error reporting to Logger and associated classes.
ndb/include/logger/LogHandler.hpp:
Add error string to LogHandler along with error code
ndb/include/logger/Logger.hpp:
Add reporting back of error to addHandler(BaseString).
ndb/src/common/logger/FileLogHandler.cpp:
Implement error reporting
ndb/src/common/logger/LogHandler.cpp:
Implement error reporting.
Trim spaces and tabs out of parameter names. This allows "p=v, param=value"
ndb/src/common/logger/Logger.cpp:
Report back errors when adding a handler via BaseString
ndb/src/common/logger/SysLogHandler.cpp:
Report an error on invalid syslog facility
ndb/src/mgmsrv/MgmtSrvr.cpp:
Report error when adding log handler
into perch.ndb.mysql.com:/home/jonas/src/mysql-4.1-push
ndb/src/ndbapi/NdbImpl.hpp:
Auto merged
ndb/src/ndbapi/NdbRecAttr.cpp:
Auto merged
ndb/src/ndbapi/ndb_cluster_connection.cpp:
Auto merged
Fix race between INCL_NODEREQ(prio b) and GCP_PREPARE(prio a) by also waiting for starting nodes
ndb/include/ndb_version.h.in:
Handle upgrade of bug fix
ndb/src/kernel/blocks/ERROR_codes.txt:
New error code for delaying INCL_NODE_REQ
ndb/src/kernel/blocks/dbdih/DbdihMain.cpp:
Fix race between INCL_NODEREQ(prio b) and GCP_PREPARE(prio a)
by also waiting for starting nodes
ndb/test/ndbapi/testNodeRestart.cpp:
Add testcase for bug#15632
Fix error in NF during NR
ndb/include/kernel/signaldata/DumpStateOrd.hpp:
Add dump for ERROR 5002 with specified table
ndb/src/kernel/blocks/ERROR_codes.txt:
Add dump for ERROR 5002 with specified table
ndb/src/kernel/blocks/dbdih/DbdihMain.cpp:
Run updateNodeInfo if failed node is not in list of storedReplicas
ndb/src/kernel/blocks/dblqh/Dblqh.hpp:
Add dump for ERROR 5002 with specified table
ndb/src/kernel/blocks/dblqh/DblqhMain.cpp:
Add dump for ERROR 5002 with specified table
ndb/test/ndbapi/testNodeRestart.cpp:
Add testcase for bug#15587
ndb/test/run-test/daily-basic-tests.txt:
Add testcase for bug#15587
mysql-test/r/ndb_charset.result:
bug#14007 test [re-commit]
mysql-test/t/ndb_charset.test:
bug#14007 test [re-commit]
ndb/include/kernel/AttributeDescriptor.hpp:
bug#14007 4.1 need getSizeInBytes [re-commit]
ndb/src/kernel/blocks/dbtup/DbtupRoutines.cpp:
bug#14007 4.1 *** do not AUTOmerge to 5.0 *** [re-commit]
ndb/include/kernel/signaldata/DumpStateOrd.hpp:
New dump for index operation count
ndb/src/kernel/blocks/dbtc/DbtcMain.cpp:
New dump for index operation count
Fix leak on index ops
BUG#12037 ndb_mgmd IP address do not show in other ndb_mgmd processes
Extend ApiVersionConf to include address.
ndb/include/kernel/signaldata/ApiVersion.hpp:
Extend ApiVersionConf to include inet_addr. the address used for communication to this node.
ndb/src/kernel/blocks/qmgr/QmgrMain.cpp:
include connect address in ApiVersionConf
ndb/src/mgmsrv/MgmtSrvr.cpp:
::status() now also returns char* address of the node.
For API or MGM, this is in ApiVersionConf.
For NDB, this is the standard get_connect_address.
When sending ApiVersionReq, try to send to a STARTED node (as these have
properly joined the cluster and know the connect addresses).
If versionNode is called for getOwnNodeId()==nodeId, try to get the address
via ApiVersionConf. If that fails, look it up in the configuration.
ndb/src/mgmsrv/MgmtSrvr.hpp:
Add char **address to prototypes.
ndb/src/mgmsrv/Services.cpp:
Get the connect address from mgmsrv.status()
Some new code that does this job is being written against 5.1. This code is
largely removed from that work.
ndb/include/kernel/GlobalSignalNumbers.h:
remove dead (never used) MGM_(UN)LOCK signal numbers
ndb/src/mgmsrv/Config.cpp:
remove unused generation number code.
remove unused Config::change
ndb/src/mgmsrv/Config.hpp:
remove unused generation number prototypes.
ndb/src/mgmsrv/MgmtSrvr.cpp:
remove unused getPrimaryNode
ndb/src/mgmsrv/MgmtSrvr.hpp:
remove prototypes for config lock and commit/rollback.
ndb/src/mgmsrv/MgmtSrvrConfig.cpp:
remove CONFIG (UN)LOCK signals, lockConf/unlockConf, commit/rollback and changeConfig.
never used.
ndb/src/mgmsrv/Services.cpp:
remove unused configuration locking code
ndb/src/mgmsrv/Services.hpp:
remove usused configuration locking code
impl support for querying resource usage in ndb api
to help track down mem leaks
ndb/include/ndbapi/Ndb.hpp:
Impl. reporting of free list usage
Put free list into handler class
ndb/include/ndbapi/NdbBlob.hpp:
Impl. reporting of free list usage
Put free list into handler class
ndb/include/ndbapi/NdbConnection.hpp:
Impl. reporting of free list usage
Put free list into handler class
ndb/include/ndbapi/NdbIndexOperation.hpp:
Impl. reporting of free list usage
Put free list into handler class
ndb/include/ndbapi/NdbIndexScanOperation.hpp:
Impl. reporting of free list usage
Put free list into handler class
ndb/include/ndbapi/NdbOperation.hpp:
Impl. reporting of free list usage
Put free list into handler class
ndb/include/ndbapi/NdbRecAttr.hpp:
Impl. reporting of free list usage
Put free list into handler class
ndb/src/ndbapi/NdbApiSignal.cpp:
Impl. reporting of free list usage
Put free list into handler class
ndb/src/ndbapi/NdbApiSignal.hpp:
Impl. reporting of free list usage
Put free list into handler class
ndb/src/ndbapi/NdbBlob.cpp:
Impl. reporting of free list usage
Put free list into handler class
ndb/src/ndbapi/NdbImpl.hpp:
Impl. reporting of free list usage
Put free list into handler class
ndb/src/ndbapi/NdbRecAttr.cpp:
Impl. reporting of free list usage
Put free list into handler class
ndb/src/ndbapi/NdbUtil.cpp:
Impl. reporting of free list usage
Put free list into handler class
ndb/src/ndbapi/NdbUtil.hpp:
Impl. reporting of free list usage
Put free list into handler class
ndb/src/ndbapi/Ndbif.cpp:
Impl. reporting of free list usage
Put free list into handler class
ndb/src/ndbapi/Ndbinit.cpp:
Impl. reporting of free list usage
Put free list into handler class
ndb/src/ndbapi/Ndblist.cpp:
Impl. reporting of free list usage
Put free list into handler class
ndb/tools/restore/Restore.cpp:
Impl. reporting of free list usage
Put free list into handler class
make sure not to cut log to early
(specificly not use LCP with maxGciStarted that has not yet completed)
ndb/include/kernel/signaldata/SignalData.hpp:
Add signal data printer for START_FRAG_REQ
ndb/include/kernel/signaldata/StartFragReq.hpp:
Add signal data printer for START_FRAG_REQ
ndb/src/common/debugger/signaldata/SignalDataPrint.cpp:
Add signal data printer for START_FRAG_REQ
ndb/src/common/debugger/signaldata/StartRec.cpp:
Add signal data printer for START_FRAG_REQ
ndb/src/kernel/blocks/dbdih/DbdihMain.cpp:
Add maxGciStarted/Completed to event report
bug: dont use LCP for calcKeepGci in maxGciSTarted is not completed
into eel.(none):/home/jonas/src/mysql-4.1-push
mysql-test/t/ndb_config.test:
Auto merged
ndb/src/common/util/version.c:
Auto merged
ndb/src/kernel/blocks/qmgr/Qmgr.hpp:
Auto merged
ndb/src/kernel/blocks/qmgr/QmgrMain.cpp:
Auto merged
ndb/src/mgmsrv/MgmtSrvr.cpp:
Auto merged
ndb/src/ndbapi/TransporterFacade.cpp:
Auto merged
sql/ha_ndbcluster.cc:
Auto merged
mysql-test/t/ndb_alter_table.test:
merge
Split table version into 2 (major, minor)
Impl. signaling to API when table has been altered
Allow running transactions to use any minor number for transactions
mysql-test/r/ndb_alter_table.result:
Allow running transactions to use old table definition when possible.
mysql-test/t/ndb_alter_table.test:
Allow running transactions to use old table definition when possible.
ndb/include/kernel/BlockNumbers.h:
remove GREP
ndb/include/kernel/GlobalSignalNumbers.h:
Add ALTER_TABL_REP and API_BROADCAST_REP
ndb/include/kernel/kernel_types.h:
table_version_major
ndb/include/kernel/signaldata/AlterTable.hpp:
New error code for alter table during rolling upgrade
ndb/include/ndbapi/NdbDictionary.hpp:
Add state on table object to represent an altered but still valid table object
ndb/src/common/debugger/BlockNames.cpp:
remove GREP
ndb/src/common/util/version.c:
Fix upgrades
ndb/src/kernel/SimBlockList.cpp:
remove GREP
ndb/src/kernel/blocks/Makefile.am:
remove GREP
ndb/src/kernel/blocks/cmvmi/Cmvmi.cpp:
remove GREP
ndb/src/kernel/blocks/dbdict/Dbdict.cpp:
Split tableSchemaVersion into 2 part
24 bit real version
8 bit for online alter table where old table definition is still usable
ndb/src/kernel/blocks/dbdict/Dbdict.hpp:
Check for same ndb versions
ndb/src/kernel/blocks/dbdict/printSchemaFile.cpp:
Update schema printer
ndb/src/kernel/blocks/dbdih/DbdihMain.cpp:
remove grep
ndb/src/kernel/blocks/dblqh/DblqhMain.cpp:
1) Use table_ version_major when checking table version
2) Dummy fix for BUG that tableSchemaVersion is only 16 bit in LQHKEYREQ
ndb/src/kernel/blocks/dbtc/Dbtc.hpp:
1) Use table_ version_major when checking table version
2) Dummy fix for BUG that tableSchemaVersion is only 16 bit in LQHKEYREQ
ndb/src/kernel/blocks/dbtc/DbtcMain.cpp:
1) Use table_ version_major when checking table version
2) Dummy fix for BUG that tableSchemaVersion is only 16 bit in LQHKEYREQ
ndb/src/kernel/blocks/ndbcntr/NdbcntrMain.cpp:
remove GREP
ndb/src/kernel/blocks/qmgr/Qmgr.hpp:
Add support for sending REP to ALL api nodes
ndb/src/kernel/blocks/qmgr/QmgrInit.cpp:
Add support for sending REP to ALL api nodes
ndb/src/kernel/blocks/qmgr/QmgrMain.cpp:
Add support for sending REP to ALL api nodes
ndb/src/kernel/blocks/suma/Suma.cpp:
remove GREP
ndb/src/mgmsrv/MgmtSrvr.cpp:
remove GREP
ndb/src/ndbapi/DictCache.cpp:
Add support for alter_table_rep
by setting status to Altered
NOTE special handling of tables in state RETREIVING
ndb/src/ndbapi/DictCache.hpp:
Add support for alter_table_rep
by setting status to Altered
NOTE special handling of tables in state RETREIVING
ndb/src/ndbapi/NdbDictionaryImpl.cpp:
Change alter table so that remove from global cache is used wo/ retreiving it from there first
as ALTER_TABLE_REP might already have changed the table object...
ndb/src/ndbapi/TransporterFacade.cpp:
Add support for ALTER_TABLE_REP
sql/ha_ndbcluster.cc:
Allow running transactions to use tables in state ALTERED...but new transactions may not...
ndb/include/kernel/signaldata/ApiBroadcast.hpp:
New BitKeeper file ``ndb/include/kernel/signaldata/ApiBroadcast.hpp''
into mysql.com:/home/jonas/src/mysql-4.1-push
ndb/src/mgmapi/mgmapi.cpp:
Auto merged
ndb/src/mgmsrv/ConfigInfo.cpp:
Auto merged
ndb/src/mgmsrv/ConfigInfo.hpp:
Auto merged