Commit graph

392 commits

Author SHA1 Message Date
georg@beethoven.site
26e3685b02 Changes and fixes for windows compilation 2005-02-18 15:17:17 +01:00
hf@deer.(none)
b94a482ee9 Precision Math implementation 2005-02-09 02:50:45 +04:00
georg@beethoven.site
3b2bf2f512 Fixes for windows compilation bugs
(After review of cs georg:1.1800 by Monty)
2005-01-26 15:19:20 +01:00
monty@mysql.com
a37e91e435 Changed interface for my_strntod() to make it more general and more portable 2005-01-15 12:28:38 +02:00
monty@mysql.com
d35140a851 First stage of table definition cache
Split TABLE to TABLE and TABLE_SHARE (TABLE_SHARE is still allocated as part of table, will be fixed soon)
Created Field::make_field() and made Field_num::make_field() to call this
Added 'TABLE_SHARE->db' that points to database name; Changed all usage of table_cache_key as database name to use this instead
Changed field->table_name to point to pointer to alias. This allows us to change alias for a table by just updating one pointer.
Renamed TABLE_SHARE->real_name to table_name
Renamed TABLE->table_name to alias
Renamed TABLE_LIST->real_name to table_name
2005-01-06 13:00:13 +02:00
monty@mysql.com
2299e1eca4 Better handling of ensuring that setup_tables() are not called twice
This fixed a bug in prepared statements when used with outher joins
Fixed a bug in SUM(DISTINCT) when used with prepared statements.
Some safety fixes in test scripts to ensure that previous test failures shouldn't affect other tests
2005-01-03 21:04:33 +02:00
monty@mishka.local
4f4bbfc279 Merge with 4.1 2004-12-22 13:54:39 +02:00
monty@mysql.com
3fb088a075 Add 0x before pointers (to help with debugging)
Add support for VARCHAR with 1 or 2 length bytes
Enable VARCHAR packing in MyISAM files (previous patch didn't pack data properly)
Give error if we got problems in temporary tables during a SELECT
Don't use new table generated by ALTER TABLE if index generation fails
Fixed wrong call by range_end() (Could cause an ASSERT in debug mode)
2004-12-18 05:19:21 +02:00
sergefp@mysql.com
3c8f48d2e3 * Added comments and one assert
* Backport of safety measures from 5.0: make numeorous replaces:
    s/item->fix_fields()/if (!item->fixed) item->fix_fields()
2004-12-14 03:36:19 +03:00
bell@sanja.is.com.ua
acbca25dd2 postreview fix 2004-12-07 21:18:15 +02:00
bell@sanja.is.com.ua
b218560604 merge 2004-12-07 09:07:37 +02:00
monty@mysql.com
77207d19f2 Merge with new VARCHAR code 2004-12-06 19:18:35 +02:00
monty@mysql.com
67ce247965 Add support for up to VARCHAR (size up to 65535)
Renamed HA_VAR_LENGTH to HA_VAR_LENGTH_PART
Renamed in all files FIELD_TYPE_STRING and FIELD_TYPE_VAR_STRING to MYSQL_TYPE_STRING and MYSQL_TYPE_VAR_STRING to make it easy to catch all possible errors
Added support for VARCHAR KEYS to heap
Removed support for ISAM
Now only long VARCHAR columns are changed to TEXT on demand (not CHAR)
Internal temporary files can now use fixed length tables if the used VARCHAR columns are short
2004-12-06 02:00:37 +02:00
serg@serg.mylan
2d3dd65cc1 merged 2004-11-20 18:36:41 +01:00
bar@mysql.com
770c9be8c2 Bug #6658 MAX(column) returns incorrect coercibility
Also, Item_sum_hybrid->charset was removed as redundant,
and switched to use collation.collation instead.
2004-11-19 19:35:36 +04:00
bell@sanja.is.com.ua
f5e253dc2f reporting empty result added in case of max/min optimisation of ALL/ANY/SOME subqueries
fixed null processing in NOT operation used in ALL subquery (Bug #6247)
2004-11-18 18:10:07 +02:00
bell@sanja.is.com.ua
1555469b64 merge 2004-11-12 15:36:31 +02:00
bell@sanja.is.com.ua
31f7811183 post-review fixes 2004-11-12 14:34:00 +02:00
konstantin@mysql.com
e5f4c7a0bd Rename: Item::val -> Item::val_real(). 2004-11-11 21:39:35 +03:00
monty@mysql.com
2bba55b57f After merge fixes
Added push_back(void *, MEM_ROOT *) to make some list-handling code easier that needs to be allocated in a different mem-root
(Before one had to change thd->mem_root ; push_back(); restore mem_root.
2004-11-09 03:58:44 +02:00
monty@mysql.com
1087186657 Merge with 4.1 to get new thd->mem_root handling 2004-11-08 17:53:32 +02:00
monty@mysql.com
b903a129e2 Simpler arena swapping code
Now thd->mem_root is a pointer to thd->main_mem_root and THR_MALLOC is a pointer to thd->mem_root.
This gives us the following benefits:
- Allow us to easily detect if arena has already been swapped before (this fixes a bug in setup_conds() where arena was swaped twice in some cases)
- Faster swaps of arenas (as we don't have to copy the whole MEM_ROOT)
- We don't anymore have to call my_pthread_setspecific_ptr(THR_MALLOC,...) to change where memory is alloced. Now it's enough to set thd->mem_root
2004-11-08 01:13:54 +02:00
monty@mysql.com
afbe601302 merge with 4.1 2004-10-29 19:26:52 +03:00
monty@mysql.com
6fbc869d18 A lot of fixes for prepared statements (PS):
New mysqltest that can run mysqltest with PS
Added support for ZEROFILL in PS
Fixed crash when one called mysql_stmt_store_result() without a preceding mysql_stmt_bind_result()
Updated test cases to support --ps-protocol
(Some tests are still run using old protocol)
Fixed crash in PS when using SELECT * FROM t1 NATURAL JOIN t2...
Fixed crash in PS when using sub queries
Create table didn't signal when table was created. This could cause a "DROP TABLE created_table" in another thread to wait "forever"
Fixed wrong permissions check in PS and multi-table updates (one could get permission denied for legal quries)
Fix for PS and SELECT ... PROCEDURE
Reset all warnings when executing a new PS query
group_concat(...ORDER BY) didn't work with PS
Fixed problem with test suite when not using innodb
2004-10-26 19:30:01 +03:00
bell@sanja.is.com.ua
42d6d6765a Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-5.0
into sanja.is.com.ua:/home/bell/mysql/bk/work-error-5.0
2004-10-20 16:11:16 +03:00
bell@sanja.is.com.ua
4714a6e744 errors without code removed
net_printf/send_error calls replaced by my_error family functions
-1/1 (sent/unsent) error reporting removed
(WL#2133)
2004-10-20 04:04:37 +03:00
timour@mysql.com
8ab4a7a101 Merge with implementation of WL#1724. 2004-10-11 10:47:08 +03:00
ram@gw.mysql.r18.ru
5e352defa5 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.1
into gw.mysql.r18.ru:/usr/home/ram/work/4.1.gconcat
2004-10-10 12:35:39 +05:00
ram@gw.mysql.r18.ru
5f857a7a82 Blob support for the group_concat() function.
(Bug #4315: GROUP_CONCAT with ORDER BY returns strange results for TEXT fields
 Bug #5564: Strange behaviour with group_concat and distinct
 Bug #5970: group_concat doesn't print warnings)
2004-10-10 12:10:53 +05:00
bell@sanja.is.com.ua
b2d9799b54 args_copy and cleunup() removed from Item_sum
registration changing ITEM_SUM arguments added
2004-10-09 01:01:19 +03:00
timour@mysql.com
e76e617e01 Implementation of the last review comments for WL#1724
"Min/Max Optimization for Queries with Group By Clause"
2004-09-10 04:45:15 +03:00
bell@sanja.is.com.ua
a23857e071 post merge fixes 2004-09-10 02:22:44 +03:00
monty@mysql.com
f2829d0386 After merge fixes of merge with 4.1 that included the new arena code.
Fixed (together with Guilhem) bugs in mysqlbinlog regarding --offset
Prefix addresses with 0x for easier comparisons of debug logs
Fixed problem where MySQL choosed index-read even if there would be a much better range on the same index
This fix changed some 'index' queries to 'range' queries in the test suite
Don't create 'dummy' WHERE clause for trivial WHERE clauses where we can remove the WHERE clause.
This fix removed of a lot of 'Using where' notes in the test suite.
Give NOTE instead of WARNING if table/function doesn't exists when using DROP IF EXISTS
Give NOTE instead of WARNING for safe field-type conversions
2004-09-09 06:59:26 +03:00
sergefp@mysql.com
c8422dfcc7 Fix for bug#5400 "GROUP_CONCAT returns everything twice":
Don't evaluate the value of GROUP_CONCAT several times for the same 'group', reuse the value instead.
2004-09-08 22:43:37 +04:00
monty@mysql.com
31122efde7 Merge with 4.1
(Includes merge of arena code in 4.1 and 5.0)
2004-09-06 15:14:10 +03:00
bell@sanja.is.com.ua
b57e68e6e0 fixed typo in group_concat printing (BUG#5161) 2004-09-01 21:32:24 +03:00
timour@mysql.com
e2cd3dd1ce WL#1724 "Min/Max Optimization for Queries with Group By Clause"
- after-review changes
- merged with the source tree from 204-08-27
2004-08-27 16:37:13 +03:00
monty@mysql.com
ea687ba5da Portability fixes
Fixed bug in end space handle for WHERE text_column="constant"
2004-08-26 18:26:38 +03:00
serg@serg.mylan
a64ac380b5 better for for bug#4767 2004-08-23 10:53:53 +02:00
igor@rurik.mysql.com
02f9e068b9 Merge ibabaev@bk-internal.mysql.com:/home/bk/mysql-4.1
into rurik.mysql.com:/home/igor/mysql-4.1
2004-08-20 16:32:40 -07:00
konstantin@mysql.com
568c6e8526 Fix for bug#4912 "mysqld crashs in case a statement is executed
a second time". The bug was caused by incompatibility of
negations elimination algorithm and PS: during first statement 
execute a subtree with negation was replaced with equivalent 
subtree without NOTs.
The problem was that although this transformation was permanent, 
items of the new subtree were created in execute-local memory.
The patch adds means to check if it is the first execute of a
prepared statement, and if this is the case, to allocate items
in memory of the prepared statement.
The implementation:
- backports Item_arena from 5.0
- adds Item_arena::is_stmt_prepare(), 
  Item_arena::is_first_stmt_execute().
- deletes THD::allocate_temporary_pool_for_ps_preparing(),
  THD::free_temporary_pool_for_ps_preparing(); they
  were redundant.
and adds a few invariants:
- thd->free_list never contains junk (= freed items)
- thd->current_arena is never null. If there is no
  prepared statement, it points at the thd. 
The rest of the patch contains mainly mechanical changes and
cleanups.
2004-08-21 02:02:46 +04:00
igor@rurik.mysql.com
433206c1f2 Merge rurik.mysql.com:/home/igor/mysql-4.1
into rurik.mysql.com:/home/igor/dev/mysql-4.1-0
2004-08-20 12:31:57 -07:00
igor@rurik.mysql.com
f2b9c5f491 olap.test, olap.result:
Added test case for bug #4767.
item_sum.cc:
  Added a correct setting of the maybe_null flag for a copy of 
  an Item_sum object where the argument was a field of an inner table
  in an outer join read from a temporary table.
  It's part of the fix for bug #4767.
sql_select.cc:
  Made change_refs_to_tmp_fields work correctly
  for test case of bug #4767 where Item_sum::get_tmp_table_item
  failed to build a correct copy of an Item_sum object referring
  to a field in a temporary table.
  It looks like a hack yet.
2004-08-12 00:02:29 -07:00
wax@kishkin.ru
3a55c4bcae BUG#4315
BUG#4535
BUG#4686
2004-08-11 15:15:37 +06:00
wax@kishkin.ru
d3f1a6f0cb BUG#4315
BUG#4535
BUG#4686
2004-08-10 15:48:22 +06:00
serg@serg.mylan
f9de714945 misc fixes for compile-time errors 2004-07-21 00:45:08 +02:00
monty@mysql.com
1e31199995 Merge with 4.1.3-beta 2004-07-07 11:29:39 +03:00
ram@gw.mysql.r18.ru
5647996784 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.1
into gw.mysql.r18.ru:/usr/home/ram/work/4.1.b4035
2004-06-15 16:03:16 +05:00
bell@sanja.is.com.ua
ba82b9e7d5 cleunup() of count() and max()/min() added (BUG#2687) 2004-06-10 10:59:55 +03:00
ram@gw.mysql.r18.ru
71eee450e0 a fix
(Bug #4035 GROUP_CONCAT with HAVING clause truncates field                       
Bug #4057 LEFT() function in HAVING clause truncates query result).
2004-06-08 18:01:15 +05:00
pem@mysql.com
71eddc362e Merging 4.1 to 5.0. 2004-05-26 17:04:45 +02:00
bell@sanja.is.com.ua
c7396f8d20 PS and SP made compatible in mechanism used for preparing query for rexecutions (Bug #2266) 2004-05-20 02:02:49 +03:00
bell@sanja.is.com.ua
d2fa79b291 keep old engine & JOIN if we changed subquery Item (Bug #3646) 2004-05-07 23:06:11 +03:00
pem@mysql.com
bf45960eef Merge 4.1 -> 5.0 2004-05-07 18:52:06 +02:00
pem@mysql.com
dfd59e296e Merge 4.1 -> 5.0. 2004-04-07 19:07:44 +02:00
serg@serg.mylan
6ebf869b40 merged 2004-04-07 16:20:46 +02:00
bell@sanja.is.com.ua
61fd95d168 Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-ps3-4.1
2004-04-07 15:23:05 +03:00
monty@mysql.com
70c4eb5838 Portability fixes
Fixed problems with group_concat() and HAVING
Updated crash-me values
2004-04-07 04:33:58 +03:00
serg@serg.mylan
e8eda8129f ::reset(), HA_FAST_KEY_READ, disable_indexes(), enable_indexes(), start_bulk_insert(), end_bulk_insert()
Field::val_str simplification, comment
2004-04-06 21:35:26 +02:00
monty@mysql.com
42cf92ce37 Fixed many compiler warnings
Fixed bugs in group_concat with ORDER BY and DISTINCT (Bugs #2695, #3381 and #3319)
Fixed crash when doing rollback in slave and the io thread catched up with the sql thread
Set locked_in_memory properly
2004-04-05 13:56:05 +03:00
bell@sanja.is.com.ua
2f4d2a0e38 fixed brocken of client_test
fixed aggregate functions in PS (BUG#3360)
2004-04-03 11:13:51 +03:00
monty@mysql.com
4bc6b551f8 false/true -> FALSE/TRUE
Fixes after last merge
2004-03-30 02:32:41 +03:00
bell@sanja.is.com.ua
d095d4753e after review changes 2004-03-20 13:36:26 +02:00
bell@sanja.is.com.ua
2b45b53066 DBUG_ASSERT(fixed == 1); added to val*
small optimisation in signed_literal
2004-03-18 15:14:36 +02:00
bell@sanja.is.com.ua
8035ce40ec DBUG_ASSERT(fixed == 0) added to fix_fields() 2004-03-17 14:26:26 +02:00
bell@sanja.is.com.ua
7e48a0f610 merge 2004-03-09 12:52:25 +02:00
bell@sanja.is.com.ua
14b9fa3588 revision of fix_fields() calls (BUG2838) 2004-02-18 01:08:52 +02:00
pem@mysql.comhem.se
f9e73c7716 Post-merge fixes. 2004-02-11 18:21:55 +01:00
pem@mysql.com
c8585f3283 Merge 4.1 into 5.0. 2004-02-10 18:44:02 +01:00
bell@sanja.is.com.ua
cefdd4fec6 merge 2004-02-09 15:49:11 +02:00
monty@mysql.com
06432eac36 Added --compact to mysqlbinlog
Fixed output from mysqlbinlog when using --skip-comments
Fixed warnings from valgrind
Fixed ref_length when used with HEAP tables
More efficent need_conversion()
Fixed error handling in UPDATE with not updateable tables
Fixed bug in null handling in CAST to signed/unsigned
2004-02-09 12:31:03 +01:00
bell@sanja.is.com.ua
f3877b6538 fixed cleupup() for distinct aggregate functions (BUG#2663) 2004-02-08 20:57:14 +02:00
bell@sanja.is.com.ua
69e2460bd4 fixed subquery with PS (BUG#2462)
fixed UNION preparation
2004-02-08 20:14:13 +02:00
hf@deer.(none)
37abf689ec Pack of changes about 'cleanup()'-s
Some errorneous code trimmed
2004-01-20 20:55:47 +04:00
hf@deer.(none)
1f8eb40310 Code cleanup (working on PS & cleanup() code)
Item & changed with Item* in Item_xxx constructors
tables_list.first -> get_table_list()
2004-01-19 19:53:25 +04:00
hf@deer.(none)
bfe134b86f Fix for prepared statements
Here i added Item_*::cleanup() functions,
removed a lot of ~Item_*'s,
added code to restore order_list and group_list
2003-12-30 14:08:19 +04:00
konstantin@oak.local
d37da004f6 THD::lex now points to THD::main_lex like in 5.0
All tests pass (client_test included)
2003-12-19 20:52:13 +03:00
pem@mysql.com
99e0ae85c7 Merge 4.1 to 5.0. 2003-12-19 18:03:27 +01:00
konstantin@oak.local
7fdf6740c7 Implementation of SUM(DISTINCT), tests cases 2003-12-19 19:04:03 +03:00
monty@mysql.com
031390a9a4 Fixes after merge with 4.0
Cleaned up embedded library access and query cache handling
Changed min stack size to 128K (to allow longer MyISAM keys)
Fixed wrong priority for XOR (should be less than NEG to get -1^1 to work)
2003-12-19 16:25:50 +02:00
monty@mysql.com
e0cc6799ec Merge with 4.0.17 2003-12-17 17:35:34 +02:00
konstantin@mysql.com
124c4ca346 cleanup: if there is return from if-part, we don't need else statement 2003-12-10 22:26:31 +03:00
konstantin@mysql.com
d04b02b977 followup to fix for bug #1790 BIT_AND() result in GROUP BY different when
SQL_BIG_RESULT used": now BIT_AND() always returns 18446744073709551615
if no rows were found.
This patch also fixes bug #1972: "BIT_AND() and BIT_OR() still return 
a *signed* 64bit value"
2003-12-10 15:17:23 +03:00
konstantin@mysql.com
cf192063d1 Post-review fixes for bug #1790 'BIT_AND() result in GROUP BY different when
SQL_BIG_RESULT used':
- BIT_AND now returns BIGINT UNSIGNED
- in case there were no matching rows BIT_AND returns 18446744073709551615 
(but not NULL), BIT_OR returns 0 (but not NULL). That's how Monty wants it
and how is described in our docs.
2003-12-02 19:39:51 +03:00
pem@mysql.com
6e717133c5 Merge 4.1 to 5.0 2003-12-01 16:14:40 +01:00
monty@mysql.com
ede8169d24 Added missing SSL library (Should be in source distribution)
Fixed compiler warnings (a lot of hidden variables detected by the Forte compiler)
Added a lot of 'version_xxx' strings to 'show variables'
Prevent copying of TMP_TABLE_PARAM (This caused core dump bug on Solaris)
Fixed problem with printing sub selects to debug log
2003-11-28 12:18:13 +02:00
konstantin@mysql.com
c4a9dc4f8b fix for bug #1790:
"BIT_AND() result in GROUP BY different when SQL_BIG_RESULT used"

return value of BIT_AND changed to BIGINT SIGNED
Also the patch fixes another bug: when temporary table is in use and one of
values in group is NULL, BIT_AND always returns zero.
Fixed it to always skip null values.
2003-11-21 00:03:04 +03:00
monty@mysql.com
7c6113a39f Merge key cache structures to one
Fixed compiler warnings (IRIX C compiler and VC++)
2003-11-20 22:06:25 +02:00
pem@mysql.com
28a2c6a96b Merging 4.1->5.0. 2003-11-19 15:19:46 +01:00
bell@sanja.is.com.ua
807391a031 Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-print_subselect-4.1
2003-10-30 15:56:52 +02:00
bell@sanja.is.com.ua
33346e26af added code covarage for functions convert(), nullif(), crc32(), is_used_lock(), char_lengtrh(), bit_xor()
added string length for more speed
made code covarage for print() method of Item
fixed printability of some items (SCRUM) (WL#1274)
2003-10-30 12:57:26 +02:00
konstantin@oak.local
2dadbb3153 small fix in comment 2003-10-30 13:09:38 +03:00
bell@sanja.is.com.ua
ae380c5855 merge 2003-10-28 12:45:37 +02:00
bell@sanja.is.com.ua
6300a01909 added comment 2003-10-24 19:30:47 +03:00
bell@sanja.is.com.ua
934fa2a104 Merge 2003-10-22 20:52:47 +03:00
pem@mysql.com
337238b78a Merging 4.1->5.0 2003-10-22 16:10:22 +02:00
harrison@bud.lordblink.com
672a7791c4 Add in bit_xor function (approved by Sergei) 2003-10-15 02:11:03 -04:00
bell@laptop.sanja.is.com.ua
ddf4d1e529 fixed printability of Items (all items except subselects)
(SCRUM) (WL#1274)
2003-10-12 17:56:05 +03:00
bell@laptop.sanja.is.com.ua
8f5c3f3981 fixed fix_fields() parameters for GROUP_CONCAT() ORDER BY clause
(BUG#1537)
2003-10-12 16:10:40 +03:00
bell@laptop.sanja.is.com.ua
e1b53fdd42 Merge 2003-10-06 20:55:06 +03:00
pem@mysql.com
8d884c02bb Merging 4.1 -> 5.0 2003-09-24 11:29:38 +02:00
monty@mashka.mysql.fi
80565e1352 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mashka.mysql.fi:/home/my/mysql-tmp
2003-09-07 15:14:32 +03:00
wax@kishkin.ru
b34c3934d9 BUG
correct bug 1085 (a problem with min/max functions)
add tests of bugs 833,836,1085
2003-09-04 06:44:16 +06:00
monty@narttu.mysql.fi
4b3b4b9250 merge 2003-09-03 19:53:08 +03:00
bell@sanja.is.com.ua
334841d902 tmp_table_field() renamed to get_tmp_table_field() to avoid redifinition of tmp_table_field(TABLE *t_arg) 2003-08-29 16:24:03 +03:00
monty@narttu.mysql.fi
77a70a0a24 merge with 4.0.15 2003-08-29 13:44:35 +03:00
wax@mysql.com
523187296d Merge mysql.com:/home/wax/mysql/mysql-4.1
into mysql.com:/home/wax/mysql/mysql-4.1mm
2003-08-29 02:30:11 +06:00
wax@kishkin.ru
a39f98d637 BUG
correct bugs #833 and #836
2003-08-29 02:28:32 +06:00
bell@laptop.sanja.is.com.ua
3d2a3804a1 reset() split in 2 function clear() & add()
aggregate function reinitialization (if no rows was found) made with help of clear()
(fixed BUG#860)
2003-08-28 03:10:14 +03:00
monty@narttu.mysql.fi
60dd8a2c4f hanged UDF interface to use clear() instead of reset() 2003-08-27 22:30:50 +03:00
monty@narttu.mysql.fi
fe9dc5e711 Add column names for metadata when running mysql with -T
Change metadata info so that that MIN() and code MAX() reports that they can return NULL. Bug #324
2003-08-27 10:26:03 +03:00
pem@mysql.com
7f158dd12a Merge 4.1 into 5.0 2003-08-26 11:51:09 +02:00
bell@laptop.sanja.is.com.ua
5553868638 fixed bug of lack of fix_fields call (after merge bugfix (SCRUM))
fixed bug in Item_sum
fixed bug in dependence remover
after merge fix
2003-08-23 13:29:38 +03:00
bell@laptop.sanja.is.com.ua
c514948a30 merge 2003-08-20 22:17:57 +03:00
monty@narttu.mysql.fi
359846f052 Fixed some varnings from valgrind
Set min value of max_allowed_packet to 1024
Fixed problem with UNION's without braces and SQL_CALC_FOUND_ROWS, LIMIT #,#
and ORDER BY...LIMIT
2003-08-20 16:25:44 +03:00
bell@sanja.is.com.ua
758129279f Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-simple_in-4.1
2003-08-13 10:12:41 +03:00
bell@sanja.is.com.ua
b6a8d68ae4 fixed problem with reference on derived table fields (BUG#1031) 2003-08-12 15:04:49 +03:00
bell@sanja.is.com.ua
cbb3a78d8d merge 2003-08-11 12:00:33 +03:00
bell@sanja.is.com.ua
71b39c3020 Merge sanja.is.com.ua:/home/bell/mysql/bk/work-top3-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-simple_in-4.1
2003-08-11 11:57:37 +03:00
bell@sanja.is.com.ua
a0fda66f00 merge 2003-08-11 11:51:33 +03:00
bar@bar.mysql.r18.ru
a60acfcfe0 Old style charset() and set_charset() were removed. 2003-08-05 12:52:37 +05:00
bell@sanja.is.com.ua
1119ec0e6f Merge sanja.is.com.ua:/home/bell/mysql/bk/work-top3-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-simple_in-4.1
2003-08-05 09:58:00 +03:00
bell@sanja.is.com.ua
659650b4ea merge 2003-08-05 09:56:21 +03:00
bar@bar.mysql.r18.ru
85c7a8198a Fix:
CREATE TABLE t1 (s1 CHAR(5) CHARACTER SET latin1 COLLATE latin1_german2_ci);
INSERT INTO t1 VALUES ('Ü');
INSERT INTO t1 VALUES ('ue');
SELECT DISTINCT s1 FROM t1;

The above returned two rows in error.
Now it returns one row, in latin1_german2_ci:  Ü == ue
2003-08-05 11:03:05 +05:00
bar@bar.mysql.r18.ru
f8791c3962 Derivation attribute was not processed correctly
by MAX/MIN in some cases:
SELECT coercibility(max(s1)) from t1;

Subselect collation and derivation was not processed
correctly:

create table a select (select s1 from t1);
select * from t1 where s1 = (select s2 from t1);
2003-07-30 14:15:25 +05:00
bell@sanja.is.com.ua
ec74bb8d76 independent ALL/ANY subselect on top of WHERE clause (subselect without GROUP BY or aggregate functions) optimisation
(SCRUM) (WL#1086)
2003-07-24 15:26:21 +03:00
bell@sanja.is.com.ua
07a70f79e8 fix olap test filing 2003-07-22 13:05:03 +03:00
bell@sanja.is.com.ua
fe5a73540e fixed memory leak 2003-07-16 14:11:35 +03:00
pem@mysql.telia.com
a8a29a39d2 Merging 4.1 into 5.0 (second pass; post-merge fixes).
One test in subselect.test still wrong.
Had to reconstruct all errmsg.txt files completely, since auto-merge made
a mess of the lot. :-(
2003-07-09 17:07:12 +02:00
pem@mysql.telia.com
9c3a7a6ba3 Merge 4.1 into 5.0 (first pass). 2003-07-08 17:50:23 +02:00
bell@sanja.is.com.ua
7ad5331768 merge 2003-07-07 10:30:52 +03:00
bell@sanja.is.com.ua
9b6083dbe7 fixed memory leak in group_concat function (BUG#796)
fixed test func_gconcat to be repeatable independent of presend tables and avoid removing user tables
2003-07-06 18:11:19 +03:00
bell@sanja.is.com.ua
45e001f465 reduced using of slow current_thd/current_lex macro
initialization of item_thd moved to constructor (in any case we need thd in constructor)
initialization of group_concat_max_len to constructor to avoid incorrect length reporting (BUG#757)
removed Item_func_group_concat::fix_length_and_dec() because item have its own fix_fields and will not have inherited items
2003-07-05 03:03:31 +03:00
bell@sanja.is.com.ua
28207ede02 (SCRUM)
It looks like samll revolution in SELECT_LEX tree, but it was only natural way to solve problem with name resolution of external fields inside subselect which belongs to global order of union
also it have following advantages:
 - removed mess with current_select type conversion
   - type checking/converting
   - a lot of virtual methods
 - fake select for union execution allocated only once (it was allocated for every subselect with union executing)

changes:
fixed bug with outer fields name resolution of subqueries which belong to global ORDER BY clause
remuved select_lex() function, now thd->lex.current_select always have type SELECT_LEX
new SELECT_LEX (fake_select_lex) will be allocated in case of UNION for using in UNION processing
fake_select_lex allocated for union hold global ORDER BY & LIMIT clauses and have linkage equal to GLOBAL_OPTIONS_TYPE 
new description of SELECT_LEX tree

(SCRUM)
2003-07-03 02:30:52 +03:00
wax@kishkin.ru
492813d966 Merge kishkin.ru:/home/wax/mysql-4.1 into kishkin.ru:/home/wax/mysql-4g 2003-06-26 05:06:49 +06:00
monty@narttu.mysql.fi
1bd306ccd4 Fixed some new memory leaks
Updated VC++ files
2003-06-24 12:10:35 +03:00
bell@sanja.is.com.ua
096ae170ae Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-item-4.1
2003-06-19 15:25:41 +03:00
wax@kishkin.ru
ed02be687c Merge kishkin.ru:/home/wax/mysql-4.1 into kishkin.ru:/home/wax/mysql-4g 2003-06-07 02:28:11 +06:00
monty@narttu.mysql.fi
23145cfed7 Added SQLSTATE to client/server protocol
bmove_allign -> bmove_align
Added OLAP function ROLLUP
Split mysql_fix_privilege_tables to a script and a .sql data file
Added new (MEMROOT*) functions to avoid calling current_thd() when creating some common objects.
Added table_alias_charset, for easier --lower-case-table-name handling
Better SQL_MODE handling (Setting complex options also sets sub options)
New (faster) assembler string functions for x86
2003-06-04 18:28:51 +03:00
wax@kishkin.ru
61f7821323 Merge kishkin.ru:/home/wax/mysql-4n into kishkin.ru:/home/wax/mysql-4g 2003-06-03 17:07:46 +06:00
wax@kishkin.ru
f96200fd1d BUG
correct bug with empty table
2003-06-03 17:02:51 +06:00
wax@kishkin.ru
a2e9bbf2eb URGENT
SCRUM
BUG
correct wrong code in group_concat
2003-05-31 15:44:19 +06:00
bell@sanja.is.com.ua
01217497b5 merging 2003-05-26 15:52:19 +03:00
monty@narttu.mysql.fi
dd2b7918cd Merge with 4.0.13 2003-05-19 16:35:49 +03:00
bell@sanja.is.com.ua
3a30eda921 fixed memory overrun (bug 380) 2003-05-17 10:05:07 +03:00
monty@narttu.mysql.fi
c858d72588 merge 2003-05-06 01:42:33 +03:00
monty@narttu.mysql.fi
51f9879008 Removed compiler warnings
Fixed memory leak in new filesort code
Optimzed sub selects to use keys with outer references.
Increased max tables in join to 62
2003-05-06 01:38:38 +03:00
vva@eagle.mysql.r18.ru
afd581edd3 made lex a pointer in THD 2003-05-05 14:54:37 -04:00
serg@serg.mylan
784fb81426 INSERT ... UPDATE ... VALUES() 2003-05-03 01:16:56 +02:00
monty@narttu.mysql.fi
f6a43bd567 Fixes for valgrind
Added optimzation for clustered index
Fixed bug in UPDATE ... ORDER BY
Fixed handling of UPDATE ... LIMIT
2003-04-23 21:52:16 +03:00
monty@narttu.mysql.fi
98240b049f Removed some not used files
Remove the 'fs' file systems as this is not maintained.
Moved programs from client to tests
2003-04-22 22:41:59 +03:00
monty@mashka.mysql.fi
3e6c350f64 Fixed bug in SUM() with NULL:s
Added logging of warnings for failed connections with ssl.
Fixed bug in symbolic link handling on Windows
2003-04-15 22:04:16 +03:00
pem@mysql.com
331c56bc36 And got rid of signess warnings... 2003-04-03 20:19:18 +02:00
pem@mysql.com
f197b179a5 Got rid of silly compiler errors on HP-UX and SGI Irix. 2003-04-03 20:19:16 +02:00
monty@narttu.mysql.fi
4a4838059f Fixed bug in warning handling (Memory was allocated from wrong MEM_ROOT) 2003-04-03 21:19:14 +03:00
wax@kishkin.ru
74e32241c4 Auto merged 2003-04-02 18:15:16 +06:00
wax@kishkin.ru
77eb790ec5 SCRUM
correct sql_alloc, ORDER BY and NULL value in group_concat
add comments
move test msg_arg
add test on NULL
2003-04-02 17:55:53 +06:00
wax@kishkin.ru
12f1cb55b5 This is full commit of group_concat with support subselects 2003-03-18 04:07:40 +05:00
bar@bar.mysql.r18.ru
f95eb82934 stringcmp() and sortcmp() have been unified
into the only one sortcmp() with additional
CHARSET_INFO *cmp_charset argument.
2003-03-04 18:01:59 +04:00
bar@bar.mysql.r18.ru
48cdd97866 Strings which appear without charset context,
like number-to-string-convertion-result, now 
takes current database character set, instead of
thread character set. This makes it easy to be
SQL99 conformant and 4.0 compatible.

Item->thd_charset() is renamed to Item->default_charset()
as old name doesn't describe its nature anymore.
2003-03-03 10:53:08 +04:00
bar@bar.mysql.r18.ru
c813cc692a item_sum.cc:
Fixed that MIN() didn't return proper charset for CREATE from SELECT
2003-02-26 11:00:36 +04:00
bar@bar.mysql.r18.ru
850768e741 Fix for MIX and MAX. Item must be checked against binary(). 2003-02-26 10:33:45 +04:00
gluh@gluh.mysql.r18.ru
ae911ef858 Bug fix: for SHOW STATUS (when ssl is used)
Added ROW_RESULT to switchs(for documentation purposes)
2003-02-17 18:06:51 +04:00
gluh@gluh.mysql.r18.ru
063668c08d Merge gluh@192.168.21.1:/usr/home/bk/mysql-4.1
into gluh.mysql.r18.ru:/home/gluh/mysql-4.1.uvar
2003-02-17 15:07:01 +04:00
monty@mashka.mysql.fi
e327393e9d Fixed a lot of wrong memory references as reported by valgrind
Portability fixes
Added new client function: mysql_get_server_version()
New server help code (From Victor Vagin)
Fixed wrong usage of binary()
Disabled RTREE usage for now.
2003-02-12 21:55:37 +02:00
monty@mashka.mysql.fi
15aee37456 merge 2003-02-10 18:01:29 +02:00
monty@mashka.mysql.fi
78e7230e73 Better fix for count(distinct) bug 2003-02-10 17:03:27 +02:00
serg@sergbook.mysql.com
cba78f827c count(distint) on an empty table crash fixed 2003-02-10 12:01:47 +01:00
monty@mashka.mysql.fi
023d6dd39b Merge with 4.0.11 2003-02-04 21:52:14 +02:00
bell@sanja.is.com.ua
62902a3b4b after-review changes (577 SCRUM) 2003-02-02 23:30:01 +02:00
gluh@gluh.mysql.r18.ru
7cfbabd807 Changed ROW_RESULT to default 2003-01-31 14:07:07 +04:00
bell@sanja.is.com.ua
37d228e623 changes based on partial revie of task 577 (SCRUM) 2003-01-30 18:07:39 +02:00
monty@mashka.mysql.fi
689578a099 Fixes for Netware
Call pthread_mutex_destroy() on not used mutex.
Changed comments in .h and .c files from // -> /* */
Added detection of mutex on which one didn't call pthread_mutex_destroy()
Fixed bug in create_tmp_field() which causes a memory overrun in queries that uses "ORDER BY constant_expression"
Added optimisation for ORDER BY NULL
2003-01-28 08:38:28 +02:00
bell@sanja.is.com.ua
44d8a8cdab merging 2003-01-25 13:19:46 +02:00
bell@sanja.is.com.ua
d56e23f64e fixed subselects with temporary tables (SCRUM)
fixed memory leacks
2003-01-25 02:25:52 +02:00
monty@mashka.mysql.fi
7436e9ec97 Merge 2003-01-21 21:28:51 +02:00
monty@mashka.mysql.fi
25c393a12e Portability fixes (for windows)
Some changes to the prepared statement protocol to make it easier to use and faster.
2003-01-21 21:07:59 +02:00
bell@sanja.is.com.ua
372e2130e4 fixed test of cardinality 2003-01-21 13:55:26 +02:00
bar@bar.mysql.r18.ru
4f9d82700d strnto family functions now return error in a new argument 2003-01-16 17:17:07 +04:00
monty@mashka.mysql.fi
7e9b27eaf5 Updates for multi-byte character sets
(Note: test 'union' fails, but Sanja promised to fix this)
2003-01-14 14:28:36 +02:00
bar@bar.mysql.r18.ru
8a28d5a365 COUNT(DISTINCT field) now honors charsets 2002-12-19 16:42:35 +04:00
monty@mashka.mysql.fi
d783e18436 merge 2002-12-14 17:49:01 +02:00
vva@eagle.mysql.r18.ru
8eddd4d411 Merge vvagin@work.mysql.com:/home/bk/mysql-4.1
into eagle.mysql.r18.ru:/home/vva/work/VARIANCE/4.1.clone
2002-12-14 03:38:38 +04:00
vva@eagle.mysql.r18.ru
b624df724b add VARIANCE function 2002-12-14 03:36:59 +04:00
bar@bar.mysql.r18.ru
e870df661d Use of new num->str functions
fix in ucs2 charset
2002-12-11 15:29:23 +04:00
monty@mashka.mysql.fi
d3eb993a27 rename of net_pkg.cc to protocol.cc
Class for sending data from server to client (Protocol)
This handles both the old ( <= 4.0 ) protocol and then new binary protocol that is used for prepared statements.
2002-12-11 09:17:51 +02:00
monty@mashka.mysql.fi
35ff08c2af After merge fixes
Added THD to add_to_xxx_list() functions for faster parsing.
2002-12-06 21:11:27 +02:00
monty@mashka.mysql.fi
9d0f0402a7 Fixed bug when creating keys in temporary HEAP tables.
(This caused the DISTINCT test to fail)
Removed one inline as this caused compiler problems
2002-12-02 17:52:22 +02:00
Sinisa@sinisa.nasamreza.org
a968d7c2ea many bug fixes 2002-11-30 18:46:24 +02:00
bell@sanja.is.com.ua
c1527b6f4c Merge sanja.is.com.ua:/home/bell/mysql/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/work-row-4.1
2002-11-28 20:04:09 +02:00
bar@bar.mysql.r18.ru
d2e5a5ddd2 More use of new string->number conversion functions 2002-11-28 11:33:04 +04:00
bell@sanja.is.com.ua
4be2cfd62d merging 2002-11-27 19:31:11 +02:00
bell@sanja.is.com.ua
32df7cacac merging 2002-11-27 11:32:09 +02:00
bell@sanja.is.com.ua
2eb623a4f0 prevent using references on sum function (except HAVING clouse of current select) and forward references 2002-11-21 11:01:33 +02:00
bell@sanja.is.com.ua
7a9f47759e basic row Items (SCRUM) 2002-11-15 20:32:09 +02:00
bell@sanja.is.com.ua
c0932c7bea Merge sanja.is.com.ua:/home/bell/mysql/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/work-in-4.1
2002-11-06 22:35:17 +02:00
bar@bar.mysql.r18.ru
2434be61f8 String->copy() now has a charset arg 2002-11-06 17:43:22 +04:00
bar@bar.mysql.r18.ru
9a9e7ce0f4 Item->thd_charset() - returns a default charset which should be used
to compose strings appeared without charset context, for example,
in convertion from numer into string type.
2002-11-06 15:49:53 +04:00
bell@sanja.is.com.ua
a5a3913e36 after merging fix 2002-11-05 11:59:18 +02:00
bell@sanja.is.com.ua
1575f62374 IN subselect erged with current 4.1 (pointer conversion) 2002-11-05 11:21:40 +02:00