Commit graph

173 commits

Author SHA1 Message Date
igor@rurik.mysql.com
09e6597015 Merge rurik.mysql.com:/home/igor/mysql-5.0
into  rurik.mysql.com:/home/igor/dev/mysql-5.0-2
2005-12-02 20:42:36 -08:00
ramil@mysql.com
516fd4254e Addition to fix for bug #12956: cast make differ rounding.
- use rint() in some other val_int() methods as well.
2005-11-30 11:17:25 +04:00
ramil@mysql.com
ca345dede4 Fix for bug #10966: Variance functions return wrong data type. 2005-11-22 18:29:46 +04:00
igor@rurik.mysql.com
c136e9c43b Fixed bug #12762:
allowed set functions aggregated in outer subqueries, allowed nested set functions.
2005-10-15 14:32:37 -07:00
igor@rurik.mysql.com
04f3b5513a item_sum.cc, item_sum.h:
Post-merge fix.
2005-09-07 21:38:27 -07:00
igor@rurik.mysql.com
6daec8eb6c Manual merge 2005-09-07 18:07:51 -07:00
igor@rurik.mysql.com
af9740d0fd func_gconcat.result, func_gconcat.test:
Added test cases for bug #12863.
item_sum.cc, item_sum.h:
  Fixed bug #12863.
  Added a flag to Item_func_group_concat set to FALSE after
  concatenation of the first element of a group.
2005-09-06 22:20:11 -07:00
msvensson@neptunus.(none)
891b64fd84 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into neptunus.(none):/home/msvensson/mysql/mysql-4.1
2005-05-09 12:16:59 +02:00
msvensson@neptunus.(none)
5b5565c30a BUG#10241 cygwin port: invalid pragma interface directives
- Introduce ifdefs so we can control when to use #pragma interface on cygwin
2005-05-04 15:05:56 +02:00
dlenev@brandersnatch.localdomain
8ee6d33bdd Fix for Bug #9913 "udf_deinit is not called after execution of PS"
(aka "deinit is not called when calling udf from trigger").

We should call udf_deinit() function during cleanup phase after prepared
(or ordinary) statement execution instead of calling it from Item's
desctructor.

No test case is provided since it is hard to test UDF's from our test
suite.
2005-04-30 20:23:40 +04:00
monty@mysql.com
e2dc9b4099 Backport my_strntod() from 5.0
Change string->float conversion to delay division as long as possible.
This gives us more exact integer->float conversion for numbers of type '123.45E+02' (Bug #7740)
2005-02-22 12:51:23 +02:00
igor@rurik.mysql.com
cd577f2590 func_gconcat.result, func_gconcat.test:
Added a test case for bug #7769.
item_sum.h:
  Fixed bug #7769: a crash for queries with group_concat and
  having when the query table was empty.
  The bug was due an unsafe dereferencing.
2005-01-15 01:05:00 -08: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
ram@gw.mysql.r18.ru
511eb626bf Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.1
into gw.mysql.r18.ru:/usr/home/ram/work/4.1.b6441
2004-11-25 16:18:46 +04: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
ram@gw.mysql.r18.ru
167c9489fa A fix (bug #6441: Aggregate UDF in multi-table query crashes MySQL when returning multiple rows). 2004-11-06 09:37:30 +04: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
b2d9799b54 args_copy and cleunup() removed from Item_sum
registration changing ITEM_SUM arguments added
2004-10-09 01:01:19 +03: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
serg@serg.mylan
e1237cbc53 manually merged 2004-08-18 19:57:55 +02:00
serg@serg.mylan
22ca5582d0 BUG#4393, BUG#4356 - incorrect decimals in fix_length_and_dec() in some functions 2004-07-31 22:39:10 +02: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
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
monty@mysql.com
939ea71ecd Portability fixes
Change strtoll -> my_strtoll10()
Fixed bug in my_strntoul() and my_strntol() where we got different values on 32 and 64 bit systems (Bug #3472)
2004-05-07 01:43:17 +03:00
ram@gw.mysql.r18.ru
949c01bfa2 a fix (Bug #3435: STDDEV|VARIANCE(constant) returns constant if no rows) 2004-05-05 16:06:01 +05:00
monty@mishka.local
21fd1d270e Merge with 4.0 2004-04-26 15:53:31 +03:00
ram@gw.mysql.r18.ru
c8937dbcb7 A fix. (Bug #3376: AVG(constant) returns constant if no rows in result set) 2004-04-09 19:07:39 +05: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
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
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
a66b398eb8 merge 2004-02-17 11:12:55 +02:00
bell@sanja.is.com.ua
f18c9bdbd6 fixed initialization to satisfy valgrind 2004-02-15 19:46:23 +02:00
bell@sanja.is.com.ua
44b37b089a merge 2004-02-14 13:31:39 +02:00
serg@serg.mylan
01c2ca5b8a Merge bk-internal:/home/bk/mysql-4.1/
into serg.mylan:/usr/home/serg/Abk/mysql-4.1
2004-02-13 15:30:00 +01:00
serg@serg.mylan
5914e5705c my_atof is deleted
strtod from mit-threads is restored and cleaned up
2004-02-13 15:27:21 +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
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
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
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
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
bell@sanja.is.com.ua
934fa2a104 Merge 2003-10-22 20:52:47 +03: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
e1b53fdd42 Merge 2003-10-06 20:55:06 +03:00
vva@eagle.mysql.r18.ru
5df8184827 fixed bug with Item_sum_min/Item_sum_max from test func_gconcat.test 2003-10-03 17:22:17 -04: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
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@sanja.is.com.ua
7a56d62dfb fixed typo 2003-08-28 18:31:38 +03: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
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
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
fe5a73540e fixed memory leak 2003-07-16 14:11:35 +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
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
a2e9bbf2eb URGENT
SCRUM
BUG
correct wrong code in group_concat
2003-05-31 15:44:19 +06:00
monty@narttu.mysql.fi
dd2b7918cd Merge with 4.0.13 2003-05-19 16:35:49 +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
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
wax@kishkin.ru
a17c567f86 replace default separator in group_concat, correct a bug 2003-04-16 00:22:43 +06: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
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
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
monty@mashka.mysql.fi
e3cd63521c Fix for MIN/MAX with empty tables
MIN(key_column) could in some cases return NULL on a column with NULL and other values.
MIN(key_column) and MAX(key_column) could in some cases return wrong values when used in OUTER JOIN.
2003-02-03 20:20:32 +02:00
bell@sanja.is.com.ua
37d228e623 changes based on partial revie of task 577 (SCRUM) 2003-01-30 18:07:39 +02:00
bell@sanja.is.com.ua
760e22f0bb after merge fix of 577 task (SCRUM, pre commit to be able to merge with static tables optimization fix)
fixed derived tables with subselect inside
2003-01-26 21:30:35 +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
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
a690ba43e4 fix stupid error in comments to VARIANCE+STD 2002-12-14 04:53:28 +04:00
vva@eagle.mysql.r18.ru
b624df724b add VARIANCE function 2002-12-14 03:36:59 +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
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