Commit graph

783 commits

Author SHA1 Message Date
gkodinov/kgeorge@macbook.gmz
7cb4b7c19d fixed warnings and compile errors from the fix for bug 26243 2008-03-29 09:52:16 +02:00
gni@dev3-221.dev.cn.tlan
0b1d727be7 Merge dev3-221.dev.cn.tlan:/home/ngb/mysql/mysql-5.0/mysql-5.0-ndb
into  dev3-221.dev.cn.tlan:/home/ngb/mysql/mysql-5.0/mysql-5.0-ndb-bj
2008-01-10 20:04:21 +08:00
gni@dev3-221.dev.cn.tlan
37a64e5cbf Merge gni@bk-internal.mysql.com:/home/bk/mysql-5.0-ndb-bj
into  dev3-221.dev.cn.tlan:/home/ngb/mysql/mysql-5.0/bug29851
2008-01-09 11:17:50 +08:00
tomas@whalegate.ndb.mysql.com
ddbb4d425c Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-ndb
into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-ndb-merge
2007-12-10 10:31:51 +01:00
mskold/marty@mysql.com/quadfish.(none)
4619caa5d5 Removed illegal cast 2007-12-07 14:03:54 +01:00
mskold/marty@mysql.com/quadfish.(none)
6047fb2e44 Removed illegal cast 2007-12-07 13:42:44 +01:00
mskold/marty@mysql.com/quadfish.(none)
fc6f839b03 bug#21072 Duplicate key error in NDB references wrong key: Post-review fixes 2007-12-07 10:33:50 +01:00
mskold/marty@mysql.com/quadfish.(none)
27c025061d bug#21072 Duplicate key error in NDB references wrong key: Return correct key for non-batching inserts 2007-12-06 17:15:21 +01:00
mskold/marty@mysql.com/quadfish.(none)
022b835c67 Removed compiler warnings 2007-11-06 10:28:11 +01:00
mskold/marty@mysql.com/quadfish.(none)
4cf742a8a8 ha_ndbcluster.h:
Bug #31956       auto increment bugs in MySQL Cluster: Added utility method and constant for internal prefetch default
ndb_auto_increment.result:
  BitKeeper file /home/marty/MySQL/mysql-5.0-ndb/mysql-test/r/ndb_auto_increment.result
mysqld.cc:
  Bug #25176  	Trying to set ndb_autoincrement_prefetch_sz always fails: Changed pointer to max value
  Bug #31956  	auto increment bugs in MySQL Cluster: Changed meaning of ndb_autoincrement_prefetch_sz to specify prefetch between statements, changed default to 1 (with internal prefetch to at least 32 inside a statement)
ndb_insert.test, ndb_insert.result:
  Moved auto_increment tests to ndb_auto_increment.test
ndb_auto_increment.test:
  BitKeeper file /home/marty/MySQL/mysql-5.0-ndb/mysql-test/t/ndb_auto_increment.test
ha_ndbcluster.cc:
  Bug #31956       auto increment bugs in MySQL Cluster: Changed meaning of ndb_autoincrement_prefetch_sz to specify prefetch between statements, changed default to 1 (with internal prefetch to at least 32 inside a statement), added handling of updates of pk/unique key with auto_increment
  Bug #32055  	Cluster does not handle auto inc correctly with insert ignore statement
2007-11-05 20:18:22 +01:00
tomas@whalegate.ndb.mysql.com
ca0cbdd8ee Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-ndb
into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-ndb-merge
2007-11-02 23:31:23 +01:00
knielsen@loke.(none)
b77f44c76d Merge loke.(none):/home/knielsen/devel/bug31810
into  loke.(none):/home/knielsen/devel/mysql-5.0-ndb
2007-10-25 10:54:23 +02:00
knielsen@loke.(none)[knielsen]
e16f03cd64 BUG#31810: Potential infinite loop with autoincrement failures in ndb
Fix extra semicolon causing if-statement to be disabled.
2007-10-25 08:40:42 +02:00
mskold/marty@mysql.com/linux.site
94e7bf9f4b Removed tabs 2007-10-03 09:29:10 +02:00
mskold/marty@mysql.com/linux.site
403f0afc29 Bug#25817 UPDATE IGNORE doesn't check write_set when checking unique indexes: Added checks 2007-10-02 13:36:13 +02:00
gni@dev3-221.dev.cn.tlan
44472d4233 BUG#29851 TRUNCATE causes error 4350 from cluster in INSERT... ON DUPLICATE KEY UPDATE 2007-09-28 09:16:41 +08:00
tomas@whalegate.ndb.mysql.com
df552c310d Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-ndb
into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-ndb-merge
2007-09-12 14:01:51 +02:00
tomas@whalegate.ndb.mysql.com
f1674d1b66 Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.0
into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-ndb-merge
2007-09-12 07:34:42 +02:00
Justin.He/justin.he@dev3-240.dev.cn.tlan
921cba22bc Merge dev3-240.dev.cn.tlan:/home/justin.he/mysql/mysql-5.0/mysql-5.0-ndb
into  dev3-240.dev.cn.tlan:/home/justin.he/mysql/mysql-5.0/mysql-5.0-ndb-bj.merge
2007-08-16 11:06:41 +08:00
mskold/marty@linux.site
822fd77ab2 Merge mskold@bk-internal.mysql.com:/home/bk/mysql-5.0-ndb
into  mysql.com:/windows/Linux_space/MySQL/mysql-5.0-ndb
2007-08-14 15:34:04 +02:00
mskold/marty@mysql.com/linux.site
8dd40ef670 bug#30337 DELETE ... WHERE PK IN (..) and AFTER DELETE trigger crashes API node: Disable multi_read_range if there are after delete/update triggers 2007-08-13 11:36:30 +02:00
jonas@perch.ndb.mysql.com
e01f587dd4 ndb - bug#28804
Handle out of transaction buffer in TC for INDX lookups
2007-08-13 09:22:42 +02:00
gni@dev3-221.dev.cn.tlan
7b15f34766 Merge dev3-221.dev.cn.tlan:/home/ngb/mysql/mysql-5.0/mysql-5.0-ndb-bj
into  dev3-221.dev.cn.tlan:/home/ngb/mysql/mysql-5.0/bug28423
2007-08-08 19:11:19 +08:00
gkodinov/kgeorge@magare.gmz
9a0e6ec6d2 (pushing for Andrei)
Bug #27417 thd->no_trans_update.stmt lost value inside of SF-exec-stack
  
Once had been set the flag might later got reset inside of a stored routine 
execution stack.
The reason was in that there was no check if a new statement started at time 
of resetting.
The artifact affects most of binlogable DML queries. Notice, that multi-update 
is wrapped up within
  bug@27716 fix, multi-delete bug@29136.
  
Fixed with saving parent's statement flag of whether the statement modified 
non-transactional table, and unioning (merging) the value with that was gained 
in mysql_execute_command.
  
Resettling thd->no_trans_update members into thd->transaction.`member`;
Asserting code;
Effectively the following properties are held.
  
1. At the end of a substatement thd->transaction.stmt.modified_non_trans_table
   reflects the fact if such a table got modified by the substatement.
   That also respects THD::really_abort_on_warnin() requirements.
2. Eventually thd->transaction.stmt.modified_non_trans_table will be computed as
   the union of the values of all invoked sub-statements.
   That fixes this bug#27417;

Computing of thd->transaction.all.modified_non_trans_table is refined to base to 
the stmt's value for all the case including insert .. select statement which 
before the patch had an extra issue bug@28960.
Minor issues are covered with mysql_load, mysql_delete, and binloggin of insert in
to temp_table select. 
  
The supplied test verifies limitely, mostly asserts. The ultimate testing is defered
for bug@13270, bug@23333.
2007-07-30 18:27:36 +03:00
stewart@flamingspork.com[stewart]
f9d977f980 [PATCH] Bug#26793 I_S query crashes in NDB
If ::exteral_lock hadn't been called, we'd have no NDB object,
so need to check/get one here.

It looks like sql_show.cc is the only place that does this....
or at least the other places will be well hidden.

Index: ndb-work/sql/ha_ndbcluster.cc
===================================================================
2007-07-26 20:25:05 +10:00
gni@dev3-221.dev.cn.tlan
ad6defd4ba BUG#28423 cluster to storage engine error code mapping problem 2007-07-25 09:32:28 +08:00
mskold/marty@mysql.com/linux.site
43f80e9875 Merge mskold@bk-internal.mysql.com:/home/bk/mysql-5.0-ndb
into  mysql.com:/windows/Linux_space/MySQL/mysql-5.0-ndb
2007-05-28 15:23:28 +02:00
tomas@whalegate.ndb.mysql.com
186d1534b8 Bug #28719: multi pk update ignore corrupts data
- check multi update as well as update
- this bug is not present in 5.0, but execution patch is wrong, so there are probably other bugs
2007-05-28 13:23:11 +02:00
tomas@whalegate.ndb.mysql.com
599d07713c remove some not used code 2007-05-23 07:53:16 +02:00
tomas@whalegate.ndb.mysql.com
1e7974a0be Bug #28410 ndb: no retry sleep when getting autoincrement
- add retry sleep to allow temprary error to go away
2007-05-14 12:15:27 +02:00
tomas@whalegate.ndb.mysql.com
7a02c71f77 Bug#25818 No return of NDB share object in failures in open method
- make sure resources are release properly on error
2007-05-11 08:07:42 +02:00
mskold/marty@mysql.com/linux.site
c5f1503493 Bug#26342 auto_increment_increment AND auto_increment_offset REALLY REALLY anger NDB cluster, implemented support for auto_increment_offset and auto_increment_increment for Ndb 2007-05-09 14:14:27 +02:00
mskold/marty@mysql.com/linux.site
f6e28f2879 ndb_insert.test, ndb_insert.result, ha_ndbcluster.cc:
Bug#27980 INSERT IGNORE wrongly ignores NULLs in unique index: added check for null values
2007-05-02 10:02:27 +02:00
tomas@whalegate.ndb.mysql.com
fa32db5f88 Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.0
into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-ndb
2007-04-27 11:45:28 +02:00
tomas@whalegate.ndb.mysql.com
c1d0bbbbe6 Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-telco-gca
into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-ndb
2007-04-25 15:24:17 +02:00
tomas@whalegate.ndb.mysql.com
0ac443eff5 Bug #28093 ndb: retry sleep in get table stats 30s instead of 30ms 2007-04-25 15:21:38 +02:00
tomas@whalegate.ndb.mysql.com
6654cc8a99 Merge tulin@bk-internal.mysql.com:/home/bk/mysql-5.0-ndb
into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-ndb
2007-04-24 19:24:07 +02:00
mskold/marty@mysql.com/linux.site
5d4f9e22b1 Moved all code related to engine_condition_pushdown to a new class,
ha_ndbcluster_cond.
Added new files:
sql/ha_ndbcluster_cond.h
sql/ha_ndbcluster_cond.cc
2007-04-23 11:25:33 +02:00
joerg@debian.(none)
6ef12bb111 Merge debian.(none):/M50/mysql-5.0
into  debian.(none):/M50/push-5.0
2007-04-20 12:31:03 +02:00
mskold/marty@mysql.com/linux.site
098adcb465 Commented out buggy debugging code 2007-04-19 15:48:17 +02:00
joerg@trift2.
5fc30d25ea sql/ha_ndbcluster.cc
Hex constants that exceed 32 bit need to be marked "LL" for the compile to work.
2007-04-18 16:41:38 +02:00
jamppa@bk-internal.mysql.com
82e4afb89f Merge bk-internal.mysql.com:/data0/bk/mysql-5.0
into  bk-internal.mysql.com:/data0/bk/mysql-5.0-marvel
2007-04-17 15:52:03 +02:00
jani@ua141d10.elisa.omakaista.fi
335153121b Merge jamppa@bk-internal.mysql.com:/home/bk/mysql-5.0
into  ua141d10.elisa.omakaista.fi:/home/my/bk/mysql-5.0-marvel
2007-04-12 12:50:02 +03:00
tomas@whalegate.ndb.mysql.com
f9a900f80e Bug #27758 Restoring NDB backups makes table usable in SQL nodes
- parse indexname using "split" instead of sscanf, as not to break at space
- test case with space in key
- enclose names in printout
2007-04-12 11:07:30 +02:00
tomas@whalegate.ndb.mysql.com
dd4351e96f Bug#26176 NdbObjectIdMap::expand unable to expand!! mysqld got signal 11
- try to catch as many malloc failures as possible and give error messages
2007-04-11 15:21:11 +02:00
mskold/marty@mysql.com/linux.site
bcac914163 Merge mskold@bk-internal.mysql.com:/home/bk/mysql-5.0-ndb
into  mysql.com:/windows/Linux_space/MySQL/mysql-5.0-ndb
2007-04-05 09:18:37 +02:00
mskold/marty@mysql.com/linux.site
3e8cf5958b Merge mysql.com:/windows/Linux_space/MySQL/mysql-5.0
into  mysql.com:/windows/Linux_space/MySQL/mysql-5.0-ndb
2007-04-05 08:39:12 +02:00
mskold/marty@mysql.com/linux.site
ee034c0e59 Removed compiler warnings 2007-04-05 07:28:09 +02:00
Justin.He/justin.he@dev3-240.dev.cn.tlan
c7da27b5b2 Merge dev3-240.dev.cn.tlan:/home/justin.he/mysql/mysql-5.0/mysql-5.0-ndb
into  dev3-240.dev.cn.tlan:/home/justin.he/mysql/mysql-5.0/mysql-5.0-ndb-bj.merge
2007-04-05 11:30:19 +08:00
mskold/marty@mysql.com/linux.site
625a2629f0 Bug #26242 UPDATE with subquery and triggers failing with cluster tables
In certain cases AFTER UPDATE/DELETE triggers on NDB tables that referenced
subject table didn't see the results of operation which caused invocation
of those triggers. In other words AFTER trigger invoked as result of update
(or deletion) of particular row saw version of this row before update (or
deletion).

The problem occured because NDB handler in those cases postponed actual
update/delete operations to be able to perform them later as one batch.

This fix solves the problem by disabling this optimization for particular
operation if subject table has AFTER trigger for this operation defined.
To achieve this we introduce two new flags for handler::extra() method:
HA_EXTRA_DELETE_CANNOT_BATCH and HA_EXTRA_UPDATE_CANNOT_BATCH.
These are called if there exists AFTER DELETE/UPDATE triggers during a
statement that potentially can generate calls to delete_row()/update_row().
This includes multi_delete/multi_update statements as well as insert statements
that do delete/update as part of an ON DUPLICATE statement.
2007-04-04 12:50:39 +02:00