Commit graph

527 commits

Author SHA1 Message Date
konstantin@mysql.com
f60ebc4815 A fix and a test case for Bug#10794 "mysql_stmt_attr_set no
open cursor after mysql_stmt_execute" + post-review fixes.
The bug was caused by wrong flags in stmt->server_status on the client
side: if there was no cursor, the server didn't send server_status
flags to the client, and the old flags were used to set up the
fetch function of a statement. Consequently, stmt_read_row_from_cursor was
used when there was no cursor. The fix fixes the server to always
send server flags to the client.
2005-06-30 16:17:10 +04:00
jimw@mysql.com
3ccb90c085 Make status of NO_BACKSLASH_ESCAPES mode known to the client so
it can use it to switch to only quoting apostrophes by doubling
them when it is in effect. (Bug #10214)
2005-06-23 18:29:56 -07:00
konstantin@mysql.com
b3d977df10 Rename all prepared statements COM_ commands to prefix with COM_STMT_ 2005-06-17 23:26:25 +04:00
monty@mysql.com
4b7882dc73 merge 2005-06-05 17:19:50 +03:00
monty@mysql.com
25a2c4a71e Cleanup during review
Simple optimization for 2 argument usage to function of variable arguments
Fix stack overrun when using 1+1+1+1+1+1+1+....
Update crash-me results for 5.0
Don't call post_open if pre_open() fails (optimization)
2005-06-05 17:01:20 +03:00
konstantin@mysql.com
ada8f09186 Add missing STMT_ATTR_PREFETCH_ROWS to mysql_stmt_attr_get 2005-06-04 12:37:10 +04:00
konstantin@mysql.com
d0b4e71bbd Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/opt/local/work/mysql-5.0-9643
2005-05-16 18:48:01 +04:00
konstantin@mysql.com
f1916b87d2 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/opt/local/work/mysql-5.0-9643
2005-05-16 18:29:04 +04:00
konstantin@mysql.com
38d68559bf A fix and a test case for Bug#9643 " CURSOR_TYPE_SCROLLABLE dos not work"
- check on the client the unsupported feature and return 
an error message if it's been requested.
Additionally added API support for STMT_ATTR_PREFETCH_ROWS.
Post-review fixes.
2005-05-16 18:27:21 +04:00
monty@mysql.com
9db45adb60 Merge with 4.1 2005-05-14 18:31:22 +03:00
monty@mysql.com
6588997eb8 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/my/mysql-4.1
2005-05-14 16:28:52 +03:00
monty@mysql.com
beb5867dfb After merge fixes 2005-05-14 16:24:36 +03:00
konstantin@mysql.com
89bd09fed2 Manual merge (again) 2005-05-14 12:38:12 +04:00
konstantin@mysql.com
6c981c0b80 Fix a valgrind warning: memcpy does not allow its arguments to overlap. 2005-05-14 02:31:26 +04:00
georg@lmy002.wdf.sap.corp
320d9cb4c2 added function mysql_set_character_set (reviewed by Monty)
as a work around for #8317 and #9637

This function sends SET NAMES command and changes mysql->charset
so mysql_real_escape_string will work as expected.
2005-05-13 15:06:11 +02:00
konstantin@mysql.com
d0e24153b9 A fix and test case for Bug#9478 "mysql_stmt_attr_set mysql_stmt_execute"
(crash on attempt to re-execute a statement with an open cursor) + 
post-review fixes.
2005-05-12 11:16:12 +04:00
hf@deer.(none)
64f4fd2bbd Merging 2005-04-21 13:19:02 +05:00
hf@deer.(none)
c6464cab0d Fix for bug #7344 (Repeating mysql_server_start/mysql_server_end crash clients)
One more free_charset call added
2005-04-21 10:58:58 +05:00
georg@lmy002.wdf.sap.corp
1cbe701d78 Fix for verification tests: loss of decimal places should not
return an error
2005-04-12 08:51:26 +02:00
georg@lmy002.wdf.sap.corp
698399dc98 Fix for verification tests: truncation of post digits should not return an error 2005-04-11 12:25:44 +02:00
ramil@mysql.com
ac2efb1300 Fix for bit type:
we have to handle bit fields as well.
2005-04-04 16:33:23 +05:00
konstantin@mysql.com
a8c1316c6b Manual merge 2005-03-24 15:17:39 +03:00
konstantin@mysql.com
fd54ee4539 Fixes and test cases for Bug#8880 "Commands out of sync error with cursors"
and Bug#9159 "Server crash during mysql_stmt_close".
The patch adds support for single-row result sets in cursors.
2005-03-24 15:12:53 +03:00
serg@serg.mylan
f4d4df2ca4 Merge bk-internal:/home/bk/mysql-5.0
into serg.mylan:/usr/home/serg/Abk/mysql-5.0
2005-03-21 13:43:25 +01:00
jimw@mysql.com
ee2b4ec959 Eliminate warnings noticed by VC7. This includes fixing my_mmap() on
Windows to call CreateFileMapping() with correct arguments, and
propogating the introduction of query_id_t to everywhere query ids are
passed around. (Bug #8826)
2005-03-18 16:12:25 -08:00
serg@serg.mylan
da27256e12 Merge bk-internal:/home/bk/mysql-5.0
into serg.mylan:/usr/home/serg/Abk/mysql-5.0
2005-03-18 20:12:31 +01:00
jimw@mysql.com
22e5d9cc0a Fix HP/UX debug compile error. (Bug #8679) 2005-03-17 10:27:23 -08:00
serg@serg.mylan
376a4ee03b Field::quote_data():
don't call escape_string_for_mysql() unnecesary
  don't overwrite local buffer
escape_string_for_mysql():
  take a length of the destination buffer as an argument
2005-03-17 12:27:45 +01:00
patg@krsna.patg.net
4b7bc748ea WL #2094 Federated Storage Handler
This is the first changeset of suggested changes recommended in Kostja's 
review of my patch, 1.1846, which includes only functionality changes. 
Style changes/Documentation patch to follow.
2005-02-23 00:29:57 -08:00
monty@mysql.com
5e6ba9dec8 Fix errors in my last changeset 2005-02-22 15:08:12 +02:00
jani@ua141d10.elisa.omakaista.fi
a6106a0a67 Fixed Bug#7838, "pipe_sig_handler should be static". 2005-02-17 23:00:48 +02:00
konstantin@mysql.com
957beb9794 Merge mysql.com:/home/kostja/work/mysql-4.1-root
into mysql.com:/home/kostja/work/mysql-5.0-root
2005-02-10 18:31:02 +03:00
konstantin@mysql.com
36c992b264 Follow-up for bug#7990 2005-02-10 18:24:26 +03:00
konstantin@mysql.com
6054f8140c Merge mysql.com:/home/kostja/work/mysql-4.1-root
into mysql.com:/home/kostja/work/mysql-5.0-root
2005-02-10 17:53:06 +03:00
konstantin@mysql.com
4b2b327dcc A fix and test case for Bug#7990 "mysql_stmt_close doesn't
reset mysql->net.last_error": the solution is to clear
MYSQL->net error before performing COM_CLOSE: if the call
succeeds, the connection is usable for other statements.
More comprehensive fix is to clear MYSQL->net for all
recoverable errors at the time they happen, it will be
implemented in 5.0 as it introduces incompatibility in behavior.
2005-02-10 17:41:54 +03:00
konstantin@mysql.com
7d735c7207 manual merge 2005-02-10 16:58:02 +03:00
konstantin@mysql.com
016544df22 A fix and test case for Bug#8330 "mysql_stmt_execute crashes" (libmysql). 2005-02-10 14:56:20 +03: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
jimw@mysql.com
d11081bd6f Merge 2005-01-24 13:48:48 -08:00
lenz@mysql.com
9675b0698f - renamed client_test -> mysql_client_test
- renamed the tests that use the embedded server (client_test -> 
  mysql_client_test_embedded, mysqltest -> mysql_test_embedded
  and changed some Makefiles and scripts so they are installed in $bindir
  (required to be able to run the test suite against the embedded server)
2005-01-20 16:25:38 +01:00
monty@mysql.com
502ba93b38 Merge with global tree 2005-01-18 04:03:26 +02:00
kaa@polly.local
c46f527454 Fixed memory leak in handle_local_infile() 2005-01-17 19:21:01 +03:00
bar@mysql.com
d91cd61a4b Merge mysql.com:/usr/home/bar/mysql-4.1
into mysql.com:/usr/home/bar/mysql-5.0
2005-01-17 09:30:30 +04:00
bar@mysql.com
308aec1526 libmysql.c:
bug#7891: mysql_character_set_name() returns collation
2005-01-17 09:27:24 +04:00
monty@mysql.com
ef74d8d898 Fixed a bug in prepared statements error handling
After merge fixes
2005-01-06 16:59:29 +02:00
monty@mysql.com
7cf8285b3f After merge fixes
Add support for warnings for prepare of prepared statements
Fixed test to work with --ps-protocol
Fixed some test results
2005-01-04 13:46:53 +02:00
monty@mysql.com
34d5331cee Merge with global tree 2004-12-31 00:50:30 +02:00
georg@beethoven.site
448d453ac1 Merge from 4.1: fix for bug #7285 (embedded server) 2004-12-30 17:17:21 +01:00
ingo@mysql.com
c39be2d0e7 WL#1895 - Print message to error log in case of detected MyISAM corruption
Changed my_error() to print error messages, which come from
arbitrary registered ranges of error messages. Messages can
be unregistered (and should be at end of the program).
Added registration of handler error messages.
Added a new mi_print_error() macro and a new 
mi_report_error() function, which supply error
messages with a table name.
Added calls to mi_print_error() or mi_report_error()
at all places in MyISAM, where table corruption is detected.
2004-12-23 20:11:38 +01:00
monty@mishka.local
4f4bbfc279 Merge with 4.1 2004-12-22 13:54:39 +02:00
konstantin@mysql.com
7c369a240b More work on truncations in libmysql: after-review fixes. 2004-12-18 03:42:28 +03:00
konstantin@mysql.com
7055fc5122 Truncations patch: a post-review fix. 2004-12-18 00:17:25 +03:00
konstantin@mysql.com
ad604b1811 Fixing compile-time failures in recently pushed code (aCC, Sun Studio)
(Bug#7381)
2004-12-17 20:22:13 +03:00
konstantin@mysql.com
3afd1939f7 Portability fix in libmysql (FreeBSD) 2004-12-16 12:43:02 +03:00
konstantin@mysql.com
7216594f4f Data truncation reporting implementation (libmysql) + post review
fixes. Still to do: 
-  deploy my_strtoll10 in limbysql.c
- add mysql_options option to switch MYSQL_DATA_TRUNCATED on and off.
2004-12-16 03:15:06 +03:00
georg@beethoven.local
8482a2fc50 fix for bug #7285: Disable start of embedded server when need to
connect to an external server with mysqld.
2004-12-15 12:36:01 +01:00
konstantin@mysql.com
91457448c2 A fix of return value of mysql_stmt_bind_result() and cleanup. 2004-12-15 01:37:22 +03:00
ram@gw.mysql.r18.ru
41a509ba86 A fix (bug #7129: Test failure: 'type_ranges' when using '--ps-protocol'
bug #7126: Test failure: 'func_str' when using '--ps-protocol'
       bug #7130: Test failure: 'type_uint' when using '--ps-protocol').
2004-12-10 20:07:00 +04:00
guilhem@mysql.com
eac128ef2d Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/mysql_src/mysql-5.0-clean
2004-12-09 15:42:06 +01:00
guilhem@mysql.com
1cbc904c59 Changing the default of libmysqlclient : it's now NO reconnection.
All our programs which use mysql_real_connect() and mysql_connect() are updated accordingly, though I have deliberately
made mysqlimport not reconnect anymore (already true for mysqldump >= 4.1.8).
All Connector devs have been warned about the change I'm doing here - which was agreed with Monty,
and fixes BUG#2555.
2004-12-09 14:44:10 +01:00
Sinisa@sinisa.nasamreza.org
a90da35fe6 Fix for a bug #6996 2004-12-07 19:12:29 +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
dlenev@mysql.com
cb7e272e46 Manual merge of fix for bug #6266 "Invalid DATETIME value is not handled
properly" with main tree.
2004-11-19 18:35:36 +03:00
dlenev@brandersnatch.localdomain
b02f5aa692 Fix for bug #6266 "Invalid DATETIME value is not handled properly".
In server we assume that datetime values stored in MYSQL_TIME struct
are normalized (and year is not greater than 9999), so we should 
perform range checks in all places then we convert something to
MYSQL_TIME.
2004-11-15 15:44:29 +03:00
monty@mysql.com
1087186657 Merge with 4.1 to get new thd->mem_root handling 2004-11-08 17:53:32 +02:00
bar@mysql.com
27fcb9f6af libmysql.def, libmysql.c:
Minor clean-ups
2004-11-05 08:44:40 +04:00
monty@mysql.com
071001950e Merge with 4.1 to get in latest bug fixes 2004-11-04 15:06:24 +02:00
konstantin@mysql.com
96829a4639 Remove support for obsolete 4.1.1 prepared statements C API names:
having approval for it since 4.1.4, I also have some assurance that
very few people actually used this: to enable these calls a user
had to #define HAVE_DEPRECATED_411_API and recompile the client library.
2004-11-01 19:01:50 +03:00
monty@mysql.com
afbe601302 merge with 4.1 2004-10-29 19:26:52 +03:00
konstantin@mysql.com
f96d99eba1 A fix and test case for Bug#6096 "field.max_length is always zero for
numeric columns (stmt_resultset_metadata)"
2004-10-27 23:46:22 +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
monty@mysql.com
b686f98f50 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/my/mysql-4.1
2004-10-20 18:58:01 +03:00
monty@mysql.com
4e63fb9891 After merge fixes 2004-10-20 17:28:40 +03:00
monty@mysql.com
e1218474b8 Merge with 4.0 2004-10-20 16:24:28 +03:00
konstantin@mysql.com
e546d901ac Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/kostja/work/mysql-4.1-6049
2004-10-20 16:45:09 +04:00
konstantin@mysql.com
0aa9195a2c A fix and test case for bug#6058 "Prepared statements return '0000-00-00'
(date) as empty  string": preserve time type (date, time, or datetime) for
zero dates, times, and datetimes.
2004-10-20 16:43:36 +04:00
monty@mysql.com
9f8d47d81a Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/my/mysql-4.0
2004-10-20 11:25:46 +03:00
monty@mysql.com
1f8b3d0f22 Code cleanups (done during review of new code)
Rename innodb_table_locks_old_behavior -> innodb_table_locks
Set innodb_table_locks to off by default to get same behaviour as in MySQL 4.0.20
(This means that Innodb ignore table locks by default, which makes it easier to combine MyISAM and InnoDB to simulate a transaction)
2004-10-20 11:24:08 +03:00
monty@mishka.local
7af65592c7 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mishka.local:/home/my/mysql-4.1
2004-10-20 02:55:03 +03:00
monty@mishka.local
04c23808a8 Review of all code pushed since last review
Simple optimzations and cleanups
Removed compiler warnings and fixed portability issues
Added client functions 'mysql_embedded()' to allow client to check if we are using embedded server
Fixes for purify
2004-10-20 01:28:42 +03:00
paul@ice.snake.net
462aed6c99 libmysql.c:
Add note to mysql_hex_string() comment.
2004-10-19 07:44:20 -05:00
bar@mysql.com
c01c8f99ea libmysql.c:
New function mysql_hex_string()
2004-10-19 09:50:47 +05:00
konstantin@mysql.com
33fb5ab61b A fix and test case for Bug#6049 "Loss of sign when using prepared
statements and negative time/date values". 
The bug was in wrong sprintf format used in the client library.
The fix moves TIME -> string conversion functions to sql-common and
utilized them in the client library.
2004-10-16 00:12:59 +04:00
konstantin@mysql.com
105a2c1c03 Fix for Bug#6024 "Test "client_test" fails in 4.1.6-gamma build (1)":
let's not assume that char is signed (its signedness is not defined).
The server was also affected by the wrong typedef.
2004-10-15 03:54:40 +04:00
konstantin@mysql.com
60fc4ed057 libmysql/libmysql.c:
Fix for Bug#6025 "Test "client_test" fails in 4.1.6-gamma build (2)".
 No need for a test case, the bug is covered already.
2004-10-15 02:52:52 +04:00
konstantin@mysql.com
36548b10ca A fix and test case for Bug#5315 "mysql_change_user() doesn't free
prepared statements."
2004-09-22 15:50:07 +04:00
paul@ice.snake.net
5099b678c5 libmysql.c:
Fix typos noticed while poking around in file.
2004-09-11 14:38:23 -05:00
konstantin@mysql.com
48162f9653 A fix and test case for Bug#5194 "Bulk Insert Failures with Prepared
Statements": 
- fix a couple of net->buff overruns in libmysql,
- check in the server that statement parameter count is less than
  65535 (maximum value supported by prepared statements protocol).
2004-09-08 23:07:11 +04:00
hf@deer.(none)
f8aff9934d Small fixes to patch for #5371 2004-09-07 16:33:39 +05:00
hf@deer.(none)
e4ef0eadf2 Fix for the bug #5371 (Prepared query converting float to string blows the
stack)
We just don't expect BIG buffer to be sent for just a double
2004-09-07 14:30:53 +05: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
monty@mysql.com
32594c9989 Print value of Item_param if it has a value (when debugging) 2004-09-04 15:02:57 +03:00
konstantin@mysql.com
2f191db2b1 A fix and test case for Bug#4231 "Wrong result with MYSQL_TIME
parameters": when unpacking binary time recieved from client, handle
the case when length is 0: it means all MYSQL_TIME members are zero.
2004-09-02 20:16:01 +04:00
konstantin@mysql.com
46f1922fb5 A short fix and test case for Bug#5126
"Mediumint and PS problem": just treat mediumint as long.
2004-08-26 22:47:34 +04:00
monty@mysql.com
ceba1429b7 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/my/mysql-4.1
2004-08-26 18:27:33 +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
konstantin@mysql.com
dd601de64f Cleanup. 2004-08-25 17:20:12 +04:00