Commit graph

24180 commits

Author SHA1 Message Date
unknown
024d232af5 Remove an unrelevant assert.
sql/sql_select.cc:
  This assert is not relevant because:
  - the correct assert is DBUG_ASSERT(! (full && sl->uncacheable)) 
    (prevents freeing of uncacheable JOINs), it breaks view.test
  - it seems we can free internal JOINs, even if they are uncacheable:
    if the top level join is evaluated, we're not going to need  the
    internal joins any more
2005-06-24 23:29:00 +04:00
unknown
9f62303dea Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/opt/local/work/mysql-5.0-join_free2push
2005-06-24 23:14:08 +04:00
unknown
e0fde7f52b Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/opt/local/work/mysql-5.0-join_free2push


sql/sql_select.cc:
  Auto merged
sql/sql_select.h:
  Auto merged
2005-06-24 22:48:46 +04:00
unknown
97e78d6017 - don't call JOIN::join_free(1) twice for every join in JOIN::cleanup().
The reason it happened was that both, JOIN::cleanup() and JOIN::join_free(),
went over all nested joins and called cleanup/join_free for them.
For that:
- split recursive and non-recursive parts of JOIN::cleanup() and
JOIN::join_free()
- rename JOIN::cleanup to JOIN::destroy, as it actually destroys its
  argument
- move the recursive part of JOIN::cleanup to st_select_lex::cleanup
- move the non-recursive part of JOIN::join_free to the introduced
  method JOIN::cleanup().


sql/sql_lex.h:
  Add st_select_lex::cleanup, a counterpart of st_select_lex_unit::cleanup()
sql/sql_select.cc:
  - remove two unused arguments from return_zero_rows
  - split JOIN::join_free and JOIN::cleanup to recursive and non-recursive
    parts.
  - note, the assert in JOIN::join_free _does_ fail in having.test.
    We have two options: a) propagate `full' flag to the nested joins.
    We did it before, and this patch didn't change it. If so, we 
    can end up cleaning up an uncacheable JOIN (that is, the join that
    we might need again).
    b) evaluate own 'full' flag on every level. In this case, we might
    end up with tables freed in mysql_unlock_read_tables, but not
    cleaned up properly, and this may be even worse. The test suite
    passes with both approaches, but not with the assert.
sql/sql_select.h:
  - declarations for JOIN::cleanup() and JOIN::join_free()
sql/sql_union.cc:
  Add st_select_lex::cleanup, a counterpart of st_select_lex_unit::cleanup():
  move the recursive part of JOIN::cleanup to it.
2005-06-24 22:48:12 +04:00
unknown
a6975b896a Merge mysql.com:/home/mydev/mysql-5.0
into mysql.com:/home/mydev/mysql-5.0-bug8321
2005-06-24 19:47:20 +02:00
unknown
1960fbcf3d Bug#10178 - failure to find a row in heap table by concurrent UPDATEs
After merge fixes of test result.
2005-06-24 19:47:19 +02:00
unknown
5491325c54 Merge mysql.com:/Users/kent/mysql/bk/mysql-5.0-release
into mysql.com:/Users/kent/mysql/bk/mysql-5.0
2005-06-24 19:47:18 +02:00
unknown
2e6d41d132 Bug#10178 - failure to find a row in heap table by concurrent UPDATEs
Bug#10568 - Function 'LAST_DAY(date)' does not return NULL for invalid argument.
Manual merge.


include/my_global.h:
  Auto merged
mysql-test/t/heap_hash.test:
  Auto merged
sql/ha_heap.h:
  Auto merged
sql/item_timefunc.cc:
  Auto merged
mysql-test/r/func_time.result:
  Manual merge.
  Used local for the backported fix for Bug#10568.
mysql-test/r/heap_hash.result:
  Bug#10178 - failure to find a row in heap table by concurrent UPDATEs
  Manual merge.
mysql-test/t/func_time.test:
  Manual merge.
  Used local for the backported fix for Bug#10568.
sql/ha_heap.cc:
  Bug#10178 - failure to find a row in heap table by concurrent UPDATEs
  Manual merge.
2005-06-24 19:47:18 +02:00
unknown
be3d709170 Merge
mysql-test/r/view.result:
  SCCS merged
mysql-test/t/view.test:
  SCCS merged
2005-06-24 21:47:17 +04:00
unknown
12a640e280 Bug#8321 - myisampack bug in compression algorithm
Added 64-bit extensions, comments, extended statistics 
and trace prints.


include/my_base.h:
  Bug#8321 - myisampack bug in compression algorithm
  Added a comment.
myisam/mi_packrec.c:
  Bug#8321 - myisampack bug in compression algorithm
  Fixed a function comment.
myisam/myisampack.c:
  Bug#8321 - myisampack bug in compression algorithm
  Enlarged the variables which hold Huffman codes to
  ulonglong and adjusted the functions accordingly.
  Added test code for long Huffman codes.
  Enlarged the distinct column values buffer (tree_buff)
  and added checks to stay in its range.
  Added statistics and trace prints.
  Added a lot of comments.
mysys/tree.c:
  Bug#8321 - myisampack bug in compression algorithm
  Added a check against overflow of the tree element count.
  The tree element count is only 31 bits, but sometimes
  used for big numbers. There is however no application yet,
  which relies on exact tree element counts.
2005-06-24 19:34:55 +02:00
unknown
a01d110680 mysql-test-run.pl:
Corrected master server id's


mysql-test/mysql-test-run.pl:
  Corrected master server id's
2005-06-24 18:23:59 +02:00
unknown
fd3ac3829b Fix bug#11325 Wrong date comparison in views
Wrong comparing method were choosen which results in false comparison.

Make Item_bool_func2::fix_length_and_dec() to get type and field from
real_item() to make REF_ITEM pass the check. 


sql/item_cmpfunc.cc:
  Fix bug#11325 Wrong date comparison in views
mysql-test/t/view.test:
  Test case for bug#11325 Wrong date comparison in views.
mysql-test/r/view.result:
  Test case for bug#11325 Wrong date comparison in views.
2005-06-24 20:16:52 +04:00
unknown
a7e66efc2c Bug#10178 - failure to find a row in heap table by concurrent UPDATEs
Moved the key statistics update to info().
The table is not locked in open(). This made wrong stats possible.

No test case for the test suite.
This happens only with heavy concurrency.
A test script is added to the bug report.


mysql-test/r/heap_hash.result:
  Bug#10178 - failure to find a row in heap table by concurrent UPDATEs
  Updated test results to reflect the new  statistics behaviour.
mysql-test/t/heap_hash.test:
  Bug#10178 - failure to find a row in heap table by concurrent UPDATEs
  Added a FLUSH TABLES to avoid statistics differences between normal 
  and ps-protocol tests.
sql/ha_heap.cc:
  Bug#10178 - failure to find a row in heap table by concurrent UPDATEs
  Moved the key statistics update to info().
  The table is not locked in open(). This made wrong stats possible.
sql/ha_heap.h:
  Bug#10178 - failure to find a row in heap table by concurrent UPDATEs
  Added an element to track the validity of the key statistics.
2005-06-24 17:47:09 +02:00
unknown
b743e2b4fa mysql-test-run.sh:
Corrected path to CA certificate


mysql-test/mysql-test-run.sh:
  Corrected path to CA certificate
2005-06-24 11:56:20 +02:00
unknown
5aa793f72b backport for #10568: Function 'LAST_DAY(date)' does not return NULL for invalid argument. 2005-06-24 14:04:48 +05:00
unknown
0c0a5097cb Merge ibabaev@bk-internal.mysql.com:/home/bk/mysql-5.0
into rurik.mysql.com:/home/igor/mysql-5.0
2005-06-24 01:26:35 -07:00
unknown
a60233121f field.cc:
Correction after manula merge.


sql/field.cc:
  Correction after manula merge.
2005-06-24 01:21:18 -07:00
unknown
3bf9a40cdd Merge mysqldev@production.mysql.com:my/mysql-5.0-release
into mysql.com:/Users/kent/mysql/bk/mysql-5.0-release
2005-06-24 10:00:43 +02:00
unknown
77dc5c423f an improvement (bug #7851: C++ 'new' conflicts with kernel header asm/system.h).
include/my_global.h:
  an improvement (bug #7851: C++ 'new' conflicts with kernel header asm/system.h).
  redefine 'new' before #include <asm/atomic.h> in any case.
2005-06-24 12:51:11 +05:00
unknown
b80eb2b5a8 Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-5.0
into sanja.is.com.ua:/home/bell/mysql/bk/work-bug3-5.0
2005-06-24 10:05:33 +03:00
unknown
c94e120671 Merge tkatchaounov@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/timka/mysql/src/5.0-virgin
2005-06-24 10:00:45 +03:00
unknown
3c14168865 Fixed test result for BUG#11185. 2005-06-24 09:56:58 +03:00
unknown
fe80b7b5bf fixed encrypt() name 2005-06-24 01:30:52 +03:00
unknown
d6ec3a43cd Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-5.0
into sanja.is.com.ua:/home/bell/mysql/bk/work-bug3-5.0
2005-06-24 00:25:28 +03:00
unknown
3d1172a10f fixed encrypt() print (BUG#7024)
mysql-test/r/view.result:
  using encrypt & substring_index in view
mysql-test/t/view.test:
  using encrypt & substring_index in view
sql/item_strfunc.h:
  fixed encrypt() print
2005-06-24 00:24:11 +03:00
unknown
9a03ad151d - bumped up version number to 5.0.9 now that the 5.0.8 builds have been branched off 2005-06-23 22:41:26 +02:00
unknown
274ae63c47 Merge tkatchaounov@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/timka/mysql/src/5.0-virgin
2005-06-23 23:26:49 +03:00
unknown
2288296483 Merge tkatchaounov@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/timka/mysql/src/4.1-virgin
2005-06-23 22:40:04 +03:00
unknown
eb3a9091cb Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-5.0
into sanja.is.com.ua:/home/bell/mysql/bk/work-bug3-5.0


sql/sql_class.h:
  Auto merged
2005-06-23 21:45:53 +03:00
unknown
61e7655c89 Merge rurik.mysql.com:/home/igor/mysql-5.0
into rurik.mysql.com:/home/igor/dev/mysql-5.0-0


sql/sql_select.cc:
  Auto merged
2005-06-23 11:22:32 -07:00
unknown
d34e2ccb3e Merge mysql.com:/home/svoj/devel/mysql/mysql-5.0.8-build
into mysql.com:/home/svoj/devel/mysql/mysql-5.0.9
2005-06-23 23:22:31 +05:00
unknown
e3cfd4ef0c Manual merge
mysql-test/r/func_str.result:
  Auto merged
mysql-test/t/func_str.test:
  Auto merged
sql/item_subselect.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
2005-06-23 11:22:30 -07:00
unknown
e5bd4ee8a8 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/opt/local/work/mysql-5.0-sp_instr
2005-06-23 22:22:30 +04:00
unknown
85a7014de6 Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/psergey/mysql-5.0-bug8441
2005-06-23 20:22:29 +02:00
unknown
287af948f1 Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/psergey/mysql-5.0-bug8441
2005-06-23 19:41:42 +02:00
unknown
aa4ccff7f7 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into neptunus.(none):/home/msvensson/mysql/mysql-4.1
2005-06-23 19:06:35 +02:00
unknown
5d12a0bf49 Merge tkatchaounov@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/timka/mysql/src/4.1-virgin
2005-06-23 20:06:35 +03:00
unknown
7ed5026d36 Merge mysql.com:/Users/kent/mysql/bk/mysql-4.1-gca
into mysql.com:/Users/kent/mysql/bk/mysql-4.1
2005-06-23 19:06:35 +02:00
unknown
d9a7e4e0dc Merge rurik.mysql.com:/home/igor/mysql-4.1
into rurik.mysql.com:/home/igor/dev/mysql-4.1-1
2005-06-23 10:06:35 -07:00
unknown
1093237174 Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/psergey/mysql-4.1-bug10151
2005-06-23 19:06:34 +02:00
unknown
d06446af84 sql_parse.cc:
Fix for fix for bug #9728
  Error caused server hang on prepared insert ... select


sql/sql_parse.cc:
  Fix for fix for bug #9728
  Error caused server hang on prepared insert ... select
2005-06-23 21:06:33 +04:00
unknown
0021ec52c6 Merge
mysql-test/r/case.result:
  SCCS merged
mysql-test/t/case.test:
  SCCS merged
sql/item_cmpfunc.cc:
  SCCS merged
2005-06-23 19:05:36 +02:00
unknown
624cc5223c - reverted to using the shell version of mysql-test-run for "make test" until the
remaining bugs in the Perl version have been resolved


Makefile.am:
  - reverted to using the shell version of mysql-test-run until the remaining bugs
    in the Perl version have been resolved
2005-06-23 19:03:55 +02:00
unknown
2460a01b68 removed unneed line 2005-06-23 19:33:19 +03:00
unknown
74307f39eb WL#2286 - Compile MySQL w/YASSL support
Fix for compilation failure with Forte Developer C++.


configure.in:
  Export ARFLAGS, so innobase could pick it up.
innobase/configure.in:
  Use ARFLAGS exported by parent configure script.
2005-06-23 21:29:44 +05:00
unknown
706d3ef8a5 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/opt/local/work/mysql-5.0-sp_instr
2005-06-23 20:23:23 +04:00
unknown
91180cb8ab - implement inheritance of sp_instr: public Query_arena.
We need every instruction to have its own arena, because we want to
  track instruction's state (INITIALIZED_FOR_SP -> EXECUTED). Because of 
  `if' statements and other conditional instructions used in stored 
  procedures, not every instruction of a stored procedure gets executed 
  during the first (or even subsequent) execution of the procedure. 
  So it's better if we track the execution state of every instruction 
  independently.
  All instructions of a given procedure now also share sp_head's 
  mem_root, but keep their own free_list.
  This simplifies juggling with free Item lists in sp_head::execute.
- free_items() moved to be a member of Query_arena. 
- logic of 'backup_arena' debug member of Query_arena has been
  changed to support
  multi-backups. Until now, TRUE 'backup_arena' meant that there is
  exactly one active backup of the THD arena. Now it means simply that
  the arena is used for backup, so that we can't accidentally overwrite an 
  existing backup. This allows doing multiple backups, e.g. in
  sp_head::execute and Cursor::fetch, when THD arena is already backed up
  but we want to set yet another arena (usually the 'permanent' arena,
  to save permanent transformations/optimizations of a parsed tree).


sql/sp_head.cc:
  - use Query_arena support in sp_head::execute() as now sp_instr inherites
    from it.
sql/sp_head.h:
  - inherite sp_instr from Query_arena
sql/sql_class.cc:
  - changed the principle of Query_arena::backup_arena; free_items is now
    a member of Query_arena.
sql/sql_class.h:
  - changed the principle of Query_arena::backup_arena; free_items is now
    a member of Query_arena.
sql/sql_prepare.cc:
  free_items() is now a member of Query_arena.
sql/sql_select.cc:
  free_items() now automatically sets free_list to zero.
2005-06-23 20:22:08 +04:00
unknown
ea89196e78 Merge mysql.com:/Users/kent/mysql/bk/mysql-5.0-release
into mysql.com:/Users/kent/mysql/bk/mysql-5.0
2005-06-23 17:46:00 +02:00
unknown
759715eb92 Merge mysql.com:/Users/kent/mysql/bk/mysql-4.1-gca
into mysql.com:/Users/kent/mysql/bk/mysql-5.0-release


mysql-test/mysql-test-run.pl:
  Auto merged
2005-06-23 17:41:42 +02:00
unknown
744f6a1a99 mysql-test-run.pl:
Might need a restart after test with special TZ
  Removed unused argument to run_mysqltest()


mysql-test/mysql-test-run.pl:
  Might need a restart after test with special TZ
  Removed unused argument to run_mysqltest()
2005-06-23 17:38:40 +02:00