~drizzle-trunk/drizzle/development

This patch fixes a bug in the replication service and transaction
proto file that was occurring when an UPDATE statement was SETting
a field to a value by referencing the field itself.

For instance, imagine the following scenario:

CREATE TABLE t1 (id INT NOT NULL PRIMARY KEY, count INT NOT NULL);
INSERT INTO t1 (id, counter) VALUES (1,1),(2,2),(3,3);
UPDATE t1 SET counter = counter + 1 WHERE id IN (1,2);

Previously, the UpdateHeader message contained a single set_value
byte array containing the new value to set the field to.  However,
in scenarios such as the above, for each record being updated, the
value that the field would be set to is different.  Therefore, this
patch moves the set_value byte array from the UpdateHeader message
into the UpdateRecord message and names it after_value to match the
existing before_value byte array.

This patch adds a test case to the existing update.test case in the
transaction log suite and modifies the statement_transform library to
properly handle the above scenario.
Filename Latest Rev Last Changed Committer Comment Size
..
dummy.c 815.1.1 16 years ago Monty Taylor Add timegm which is missing on Solaris. 1.6 KB Diff Download File
getopt.c 1099.1.8 15 years ago Monty Taylor Tured off warnings for gnulib build. Stop innobase 31.3 KB Diff Download File
getopt.in.h 815.1.3 16 years ago Monty Taylor Added getopt workaround for broken solaris getopt. 7.8 KB Diff Download File
getopt1.c 815.1.3 16 years ago Monty Taylor Added getopt workaround for broken solaris getopt. 3.8 KB Diff Download File
getopt_int.h 815.1.3 16 years ago Monty Taylor Added getopt workaround for broken solaris getopt. 4.6 KB Diff Download File
gettext.h 997.7.1 15 years ago Monty Taylor Fixed gnulib/gettext.h. 9.3 KB Diff Download File
Makefile.am 1093.8.1 15 years ago rm fix for gnulib mktime test & replacement (adaptati 6.8 KB Diff Download File
mktime.c 1090.3.7 15 years ago Monty Taylor Fixed mktime for sun studio debug builds. 17.7 KB Diff Download File
time.in.h 1093.8.1 15 years ago rm fix for gnulib mktime test & replacement (adaptati 3.7 KB Diff Download File
time_r.c 815.1.1 16 years ago Monty Taylor Add timegm which is missing on Solaris. 1.2 KB Diff Download File
timegm.c 994.2.8 15 years ago Monty Taylor Updated gnulib files. 1.3 KB Diff Download File
unistd.in.h 994.2.8 15 years ago Monty Taylor Updated gnulib files. 17 KB Diff Download File