16365 Commits

Author SHA1 Message Date
unknown
0c9bae6e8e A fix (bug #6475: Another server crash in 5.0.2
bug #6515: count(distinct...) crashes the server)


mysql-test/r/count_distinct.result:
  A test case (bug #6515: count(distinct...) crashes the server)
mysql-test/r/func_gconcat.result:
  A test case (bug #6475: Another server crash in 5.0.2)
mysql-test/t/count_distinct.test:
  A test case (bug #6515: count(distinct...) crashes the server)
mysql-test/t/func_gconcat.test:
  A test case (bug #6475: Another server crash in 5.0.2)
sql/sql_select.cc:
  A fix (bug #6475: Another server crash in 5.0.2
         bug #6515: count(distinct...) crashes the server)
  In order to prevent repeated setup() call in the JOIN::make_sum_func_list(),
  the code was splitted: new setup_sum_funcs() was introduced.
  Note: we don't call setup_sum_funcs() in the opt_range.cc:get_best_group_min_max().
2004-11-10 14:36:21 +04:00
unknown
20c82f5c01 Fixed a bug in UPDATE statement with no index column in where condition
locks all rows (BUG #3300). When using innobase_locks_unsafe_for_binlog
option InnoDB does not take locks for those rows which do not
belong to the result set or werent changed by the query. This fix removes
unnecessary locks also from SELECT and DELETE queries.


innobase/include/row0mysql.h:
  Added prototype for row_unlock_for_mysql() function which does an unlock of 
  a row for MySQL.
innobase/include/trx0trx.h:
  Added a field trx_create_lock to a transaction structure. This field is
  TRUE if we have created a new lock for a record accessed.
innobase/lock/lock0lock.c:
  Set lock create flag if lock is created and reset this flag before 
  transaction requests a lock.
innobase/row/row0mysql.c:
  Add support for unlocking a row in InnoDB. If we are using 
  innobase_locks_unsafe_for_binlog option then all those record 
  locks obtained by SQL-query which do not belong to result set 
  or were not modified are unlocked i.e. we remove the lock from 
  those records.
sql/ha_innodb.cc:
  Added support for a unlock_row interface in InnoDB.
sql/ha_innodb.h:
  Added prototype for a function unlock_row().
2004-11-08 14:52:15 +02:00
unknown
bff1d4751d Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-5.0
into sanja.is.com.ua:/home/bell/mysql/bk/work-update-5.0


sql/sql_prepare.cc:
  Auto merged
2004-11-08 01:55:20 +02:00
unknown
f1b9bf699e postreview fixes
mysql-test/r/multi_update.result:
  test with multiupdate reopening tables
mysql-test/t/multi_update.test:
  test with multiupdate reopening tables
sql/item.cc:
  processor for cleunuping items in item tree
sql/item.h:
  processor for cleunuping items in item tree
sql/sql_update.cc:
  fixed case when lock reopened tables
sql/table.cc:
  methos for cleunup view itema of table if they are present
sql/table.h:
  methos for cleunup view itema of table if they are present
2004-11-08 01:54:23 +02:00
unknown
7b30603b0e don't return intg=frac=0 from mod 2004-11-07 16:12:21 +01:00
unknown
fc99b5217c memory overrun in decimal_mod 2004-11-07 13:47:44 +01:00
unknown
2c0e731cbe Merge baker@bk-internal.mysql.com:/home/bk/mysql-5.0
into avenger.(none):/export/brian/mysql/archive-5.0
2004-11-05 23:17:48 -08:00
unknown
97ab6b91ab Remove build errors introduced by 5.0 changes.
Removed duplicate code where defaults in handler.h will work just as well. 


sql/examples/ha_archive.cc:
  Fixed build errors, and removed duplicate code.
sql/examples/ha_archive.h:
  Removed duplicate code (we will let the default values in handler.h handle these cases).
2004-11-05 22:49:15 -08:00
unknown
21f90d19de Fix the client_test failure (due to failing cursors tests after the merge).
sql/sql_select.cc:
  Fix the client_test failure (due to failing cursors tests after the merge):
  move some code around, use set_n_backup calls instead of by-hand
  setup.
2004-11-05 22:39:19 +03:00
unknown
714fc4b76c A fix and test case for Bug#6102 "Server crash with prepared statement
and blank after function name".
Crop fruits of copy-paste programming: pre-caching of stored functions
wasn't performed for prepared statements just because implementation
of prepared statements is done as an add-on to the main execution flow, 
and the preload was originally implemented for main execution branch
only (mysql_execute_command).


mysql-test/r/ps.result:
  Test results fixed: bug#6102
mysql-test/t/ps.test:
  A test case for Bug#6102 "Server crash with prepared statement
   and blank after functionname"
sql/sql_prepare.cc:
  A fix for Bug#6102 "Server crash with prepared statement and blank 
  after functionname": we need to preload stored functions from system tables
   before we open any other tables.
2004-11-05 22:02:07 +03:00
unknown
8b0ece5e88 new lock for multiupdate:
- open and create derived tables
- detect which tables should be locked for write
- lock and fill derived tables
some unitialized variables fixed


mysql-test/r/lock_multi.result:
  correct results returned
mysql-test/r/multi_update.result:
  correct results returned
mysql-test/r/view.result:
  correct results returned
mysql-test/t/multi_update.test:
  correct results returned
mysql-test/t/view.test:
  correct results returned
sql/mysql_priv.h:
  derived tables processing splited on table creation and table filling
sql/sql_base.cc:
  derived tables processing splited on table creation and table filling
sql/sql_class.h:
  function to detect when we need fill derived tables
sql/sql_derived.cc:
  derived tables processing splited on table creation and table filling
sql/sql_lex.cc:
  fixed uninitialized value
sql/sql_load.cc:
  fixed uninitialized value
sql/sql_parse.cc:
  initialization muved (will be done for all queries)
sql/sql_prepare.cc:
  preparation of multiupdate changed a bit because new locking procedure
sql/sql_update.cc:
  new lock for multiupdate:
  - open and create derived tables
  - detect which tables should be locked for write
  - lock and fill derived tables
sql/table.h:
  place to store select_result between creation and filling tables
2004-11-05 17:29:47 +02:00
unknown
ab71b3c6bd The new "Bootstrap" pushed in 4.0 with changeset "joerg:1.2057" is used for building
_all_ versions. It tries to remove "Docs/Images/Makefile*" as part of the actions to
correct bug number 6350. If the source tree does not contain a dummy file matching
that pattern, this "rm" will fail, and so "Bootstrap" will fail.
The "Makefile.am" introduced with this changeset is identical to the one that will
arrive in the 5.0 tree when "joerg:1.2057" is propagated from 4.0 via 4.1 to here,
so this separate introduction here is just to allow "Bootstraps" in the meantime.
2004-11-05 10:23:23 +01:00
unknown
2d8bf1959b Merge bk://mysql.bkbits.net/mysql-5.0
into avenger.(none):/export/brian/mysql/mysql-5.0


BitKeeper/etc/logging_ok:
  auto-union
configure.in:
  Auto merged
2004-11-04 10:29:49 -08:00
unknown
1ce11fe041 Merge bk-internal:/home/bk/mysql-5.0/
into serg.mylan:/usr/home/serg/Abk/mysql-5.0
2004-11-04 13:27:45 +01:00
unknown
755ed8e029 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/users/pchardin/mysql-5.0
2004-11-04 13:27:44 +01:00
unknown
2a4e8ff7be space-stripping in decimal2bin 2004-11-04 13:27:44 +01:00
unknown
f662de31e8 Merge tulin@bk-internal.mysql.com:/home/bk/mysql-5.0
into poseidon.ndb.mysql.com:/home/tomas/mysql-5.0
2004-11-04 12:27:43 +00:00
unknown
ed5fed3c8b correct ndb version
upgrade compatability with 4.1.8


configure.in:
  correct ndb version
ndb/src/common/util/version.c:
  upgrade compatability with 4.1.8
2004-11-04 12:26:49 +00:00
unknown
6c993233d9 fix problem with make dist and decimal.h
include/Makefile.am:
  fix the problem with make dist - decimal.h needs to be in the
  source distribution
2004-11-04 13:07:38 +01:00
unknown
6579c30b80 Fixed changes in printouts 2004-11-04 10:15:37 +01:00
unknown
fbdf06f5da Merge mskold@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/usr/local/home/marty/MySQL/test/mysql-5.0-ndb
2004-11-04 08:21:45 +01:00
unknown
e981c83610 take into accound end \0 in decimal_string_size 2004-11-03 22:30:37 +01:00
unknown
dccbc690dd Merge mskold@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/usr/local/home/marty/MySQL/test/mysql-5.0-ndb


mysql-test/r/ndb_blob.result:
  Auto merged
2004-11-03 20:28:07 +01:00
unknown
9aa4871c0d Merge bk-internal:/home/bk/mysql-5.0/
into serg.mylan:/usr/home/serg/Abk/mysql-5.0
2004-11-03 19:08:29 +01:00
unknown
3693aa4715 After merge fixes
libmysqld/lib_sql.cc:
  After merge fix
sql/handler.cc:
  Cleanup
2004-11-03 20:07:17 +02:00
unknown
e50a3099aa Merge bk-internal:/home/bk/mysql-5.0/
into serg.mylan:/usr/home/serg/Abk/mysql-5.0
2004-11-03 18:46:17 +01:00
unknown
c41f992dea error codes chaged to bitmap (for easier testing with masks)
two more round() modes - CEILING and FLOOR
2004-11-03 18:43:48 +01:00
unknown
4fb5d78d5e Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/my/mysql-5.0


sql/sql_yacc.yy:
  Auto merged
2004-11-03 18:52:03 +02:00
unknown
2c856fa571 Merge mskold@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/usr/local/home/marty/MySQL/test/mysql-5.0-ndb
2004-11-03 15:34:50 +01:00
unknown
ebbe5e39ed Various syntax fixes in sql/sql_yacc.yy for stored procedures:
- No RESTICT|CASCADE in DROP SP (since it's not implemented)
  - Added optional "noise" to FETCH: [[NEXT] FROM]
  - At least one statement required in all block constructs except BEGIN-END
    (where zero is allowed)


mysql-test/r/sp.result:
  Modified test cases for optional [[NEXT] FROM] in FETCH.
mysql-test/t/sp.test:
  Modified test cases for optional [[NEXT] FROM] in FETCH.
sql/sql_yacc.yy:
  Various syntax fixes for stored procedures:
    - No RESTICT|CASCADE in DROP SP (since it's not implemented)
    - Added optional "noise" to FETCH: [[NEXT] FROM]
    - At least one statement required in all block constructs except BEGIN-END
      (where zero is allowed)
2004-11-03 13:49:54 +01:00
unknown
614cda698a Merge on pull
BitKeeper/etc/ignore:
  auto-union
mysql-test/r/grant2.result:
  Auto merged
mysql-test/r/sql_mode.result:
  Auto merged
mysql-test/t/grant2.test:
  Auto merged
sql/handler.cc:
  Auto merged
sql/handler.h:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/opt_range.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_acl.cc:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
2004-11-03 13:01:38 +02:00
unknown
f5a47f156b Fixes after merge with 4.1
FOUND is not a reserved keyword anymore
Added Item_field::set_no_const_sub() to be able to mark fields that can't be substituted
Added 'simple_select' method to be able to quickly determinate if a select_result is a normal SELECT
Note that the 5.0 tree is not yet up to date: Sanja will have to fix multi-update-locks for this merge to be complete


BUILD/SETUP.sh:
  Portability fix
client/mysqltest.c:
  Portability fix
mysql-test/r/drop.result:
  updated results
mysql-test/r/func_str.result:
  New warnings (after merge)
mysql-test/r/insert.result:
  Updated tests
mysql-test/r/join_nested.result:
  Updated results (because of new column types in 5.0)
mysql-test/r/lock_multi.result:
  Temporarly wrong results until Sanja fixes multi-update-lock in 5.0
mysql-test/r/multi_update.result:
  Temporary fix until Sanja fixes multi-update locking
mysql-test/r/ps_1general.result:
  Update of results after merge
mysql-test/r/ps_2myisam.result:
  Update of results after merge
mysql-test/r/ps_3innodb.result:
  Update of results after merge
mysql-test/r/ps_4heap.result:
  Update of results after merge
mysql-test/r/ps_5merge.result:
  Update of results after merge
mysql-test/r/ps_6bdb.result:
  Update of results after merge
mysql-test/r/query_cache.result:
  Update of results after merge
mysql-test/r/range.result:
  New results for new tests
mysql-test/r/rpl_auto_increment.result:
  Update with new 4.0 information
mysql-test/r/rpl_charset.result:
  After merge fixes
mysql-test/r/subselect.result:
  After merge fixes
mysql-test/r/view.result:
  Temporary fix until multi-update-locking is fixed
mysql-test/t/drop.test:
  Safety fix
mysql-test/t/multi_update.test:
  Temporary fix until multi-update-locking is fixed
mysql-test/t/rpl_charset.test:
  More comments
mysql-test/t/sp-error.test:
  Updated comments
mysql-test/t/view.test:
  Temporary fix until multi-update-locking is fixed
scripts/mysql_fix_privilege_tables.sh:
  Better error message
sql-common/client.c:
  More debugging
sql/ha_ndbcluster.cc:
  After merge fixes
sql/handler.cc:
  After merge fixes
sql/item.cc:
  Simple optimization of creating item
  After merge fixed
  Added Item_field::set_no_const_sub() to be able to mark fields that can't be substituted
  The problem is that if you compare a string field to a binary string, you can't replace the field with a string constant as the binary comparison may then fail (The original field value may be in a different case)
sql/item.h:
  Added Item::set_no_const_sub() to be able to mark fields that can't be substituted
sql/item_cmpfunc.cc:
  Mark fields compared as binary to not be substituted.
sql/item_func.cc:
  After merge fix
sql/log_event.cc:
  After merge fix
sql/mysql_priv.h:
  After merge fix
sql/opt_range.cc:
  After merge fix
sql/protocol.cc:
  Made flags uint instead of int (as it's used as a bit mask)
sql/protocol.h:
  Made flags uint instead of int (as it's used as a bit mask)
sql/protocol_cursor.cc:
  Made flags uint instead of int (as it's used as a bit mask)
  Indentation cleanups
sql/sp.cc:
  After merge fixes
  Removed compiler warnings
sql/sp_head.cc:
  After merge fixes
sql/sql_base.cc:
  After merge fixes
  Removed 'send_error' from 'insert_fields()' as the error is sent higher up
sql/sql_class.cc:
  Give assert if set_n_backup_item_arena is used twice
sql/sql_class.h:
  Give assert if set_n_backup_item_arena is used twice
  After merge fixes
  Added 'simple_select' method to be able to quickly determinate if a select_result is a normal SELECT
sql/sql_handler.cc:
  After merge fixes
sql/sql_parse.cc:
  After merge fixes
sql/sql_prepare.cc:
  After merge fixes
sql/sql_select.cc:
  After merge fixes
  Moved 'build_equal_items' to optimize_cond() (logical place)
sql/sql_table.cc:
  After merge fixes
sql/sql_trigger.cc:
  After merge fixes
sql/sql_update.cc:
  After merge fixes
  (This should be fixed by Sanja to have lower granuality locking of tables in multi-update)
sql/sql_view.cc:
  After merge fixes
sql/sql_yacc.yy:
  After merge fixes
  Don't have FOUND as a reserved keyword
2004-11-03 12:39:38 +02:00
unknown
fbb2b237fd Merge mskold@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/usr/local/home/marty/MySQL/test/mysql-5.0-ndb
2004-11-03 10:24:49 +01:00
unknown
2bc842a4c0 Merge bk://mysql.bkbits.net/mysql-5.0
into avenger.(none):/export/brian/mysql/mysql-5.0


BitKeeper/etc/logging_ok:
  auto-union
configure.in:
  Auto merged
2004-11-02 16:46:23 -08:00
unknown
09e0503538 Merge bk-internal:/home/bk/mysql-5.0/
into serg.mylan:/usr/home/serg/Abk/mysql-5.0
2004-11-02 20:46:51 +01:00
unknown
8b33a4536d allocate temp array big enough for not to worry about bound checking in look-aheads 2004-11-02 20:45:55 +01:00
unknown
4fda18b3c0 Merge sgluhov@bk-internal.mysql.com:/home/bk/mysql-5.0
into gluh.mysql.r18.ru:/home/gluh/MySQL/mysql-5.0
2004-11-02 17:46:19 +03:00
unknown
efa50b5c03 WL#1437 :don't create new users with GRANT 2004-11-02 17:45:26 +03:00
unknown
023314bc5f different (hopefully, correct) fix for bin2decimal bug
tests added
2004-11-02 13:55:44 +01:00
unknown
81ef1a41d7 s/sint/uint/ - no sign extend for signed bytes 2004-11-02 12:17:58 +01:00
unknown
543d252e5e Fixed difference in EXPLAIN output 2004-11-02 10:28:39 +01:00
unknown
7e788724af ROUND_UP(negative_number) doesn't work 2004-11-02 09:45:03 +01:00
unknown
076420c8d5 one more pre-division bug 2004-11-01 23:44:05 +01:00
unknown
40edf5bc6e yet another s/>/>=/ typo 2004-11-01 14:47:18 +01:00
unknown
8af37ddc67 correct test for 1/3
more tests
2004-11-01 13:58:28 +01:00
unknown
2cb55007e5 Merge bk-internal:/home/bk/mysql-5.0/
into serg.mylan:/usr/home/serg/Abk/mysql-5.0
2004-11-01 11:31:17 +01:00
unknown
b715986b73 stript end zeros before comparison 2004-11-01 11:28:36 +01:00
unknown
4a23117fb9 Merge mysql.com:/home/timka/mysql/src/5.0-virgin
into mysql.com:/home/timka/mysql/src/5.0-dbg
2004-11-01 10:13:16 +02:00
unknown
de691e1705 Minor fixes of the patch for BUG#6303
mysql-test/r/group_min_max.result:
  Test results for BUG#6303
mysql-test/t/group_min_max.test:
  Ucommented tests for BUG#6303
sql/opt_range.cc:
  Comment fix
2004-11-01 10:12:39 +02:00
unknown
a2e7a90bbb compare with DIG_BASE corectly
rounding bugs fixed
2004-10-31 21:30:19 +01:00