Commit graph

36725 commits

Author SHA1 Message Date
unknown
5a7d7893d7 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); 2006-08-07 14:48:54 +02:00
unknown
07807f3f46 Merge mysql.com:/home/marty/MySQL/mysql-4.1
into  mysql.com:/home/marty/MySQL/mysql-5.0


ndb/include/ndbapi/NdbTransaction.hpp:
  Merge (using local)
sql/ha_ndbcluster.cc:
  Merge (using local)
sql/ha_ndbcluster.h:
  Merge (using local)
2006-08-07 14:43:29 +02:00
unknown
d9c36ff135 ndb - bug#21478
make fragment logpart in DIH "global"


storage/ndb/src/kernel/blocks/dbdih/DbdihMain.cpp:
  Store logpart id in FRAGMENTATION as it goes very bad if 
    they differ on different nodes, as they are copied from master
    on node/system -restart
2006-08-07 14:32:43 +02:00
unknown
50eee915c0 ndb - bug#21271
make each fragment use own LCP file, so that (s/n)r can use different LCP-no for different fragments


storage/ndb/include/kernel/signaldata/FsOpenReq.hpp:
  Add fragment id to LCP filename
storage/ndb/src/kernel/blocks/ERROR_codes.txt:
  Add new error code
storage/ndb/src/kernel/blocks/backup/Backup.cpp:
  put each fragment in own LCP file
storage/ndb/src/kernel/blocks/backup/Backup.hpp:
  put each fragment in own LCP file
storage/ndb/src/kernel/blocks/dblqh/Dblqh.hpp:
  Use fifo lists
storage/ndb/src/kernel/blocks/dblqh/DblqhMain.cpp:
  1) use fifo lists
  2) restore each fragment separatly
  3) add error codes
storage/ndb/src/kernel/blocks/restore.cpp:
  Add fragment id to LCP filename
storage/ndb/src/kernel/blocks/ndbfs/Filename.cpp:
  Add fragment id to LCP filename
storage/ndb/test/ndbapi/testNodeRestart.cpp:
  Add testcase
storage/ndb/test/run-test/daily-basic-tests.txt:
  add testcase
2006-08-07 14:28:58 +02:00
unknown
a1fc9e8848 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); 2006-08-07 13:51:20 +02:00
unknown
fe9d004c7f ndb - some hugo updates
make dump state args list const
  make node lists const


storage/ndb/include/mgmapi/mgmapi_debug.h:
  make dump state args list const
storage/ndb/src/mgmapi/mgmapi.cpp:
  make dump state args list const
storage/ndb/test/include/NdbRestarter.hpp:
  make node lists const
storage/ndb/test/src/NdbRestarter.cpp:
  make node lists const
2006-08-07 12:12:55 +02:00
unknown
78ead1feb2 Merge perch.ndb.mysql.com:/home/jonas/src/41-work
into  perch.ndb.mysql.com:/home/jonas/src/50-work


ndb/src/kernel/blocks/ndbcntr/NdbcntrMain.cpp:
  merge
2006-08-07 09:49:46 +02:00
unknown
f4e01cf6a1 ndb - bug#18475
Fix error message on copyfragref


ndb/src/kernel/blocks/ndbcntr/NdbcntrMain.cpp:
  Fix error message
2006-08-07 09:41:39 +02:00
unknown
0c7025dad4 Merge perch.ndb.mysql.com:/home/jonas/src/mysql-5.1-new
into  perch.ndb.mysql.com:/home/jonas/src/51-work
2006-08-04 21:02:28 +02:00
unknown
504870621e Merge joreland@bk-internal.mysql.com:/home/bk/mysql-5.1
into  perch.ndb.mysql.com:/home/jonas/src/mysql-5.1-new
2006-08-04 20:56:27 +02:00
unknown
79b03c66bf Merge pchardin@bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  mysql.com:/home/cps/mysql/devel/5.1-curs-bug


sql/ha_myisam.cc:
  Auto merged
sql/handler.h:
  Auto merged
sql/sql_table.cc:
  Auto merged
mysql-test/r/log_tables.result:
  SCCS merged
mysql-test/t/log_tables.test:
  SCCS merged
2006-08-04 14:48:51 +04:00
unknown
0d366c05f1 ndb - bug#21044
report only once on "all dump 1000"


storage/ndb/src/kernel/blocks/dbacc/DbaccMain.cpp:
  report DM only once
storage/ndb/src/kernel/blocks/dbtup/DbtupDebug.cpp:
  report DM only once
2006-08-04 10:42:04 +02:00
unknown
b50642e899 ndb - bug#21129
add missing function to mgmapi


ndb/src/mgmapi/ndb_logevent.cpp:
  add missing function
2006-08-04 10:30:57 +02:00
unknown
9e78bbc220 Merge perch.ndb.mysql.com:/home/jonas/src/41-work
into  perch.ndb.mysql.com:/home/jonas/src/50-work


ndb/include/ndbapi/NdbOperation.hpp:
  Auto merged
2006-08-04 10:16:42 +02:00
unknown
bb285b44c3 ndb - bug#21400
Fix docs for NdbOpertation::sub_reg


ndb/include/ndbapi/NdbOperation.hpp:
  Fix docs for sub_reg
2006-08-04 09:43:23 +02:00
unknown
fc1eeba8be Merge perch.ndb.mysql.com:/home/jonas/src/41-work
into  perch.ndb.mysql.com:/home/jonas/src/50-work


ndb/src/kernel/blocks/dbtup/DbtupExecQuery.cpp:
  Auto merged
2006-08-04 08:41:50 +02:00
unknown
f287b4a8c8 ndb - bug#20296 (recommit in 4.1)
Make sure that tupkeyErrorLab is run if interpretedUpdate(fail), so that entry is not inserted into index.
     Yeilding crash on following dml on tupel



ndb/src/kernel/blocks/dbtup/DbtupExecQuery.cpp:
  Make sure that tupkeyErrorLab is run if interpretedUpdate(fail), so that entry is not inserted into index.
        Yeilding crash on following dml on tupe
2006-08-04 08:41:32 +02:00
unknown
5e2babfe62 Merge bk-internal:/home/bk/mysql-5.1-new-maint
into  maint1.mysql.com:/data/localhome/tsmith/bk/mrg51-c
2006-08-04 00:40:30 +02:00
unknown
f87df4ccd1 Merge bk-internal:/home/bk/mysql-5.1-new-maint
into  neptunus.(none):/home/msvensson/mysql/mysql-5.1-new-maint
2006-08-03 21:25:28 +02:00
unknown
551f9dedb0 Merge rama.(none):/home/jimw/my/mysql-5.1-17122
into  rama.(none):/home/jimw/my/mysql-5.1-clean
2006-08-03 11:12:48 -07:00
unknown
a4f6603748 Manual merge resolve, part 6 of 6+ 2006-08-03 19:43:52 +02:00
unknown
5f61f0268a Use "--source" command instead of "source", makes mysql-test-run.pl dtecte this as test case that need binlog format row. 2006-08-03 19:35:00 +02:00
unknown
177c062304 Merge maint1.mysql.com:/data/localhome/tsmith/bk/mrg51-a
into  maint1.mysql.com:/data/localhome/tsmith/bk/mrg51-c
2006-08-03 19:28:20 +02:00
unknown
157c42de97 Fix Bug #18559 "log tables cannot change engine, and
gets deadlocked when dropping w/ log on"

Log tables rely on concurrent insert machinery to add data.
This means that log tables are always opened and locked by
special (artificial) logger threads. Because of this, the thread
which tries to drop a log table starts to wait for the table
to be unlocked. Which will happen only if the log table is disabled.
Alike situation happens if one tries to alter a log table.
However in addition to the problem above, alter table calls
check_if_locking_is_allowed() routine for the engine. The
routine does not allow alter for the log tables. So, alter
doesn't start waiting forever for logs to be disabled, but 
returns with an error.
Another problem is that not all engines could be used for
the log tables. That's because they need concurrent insert.

In this patch we:
(1) Explicitly disallow to drop/alter a log table if it
    is currently used by the logger.
(2) Update MyISAM to support log tables
(3) Allow to drop log tables/alter log tables if log is
    disabled
At the same time we (4) Disallow to alter log tables to
unsupported engine (after this patch CSV and MyISAM are 
alowed)
Recommit with review fixes.


mysql-test/r/log_tables.result:
  Update result file.
  Note: there are warnings in result file. This is because of CSV
  bug (Bug #21328). They should go away after it is fixed.
mysql-test/t/log_tables.test:
  Add a test for the bug
sql/ha_myisam.cc:
  Add log table handling to myisam: as log tables
  use concurrent insert, they are typically
  locked with TL_CONCURRERENT_INSERT lock. So,
  disallow other threads to attempt locking of
  the log tables in incompatible modes. Because
  otherwise the threads will wait for the tables
  to be unlocked forever.
sql/handler.cc:
  Add a function to check if a table we're going to lock
  is a log table and if the lock mode we want allowed
sql/handler.h:
  Add a new function to check compatibility of the locking
sql/log.cc:
  we shouldn't close the log table if and only
  if this particular table is already closed
sql/log.h:
  add new functions to check if a log is enabled
sql/share/errmsg.txt:
  add new error messages
sql/sql_table.cc:
  DROP and ALTER TABLE should not work on log
  tables if the log tables are enabled
storage/csv/ha_tina.cc:
  move function to check if the locking for the log
  tables allowed to handler class, so that we can
  reuse it in other engines.
storage/myisam/mi_extra.c:
  add new ::extra() flag processing to myisam
storage/myisam/mi_open.c:
  init log table flag
storage/myisam/mi_write.c:
  update status after each write if it's a log table
storage/myisam/myisamdef.h:
  Add new log table flag to myisam share.
  We need it to distinguish between usual
  and log tables, as for the log tables we
  should provide concurrent insert in a
  different way than for usual tables: we
  want new rows to be immediately visible
  to other threads.
2006-08-03 21:28:15 +04:00
unknown
9f0f8458db 5.0 -> 5.1 manual merge, part 5 of 5 (or more?) 2006-08-03 19:27:00 +02:00
unknown
358400a83d Replace FEDERATED_EQ with STRING_WITH_LEN("=")
sql/ha_federated.cc:
  After merge fix
2006-08-03 19:15:55 +02:00
unknown
b58c7551a7 Merge neptunus.(none):/home/msvensson/mysql/my51-m-bug20942
into  neptunus.(none):/home/msvensson/mysql/mysql-5.1-new-maint


sql/ha_federated.cc:
  Manual merge
2006-08-03 19:10:18 +02:00
unknown
282ff5f149 ndb - bug#21384
merge 4.1->5.0 (variable rename)


ndb/src/kernel/blocks/dbtc/DbtcMain.cpp:
  merge #21384 4.1->5.0
    variable rename
2006-08-03 15:38:04 +02:00
unknown
e1ec4de43f Fix Bug #20139 Infinite loop after "FLUSH" and "LOCK tabX, general_log"
Due to incorrect handling of FLUSH TABLES, log tables were marked for flush,
but not reopened. Later we started to wait for the log table to be closed
(disabled) after the flush. And as nobody disabled logs in concurrent treads,
the command lasted forever.
After internal consultations it was decided to skip logs during FLUSH TABLES.
The reasoning is that logging is done in the "log device", whatever it is
which is always active and controlled by FLUSH LOGS. So, to flush logs
one should use FLUSH LOGS, and not FLUSH TABLES.


mysql-test/r/log_tables.result:
  update result file
mysql-test/t/log_tables.test:
  add a test for the bug
sql/sql_base.cc:
  Skip log tables during FLUSH TABLES
2006-08-03 17:23:37 +04:00
unknown
d765c17530 ndb - bug#20892
Correction of bug#19852 (that also revealed another bug)
  Do grow noOfPagesToGrow with more than was actually allocated


ndb/src/kernel/blocks/dbtup/DbtupPageMap.cpp:
  Dont grow "noOfPagesToGrow" with more than was actually allocated
    (as it will then grow indefinitly)
2006-08-03 14:46:11 +02:00
unknown
fe2b9a8f76 Merge perch.ndb.mysql.com:/home/jonas/src/41-work
into  perch.ndb.mysql.com:/home/jonas/src/50-work
2006-08-03 14:02:39 +02:00
unknown
42fd7e8f7d ndb - bug#20892
Fix bug in tup buddy allocator, which made it make invalid access to cfreepagelist[16] (which is not defined)


ndb/src/kernel/blocks/dbtup/DbtupPagMan.cpp:
  loop from firstListToCheck -1 (as firstListToCheck has already been checked), when looking for less than requested pages
  add if-statement for firtListToCheck == 0
2006-08-03 14:01:37 +02:00
unknown
7107693218 5.0 -> 5.1 manual merge, part 4 of 4 (or more?) 2006-08-03 10:48:01 +02:00
unknown
15e27e4832 Merge maint1.mysql.com:/data/localhome/tsmith/bk/mrg50-c
into  maint1.mysql.com:/data/localhome/tsmith/bk/mrg51-c


mysql-test/t/warnings.test:
  5.0 -> 5.1 manual merge, part 3 of 3 (or more?)
sql/handler.cc:
  5.0 -> 5.1 manual merge, part 3 of 3 (or more?)
sql/mysql_priv.h:
  5.0 -> 5.1 manual merge, part 3 of 3 (or more?)
sql/mysqld.cc:
  5.0 -> 5.1 manual merge, part 3 of 3 (or more?)
sql/set_var.cc:
  5.0 -> 5.1 manual merge, part 3 of 3 (or more?)
mysql-test/r/warnings.result:
  5.0 -> 5.1 manual merge, part 3 of 3 (or more?)
2006-08-03 10:41:14 +02:00
unknown
eafb760579 Merge maint1.mysql.com:/data/localhome/tsmith/bk/mrg50-b
into  maint1.mysql.com:/data/localhome/tsmith/bk/mrg51-b


mysql-test/r/insert_select.result:
  SCCS merged
sql/sql_insert.cc:
  SCCS merged
2006-08-03 10:18:04 +02:00
unknown
0901cb0b29 5.0 -> 5.1 manual merge, part 1 of 3 (or more?) 2006-08-03 10:04:25 +02:00
unknown
ad73be2eb7 Merge pchardin@bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  mysql.com:/home/cps/mysql/trees/mysql-5.1-virgin


sql/mysqld.cc:
  Auto merged
2006-08-02 17:49:27 +04:00
unknown
237d867fff Merge neptunus.(none):/home/msvensson/mysql/mysql-5.1
into  neptunus.(none):/home/msvensson/mysql/mysql-5.1-new-maint


mysql-test/mysql-test-run.pl:
  Auto merged
mysql-test/t/disabled.def:
  SCCS merged
2006-08-02 15:45:03 +02:00
unknown
8a5db9446b Disable crash_commit_before waiting for a "crash()" function that won't generate a core. 2006-08-02 15:41:59 +02:00
unknown
44c29ca3e1 ndb -
make Dblqh use OM_AUTO_SYNC


storage/ndb/include/kernel/signaldata/FsOpenReq.hpp:
  make Dblqh us OM_AUTO_SYNC
storage/ndb/src/kernel/blocks/dblqh/Dblqh.hpp:
  make Dblqh us OM_AUTO_SYNC
storage/ndb/src/kernel/blocks/dblqh/DblqhMain.cpp:
  make Dblqh us OM_AUTO_SYNC
storage/ndb/src/kernel/vm/pc.hpp:
  remove unused #defines
2006-08-02 14:45:29 +02:00
unknown
5ae954b160 ndb - Add possibility to limit disk write speed in backup(lcp)
3 new paramters:
      DiskSyncSize - Outstanding disk writes before sync (default 4M)
      DiskCheckpointSpeed - Write speed of LCP in bytes/sec (default 10M)
      DiskCheckpointSpeedInRestart - As above but during LCP (default 100M)

      Depricated old NoOfDiskPagesToDisk*

    - Change NoOfFragmentLogFiles default to 16 (1Gb)


storage/ndb/include/kernel/signaldata/BackupContinueB.hpp:
  Add possibility to limitat of disk write speed in backup
storage/ndb/include/mgmapi/mgmapi_config_parameters.h:
  Add possibility to limitat of disk write speed in backup
storage/ndb/src/kernel/blocks/backup/Backup.cpp:
  Add possibility to limitat of disk write speed in backup
storage/ndb/src/kernel/blocks/backup/Backup.hpp:
  Add possibility to limitat of disk write speed in backup
storage/ndb/src/kernel/blocks/backup/BackupInit.cpp:
  Add possibility to limitat of disk write speed in backup
storage/ndb/src/mgmsrv/ConfigInfo.cpp:
  Add possibility to limitat of disk write speed in backup
  Change NoOfFragmentLogFiles default to 16 (1Gb)
  DiskSyncSize
  DiskCheckpointSpeed
  DiskCheckpointSpeedInRestart
storage/ndb/src/mgmsrv/InitConfigFileParser.cpp:
  Handle deprication warning also in my.cnf format
2006-08-02 14:27:05 +02:00
unknown
f6e3b15d25 ndb - add OM_AUTO_SYNC ta make sure os-kernel does not buffer too much
add sync-flag to FsAppendReq


storage/ndb/include/kernel/signaldata/FsAppendReq.hpp:
  Add sync flag to FsAppend
storage/ndb/include/kernel/signaldata/FsOpenReq.hpp:
  Add auto sync flag to FSOPEN
storage/ndb/src/kernel/blocks/ndbfs/AsyncFile.cpp:
  Add append_synch and auto sync
storage/ndb/src/kernel/blocks/ndbfs/AsyncFile.hpp:
  Add variables for auto sync
storage/ndb/src/kernel/blocks/ndbfs/Ndbfs.cpp:
  Add append_sync and auto sync
2006-08-02 14:03:55 +02:00
unknown
95dcd768ca Merge trift2.:/M50/back241-5.0
into  trift2.:/M51/merge-5.0-to-5.1


support-files/mysql.spec.sh:
  Null-merge, as 5.1 uses a different approach to testing.
2006-08-02 12:41:48 +02:00
unknown
ee1557775a Bug#20942 ha_federated uses String::append(const char *s), strlen() on every call
- Remove the defines for strings and uses STRING_WITH_LEN directly when calling 'append'


sql/ha_federated.cc:
  Remove the defines for strings and their lengths and use STRING_WITH_LEN directly when calling append().
sql/ha_federated.h:
  Remove the defines for strings and their lengths and use STRING_WITH_LEN directly when calling append().
2006-08-02 12:36:01 +02:00
unknown
f3606fa846 Merge perch.ndb.mysql.com:/home/jonas/src/41-work
into  perch.ndb.mysql.com:/home/jonas/src/50-work
2006-08-02 09:13:43 +02:00
unknown
753651c1db ndb -
Make possible to build both debug/release from compile-ndb-autotest


BUILD/compile-ndb-autotest:
  Make possible to build both debug/release from compile-ndb-autotest
2006-08-02 09:08:21 +02:00
unknown
cd80d12035 Merge perch.ndb.mysql.com:/home/jonas/src/41-jonas
into  perch.ndb.mysql.com:/home/jonas/src/50-work
2006-08-02 08:28:48 +02:00
unknown
9f820cf2ce Merge joreland@bk-internal.mysql.com:/home/bk/mysql-5.1
into  perch.ndb.mysql.com:/home/jonas/src/mysql-5.1-new
2006-08-02 08:08:23 +02:00
unknown
30e11b06a5 Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.1
into  sunlight.local:/local_work/tmp_merge-5.1-opt-mysql


mysql-test/r/innodb.result:
  Auto merged
2006-08-02 02:19:46 +04:00
unknown
84b16f0e66 sql_view.cc:
After merge fix


sql/sql_view.cc:
  After merge fix
2006-08-02 00:38:38 +04:00