Commit graph

7401 commits

Author SHA1 Message Date
unknown
313761cb40 Ensure that privileges are tested properly for multi-table-updates.
Now one need only SELECT privilege for tables that are only read in
UPDATE statements with many tables. (Bug #2377).


sql/sql_acl.cc:
  Comment cleanup
sql/sql_parse.cc:
  Merged duplicate code.
  Removed some outdated 'tables->db' tests.
  Check privileges for multi-updates properly (Bug #2377)
sql/sql_show.cc:
  Remove disabled code
sql/sql_update.cc:
  Ensure that privileges are tested properly for multi-table-updates
tests/grant.pl:
  Added more tests
tests/grant.res:
  updated results
2004-02-03 19:17:23 +01:00
unknown
619eaee654 Give error if locked table is used twice in query. This fixes strange error message when doing LOCK TABLES t1 WRITE; INSERT TABLE t1 SELECT * from t1 (Bug #2296)
client/mysqldump.c:
  Better help for flush-logs
mysql-test/r/lock.result:
  Test for LOCK TABLES ; INSERT ... SELECT
mysql-test/t/lock.test:
  Test for LOCK TABLES ; INSERT ... SELECT
2004-02-03 09:46:48 +01:00
unknown
8ab97bb111 Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/my/mysql-4.0
2004-01-30 11:31:49 +01:00
unknown
f120273dd2 Fixed parsing of column names and foreign key constraints in Innobase to handle quoted identifiers and identifiers with space. (Bug #1725)
Fix optimizer tuning bug when first used key part was a constant. (Bug #1679)


innobase/dict/dict0dict.c:
  Fixed parsing of column names and foreign key constraints to handle quoted identifiers and identifiers with space. (Bug #1725)
mysql-test/r/innodb.result:
  Test of innodb internal parsing
mysql-test/t/innodb.test:
  Test of innodb internal parsing
sql/sql_class.cc:
  Safety fix for select into outfile and select into dumpfile. Before calling send_error() could cause end_io_cache() to be called several times.
sql/sql_class.h:
  Add path to dumpfile so that we can delete the generated file if something goes wrong.
sql/sql_select.cc:
  Fix optimizer tuning bug when first used key part was a constant.
  Previously all keys that had this key part first was regarded as equal, even if the query used more key parts for some of the keys.
  Now we use the range optimizer results to just limit the number of estimated rows if not all key parts where constants.
  (Bug #1679)
2004-01-30 10:46:30 +01:00
unknown
bbd2adf4ba Fix for BUG#2477 "Slave stop with error after master reboot if use HEAP tables":
when we open the HEAP table for the first time since server restart,
in hp_open(), we set a flag to propagate this info to the handler level
which then writes a DELETE FROM this_heap_table to the binlog.
It is not a perfect solution for the bug, because between the server start and 
the first open of the table, the slave still had old data in his table so
a SELECT on the slave may show wrong content. But if there is a --init-file
to populate the HEAP table on master as startup, then this is a safe fix
(I'll put a note about init-file in the HEAP section of the manual).


heap/hp_info.c:
  new info variable implicit_emptied
heap/hp_open.c:
  If this is the first open of the HEAP table, it means it is empty,
  so we mark it.
include/heap.h:
  new variables implicit_emptied
  (we need one in HEAPINFO for the hp_info() call).
sql/ha_heap.cc:
  report info to upper level
sql/handler.h:
  new info 'implicit_emptied' in the handler level; only HEAP uses it.
sql/sql_base.cc:
  When a HEAP table is opened for the first time, write a DELETE FROM to the binlog,
  for replication and mysqlbinlog|mysql.
  Monty: I added the
  entry->file->implicit_emptied= 0;
2004-01-30 00:05:34 +01:00
unknown
8746a25554 Fix for BUG#2527 "Multi-Table Delete - Not Replication use replicate-wild-do-table"
(as long as replicate-*-table rules were defined, multi-table DELETE was never
replicated by the slave).


sql/sql_parse.cc:
  For a multi-table DELETE, there are two lists of tables:
  - 'tables' contains the tables in the FROM. They have 'updating==0'.
  - 'thd->lex.auxilliary_table_list.first' contains the tables between the DELETE and the FROM. They have 'updating==1'.
  So the bug was that the slave only tests 'tables' and as all its elements have updating==0,
  tables_ok() always returns 0.
  So for a multi DELETE the slave now tests the 2nd list too.
  I started with the other tip of the sausage: I thought of changing multi DELETE to use
  only one list (given that 'updating' can be used to separate it in two when needed)
  (with one list we wouldn't need to change the slave code), but finally hit the unicity
  check in add_table_to_list() which started to return ER_NONUNIQ_TABLE (logical).
2004-01-29 19:22:29 +01:00
unknown
163dffb4d0 Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/my/mysql-4.0
2004-01-29 15:17:25 +01:00
unknown
b9073593d0 Mark that strings may change on index only reads (for BDB tables).
This fixed problem with index reads on character fields with BDB tables. (Bug #2509)


BitKeeper/etc/ignore:
  added man/*.1
mysql-test/r/bdb.result:
  New test
mysql-test/r/myisam.result:
  More tests
mysql-test/t/bdb.test:
  Test for idnex only read
mysql-test/t/myisam.test:
  More test to verify pushed bug fix
sql/ha_berkeley.h:
  Mark that strings may change on index only reads
sql/item_strfunc.cc:
  Cleanup
sql/table.cc:
  Allow index only reads on binary strings
2004-01-29 15:16:48 +01:00
unknown
9fa2dc4a22 btr0cur.c:
Fix bug: InnoDB row count and index cardinality estimates wrapped over at 512 million in 32-bit computers


innobase/btr/btr0cur.c:
  Fix bug: InnoDB row count and index cardinality estimates wrapped over at 512 million in 32-bit computers
2004-01-29 14:41:49 +02:00
unknown
5bbb51788d Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/mysql_src/mysql-4.0
2004-01-28 15:28:04 +01:00
unknown
f138cd1015 Fix for BUG#2542 "If slave ignores a query it may make the next LOAD DATA INFILE fail":
reset errors (in thd) before executing the event. Otherwise if an event is ignored
because of replicate-*-table rules (error ER_SLAVE_IGNORED_TABLE) this error code
may remain in thd->net and the next event may pick it. 


sql/log_event.cc:
  Reset errors (in thd) before executing the event. Otherwise if an event is ignored
  because of replicate-*-table rules (error ER_SLAVE_IGNORED_TABLE) this error code
  may remain in thd->net and the next event may pick it.
2004-01-28 15:26:01 +01:00
unknown
bd98042426 data0data.ic, data0data.h, row0sel.c:
Fix bug #2483 with InnoDB, UNIQUE secondary index, and NULL values in that unique index; with the IS NULL predicate, InnoDB returned only the first matching row, though there can be many


innobase/row/row0sel.c:
  Fix bug #2483 with InnoDB, UNIQUE secondary index, and NULL values in that unique index; with the IS NULL predicate, InnoDB returned only the first matching row, though there can be many
innobase/include/data0data.h:
  Fix bug #2483 with InnoDB, UNIQUE secondary index, and NULL values in that unique index; with the IS NULL predicate, InnoDB returned only the first matching row, though there can be many
innobase/include/data0data.ic:
  Fix bug #2483 with InnoDB, UNIQUE secondary index, and NULL values in that unique index; with the IS NULL predicate, InnoDB returned only the first matching row, though there can be many
2004-01-27 20:10:04 +02:00
unknown
4db4ffef27 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.0
into gw.mysql.r18.ru:/usr/home/ram/work/4.0.b2298


myisam/mi_search.c:
  Auto merged
2004-01-22 20:35:36 +04:00
unknown
f9cf5bb263 Merge vvagin@bk-internal.mysql.com:/home/bk/mysql-4.0
into eagle.mysql.r18.ru:/home/vva/work/BUG_2290/mysql-4.0
2004-01-22 20:35:35 +04:00
unknown
76c7dac801 Merge eagle.mysql.r18.ru:/home/vva/work/mysql.orig/clear/mysql-4.0
into eagle.mysql.r18.ru:/home/vva/work/BUG_2290/mysql-4.0
2004-01-22 20:28:17 +04:00
unknown
8b03b319f5 some ammendments (comments and code style)
mysql-test/t/func_str.test:
  add skipped new line
sql/item_strfunc.cc:
  rewrote some comments for Item_func_elt
2004-01-22 20:20:43 +04:00
unknown
79f6e16d5e a proper fix for the bug #2298 Trailing whitespace inconsistently handled in WHERE clause.
<monty> ramil, in MySQL/MyISAM we should only strip end space, not 'space-like' characters.
<monty> This is according to SQL;  When doing a comparision end space and only end space are ignored.



myisam/mi_key.c:
  a proper fix for the bug #2298 Trailing whitespace inconsistently handled in WHERE clause.
myisam/mi_search.c:
  a proper fix for the bug #2298 Trailing whitespace inconsistently handled in WHERE clause.
mysql-test/r/select.result:
  test case for the bug #2298 Trailing whitespace inconsistently handled in WHERE clause.
mysql-test/t/select.test:
  test case for the bug #2298 Trailing whitespace inconsistently handled in WHERE clause.
sql/sql_string.cc:
  a proper fix for the bug #2298 Trailing whitespace inconsistently handled in WHERE clause.
2004-01-22 18:05:47 +04:00
unknown
cdcf112af0 test moved to an appropriate file 2004-01-21 23:39:35 +01:00
unknown
0ef9acc9a9 two more bugfixes for "space stripping in MyISAM indexes" 2004-01-21 23:29:17 +01:00
unknown
2c3fdcf749 test case for MyISAM sort-repair bug 2004-01-21 21:43:41 +01:00
unknown
db77cba566 Merge mysql.com:/space/my/mysql-4.0
into mysql.com:/space/my/mysql-4.0-build
2004-01-21 17:49:11 +01:00
unknown
17fdccce28 - remove unnecessary code from Do-rpm to delete the source tarball and
spec file after the build as RPM has its own option for this


Build-tools/Do-rpm:
   - remove unnecessary code to delete the source tarball and spec file
     after the build as RPM has its own option for this
2004-01-21 17:42:41 +01:00
unknown
9cb8a00450 Merge lgrimmer@build.mysql.com:/home/bk/mysql-4.0
into mysql.com:/space/my/mysql-4.0
2004-01-21 09:44:51 +01:00
unknown
837a83c80b Merge mysql.com:/space/my/mysql-4.0
into mysql.com:/space/my/mysql-4.0-build
2004-01-21 09:43:21 +01:00
unknown
24ca1e1edb added test for bug #2290 "output truncated with ELT when using DISTINCT"
sql/item_strfunc.cc:
  fixed bug #2290 "output truncated with ELT when using DISTINCT"
2004-01-21 02:18:51 +04:00
unknown
c9f4333897 Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/mysql_src/mysql-4.0
2004-01-20 15:42:44 -05:00
unknown
c2d849f8bd Fix for BUG#2452 "Empty LOAD DATA INFILE failes with the master in 3.23.x":
do not write the Execute_load_log_event if there was no Create_file_log_event
(empty file).
2004-01-20 15:41:22 -05:00
unknown
efa80e01a4 What started as an attempt to fix BUG#2270 (Substitute paths in mysql
manpage) turned out as a major overhaul of all man pages:

 - renamed all *.1 files to *.1.in to act as templates which are being
   processed at build time
 - replaced some hard-coded values with place holder that are being
   replaced with the proper values at build time
 - Updated list of available man pages in the SEE ALSO section and added a
   hint to the manual for more details
 - Added a BUGS section to all pages, referring to the bugs DB
 - Updated some obsolete URLs and mail addresses

The actual content of these man pages should probably be cross-checked for
correctness, though...


man/Makefile.am:
   - Replace some hard-coded values in the man pages with the proper values
     at build time instead. Instead of the *.1 files, we now add the *.1.in
     files (the templates) to the source distribution and generate the *.1
     files during make.
man/isamchk.1.in:
   - replaced some hard-coded values (e.g. Version numbers) with variables
     which are replaced with the proper values at build time
   - Updated list of other man pages listed in SEE ALSO
   - Added BUGS section, referring to the bugs database
   - Updated URL and Mail address
man/isamlog.1.in:
   - replaced some hard-coded values (e.g. Version numbers) with variables
     which are replaced with the proper values at build time
   - Updated list of other man pages listed in SEE ALSO
   - Added BUGS section, referring to the bugs database
   - Updated URL and Mail address
man/mysql_fix_privilege_tables.1.in:
   - replaced some hard-coded values (e.g. Version numbers) with variables
     which are replaced with the proper values at build time
   - Updated list of other man pages listed in SEE ALSO
   - Added BUGS section, referring to the bugs database
   - Updated URL and Mail address
man/mysql_zap.1.in:
   - replaced some hard-coded values (e.g. Version numbers) with variables
     which are replaced with the proper values at build time
   - Updated list of other man pages listed in SEE ALSO
   - Added BUGS section, referring to the bugs database
   - Updated URL and Mail address
man/mysqlaccess.1.in:
   - replaced some hard-coded values (e.g. Version numbers) with variables
     which are replaced with the proper values at build time
   - Updated list of other man pages listed in SEE ALSO
   - Added BUGS section, referring to the bugs database
   - Updated URL and Mail address
man/mysqladmin.1.in:
   - replaced some hard-coded values (e.g. Version numbers) with variables
     which are replaced with the proper values at build time
   - Updated list of other man pages listed in SEE ALSO
   - Added BUGS section, referring to the bugs database
   - Updated URL and Mail address
man/mysqld.1.in:
   - replaced some hard-coded values (e.g. Version numbers) with variables
     which are replaced with the proper values at build time
   - Updated list of other man pages listed in SEE ALSO
   - Added BUGS section, referring to the bugs database
   - Updated URL and Mail address
man/mysqld_multi.1.in:
   - replaced some hard-coded values (e.g. Version numbers) with variables
     which are replaced with the proper values at build time
   - Updated list of other man pages listed in SEE ALSO
   - Added BUGS section, referring to the bugs database
   - Updated URL and Mail address
man/mysqld_safe.1.in:
   - replaced some hard-coded values (e.g. Version numbers) with variables
     which are replaced with the proper values at build time
   - Updated list of other man pages listed in SEE ALSO
   - Added BUGS section, referring to the bugs database
   - Updated URL and Mail address
man/mysqldump.1.in:
   - replaced some hard-coded values (e.g. Version numbers) with variables
     which are replaced with the proper values at build time
   - Updated list of other man pages listed in SEE ALSO
   - Added BUGS section, referring to the bugs database
   - Updated URL and Mail address
man/mysqlshow.1.in:
   - replaced some hard-coded values (e.g. Version numbers) with variables
     which are replaced with the proper values at build time
   - Updated list of other man pages listed in SEE ALSO
   - Added BUGS section, referring to the bugs database
   - Updated URL and Mail address
man/perror.1.in:
   - replaced some hard-coded values (e.g. Version numbers) with variables
     which are replaced with the proper values at build time
   - Updated list of other man pages listed in SEE ALSO
   - Added BUGS section, referring to the bugs database
   - Updated URL and Mail address
man/replace.1.in:
   - replaced some hard-coded values (e.g. Version numbers) with variables
     which are replaced with the proper values at build time
   - Updated list of other man pages listed in SEE ALSO
   - Added BUGS section, referring to the bugs database
   - Updated URL and Mail address
man/mysql.1.in:
   - replaced some hard-coded values (e.g. Version numbers, path names) with
     variables which are replaced with the proper values at build time
   - Updated list of other man pages listed in SEE ALSO
   - Added BUGS section, referring to the bugs database
   - Updated URL and Mail address
2004-01-20 17:14:02 +01:00
unknown
e639ee8c10 Merge bk-internal:/home/bk/mysql-4.0/
into serg.mylan:/usr/home/serg/Abk/mysql-4.0


myisam/mi_dynrec.c:
  Auto merged
2004-01-20 09:06:03 +01:00
unknown
17bfc6735c two bugs in parallel repair fixed 2004-01-20 09:05:37 +01:00
unknown
fe9647968d Proper fix for bug with BLOB in MIN/MAX
sql/key.cc:
  Change constant to define
2004-01-19 23:44:39 +01:00
unknown
0153488a02 Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/my/mysql-4.0
2004-01-19 23:10:18 +01:00
unknown
45591dec32 Fixed bug in IN() optimization 2004-01-19 23:10:01 +01:00
unknown
36d82d189a BUG#2428 "--old-rpl-compat is broken":
I remove the --old-rpl-compat which produces broken binlogs readable
neither by 4.0 nor by 3.23.
This option is a leftover of the early replication of 4.0.0, when
it was still partly compatible with 3.23.
I explained this to the user in the bug report. 


sql/mysqld.cc:
  removing --old-rpl-compat
sql/sql_load.cc:
  removing --old-rpl-compat
sql/sql_repl.h:
  removing --old-rpl-compat
2004-01-18 17:51:20 +01:00
unknown
89d2c252c6 Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/kostja/mysql/mysql-4.0-root
2004-01-16 21:03:13 +03:00
unknown
8badeb5b83 typo fixed PPTHREAD -> PTHREAD 2004-01-16 21:01:58 +03:00
unknown
2ff0016df3 a fix (Bug #2298: Trailing whitespace inconsistently handled in WHERE clause) 2004-01-16 19:18:57 +04:00
unknown
d894ca49bd Merge sinisa@bk-internal.mysql.com:/home/bk/mysql-4.0
into sinisa.nasamreza.org:/mnt/work/mysql-4.0
2004-01-16 15:26:58 +02:00
unknown
130ae28cca Fixed table crash bug when updating row > 16M (Bug #2159)
myisam/mi_dynrec.c:
  Fixed table crash bug when updating row > 16M
2004-01-15 21:39:56 +01:00
unknown
f6940525aa Wrote small Windows build automation script in preparation
for re-working project files and enabling remote builds.
2004-01-15 16:08:32 -01:00
unknown
d04194e334 Merge lgrimmer@build.mysql.com:/home/bk/mysql-4.0
into mysql.com:/space/my/mysql-4.0
2004-01-15 17:47:42 +01:00
unknown
4681ca8dfd Merge bk-internal:/home/bk/mysql-4.0/
into serg.mylan:/usr/home/serg/Abk/mysql-4.0
2004-01-15 16:31:55 +01:00
unknown
ae4b94598c an obvious bug in _mi_key_cmp fixed (BUG#2295 - range on blobs) 2004-01-15 16:31:27 +01:00
unknown
81e869bcf2 - fixed early removing of socket file when multiple instances of mysqld are
started via mysqld_safe (BUG#2114) Thanks to Rodrigo Marchant for the
   suggestion


scripts/mysqld_safe.sh:
   - fixed early removing of socket file when multiple instances of mysqld are
     started via the script (BUG#2114) Thanks to Rodrigo Marchant for the
     suggestion
2004-01-15 16:14:30 +01:00
unknown
b3e6fb8bea Merge mysql.com:/space/my/mysql-4.0
into mysql.com:/space/my/mysql-4.0-build
2004-01-15 12:09:23 +01:00
unknown
d7c2c8f1f9 row0ins.c:
Fix bug: FOREIGN KEY ... ON UPDATE/DELETE NO ACTION must check the foreign key constraint, not ignore it. Peter Gulutzan said that NO ACTION should check the constraint as deferred, at the end of the SQL statement, while RESTRICT should check it immediately. Since we do not have defered constraints in InnoDB, this bug fix makes InnoDB to check NO ACTION constraints immediately, like it checks RESTRICT constraints.


innobase/row/row0ins.c:
  Fix bug: FOREIGN KEY ... ON UPDATE/DELETE NO ACTION must check the foreign key constraint, not ignore it. Peter Gulutzan said that NO ACTION should check the constraint as deferred, at the end of the SQL statement, while RESTRICT should check it immediately. Since we do not have defered constraints in InnoDB, this bug fix makes InnoDB to check NO ACTION constraints immediately, like it checks RESTRICT constraints.
2004-01-14 16:21:54 +02:00
unknown
91c236cc77 Merge mysql.com:/space/my/mysql-4.0
into mysql.com:/space/my/mysql-4.0-build
2004-01-13 19:45:09 +01:00
unknown
4ee3e7dc69 - be able to build MySQL-shared-compat RPMs for other archs than i386 2004-01-13 19:44:33 +01:00
unknown
afa55213dc Merge lgrimmer@build.mysql.com:/home/bk/mysql-4.0
into mysql.com:/space/my/mysql-4.0
2004-01-13 19:35:04 +01:00
unknown
54ee2705b0 - improved wording in mysql_install_db on what to do to set the password
for the MySQL root user (BUG#2375)


scripts/mysql_install_db.sh:
   - improved wording on what to do to set the password for the MySQL root
     user (BUG#2375)
2004-01-13 19:33:01 +01:00