Commit graph

11 commits

Author SHA1 Message Date
osku
48eb9e46a1 Apply InnoDB-specific parts of the fix for bug , wrong error from
cascading update.
2006-02-10 09:16:35 +00:00
marko
c932f9a9fe Import mysql-5.1-new changeset 1.2011.1.1 (Alexander Barkov):
WL#1324 table name to file name encoding

ha_innobase::create(): do not remove .frm extension

row_is_mysql_tmp_table_name(): replace '#' with '@0023'
2006-01-27 09:41:19 +00:00
marko
5674905ffb Implement semi-consistent read to reduce lock conflicts at the cost
of breaking serializability.  (Bug )

ha_innobase::unlock_row(): reset the "did semi consistent read" flag

ha_innobase::was_semi_consistent_read(),
ha_innobase::try_semi_consistent_read(): new methods

row_prebuilt_t, row_create_prebuilt(): add field row_read_type for
keeping track of semi-consistent reads

row_vers_build_for_semi_consistent_read(),
row_sel_build_committed_vers_for_mysql(): new functions

row_search_for_mysql(): implement semi-consistent reads
2006-01-26 10:45:27 +00:00
jan
c8b22058f7 Port r103 from braches/5.0 to trunk.
Fixed a bug on unlock_row. In a unlock_row we may unlock
only the latest lock granted to this transaction to the row.
2005-12-16 07:21:33 +00:00
jan
0629c3ed96 Port r100 from branches/5.0 to trunk. 2005-12-15 07:00:12 +00:00
marko
0809de5d74 Port r98 from branches/5.0: INCOMPATIBLE CHANGE:
Do not pad VARBINARY or BINARY columns. (Bug )

innodb.test, innodb.result: Add test cases for foreign key constraints
between VARBINARY and BINARY columns, and between VARCHAR BINARY and
CHAR BINARY columns.

innobase_init(): Assert that
DATA_MYSQL_BINARY_CHARSET_COLL == my_charset_bin.number.

dtype_get_pad_char(): Do not pad VARBINARY or BINARY columns.

row_ins_cascade_calc_update_vec(): Refuse ON UPDATE CASCADE
when trying to change the length of a VARBINARY column
that refers to or is referenced by a BINARY column.  BINARY
columns are no longer padded on comparison, and thus they
cannot be padded on storage either.
2005-12-14 14:05:34 +00:00
marko
789cbab236 row_ins_foreign_report_add_err(): When printing the parent record, use the
index in the parent table rather than the index in the child table.
(Bug )

innodb.test, innodb.result: Add test cases for foreign key errors.
2005-12-09 12:57:48 +00:00
marko
0c76f7cb96 trunk: Remove error introduced in r87 of branches/5.0, ported in r88:
In row_ins_set_detailed(), truncate the tmpfile by os_file_set_eof(), because
trx_set_detailed_error_from_file() does not call ftell() to determine
the actual length of the file.  This bug resulted in trash being appended
to foreign key error messages.
2005-12-09 07:46:45 +00:00
osku
f937f1516a Port r87 from branches/5.0:
Work around Bug : Do not call os_file_create_tmpfile() at runtime.
Instead, create all tempfiles at startup and guard access to them with
mutexes.
2005-12-08 14:27:09 +00:00
osku
50241299e2 Forward-port r46 from branches/5.0:
Mostly fix bug , when FOREIGN_KEY_CHECKS=0 we still need to check
that datatypes between foreign key references are compatible.

Add test cases (also for bug ).
2005-11-16 07:26:20 +00:00
osku
c307820962 Import 5.0 code. 2005-10-27 07:29:40 +00:00