Commit graph

592 commits

Author SHA1 Message Date
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
bar@noter.intranet.mysql.r18.ru
ef7bdbf4b8 Activating the new string->number conversion functions 2004-09-25 17:20:50 +05: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
wax@mysql.com
da53ad65b0 Merge mysql.com:/home/wax/mysql/mysql-4.1
into mysql.com:/home/wax/mysql/mysql-4.1group_concat
2004-09-09 13:02:15 +06: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
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
hf@deer.(none)
0bda11b695 Merge abotchkov@bk-internal.mysql.com:/home/bk/mysql-4.1
into deer.(none):/home/hf/work/mysql-4.1.emb
2004-08-20 10:50:23 +05:00
pem@mysql.comhem.se
2d7f4c30a7 Fixed symbol name problems that made build fail. 2004-08-19 20:48:00 +02:00
wax@mysql.com
589c485aa7 Merge mysql.com:/home/wax/mysql/mysql-4.1
into mysql.com:/home/wax/mysql/mysql-4.1group_concat
2004-08-19 19:41:30 +06:00
wax@kishkin.ru
5c872a7ebc Change information text in pipe and shared memory 2004-08-19 18:42:17 +06:00
hf@deer.(none)
c43d7d92dd Merge bk@192.168.21.1:/usr/home/bk/mysql-4.1
into deer.(none):/home/hf/work/mysql-4.1.emb
2004-08-19 15:47:09 +05:00
serg@serg.mylan
e1237cbc53 manually merged 2004-08-18 19:57:55 +02:00
guilhem@mysql.com
7e89f474ab Fix for BUG#5038 "Cannot disable LOAD DATA LOCAL INFILE from client"
(specific to 4.1): don't put CLIENT_LOCAL_FILES in
CLIENT_CAPABILITIES; it would make mysql_options(CLIENT_LOCAL_FILES,0)
have no effect.
2004-08-17 17:33:21 +02:00
guilhem@mysql.com
8c9fc27f7c Fix for BUG#5073 "--disable-local-infile has no effect if client reads it with MYSQL_READ_DEFAULT":
that was a forgotten '~' probably.
2004-08-17 14:12:37 +02:00
konstantin@mysql.com
72348e7c1c Fixing typos in big comment (libmysql):
you need to check in to find out another couple of typos
2004-08-10 01:16:19 -07:00
konstantin@mysql.com
6989a499da Comments in libmysql (prepared statements API) 2004-08-10 01:08:53 -07:00
kent@mysql.com
a3ea1e2339 libmysql.c:
Can't return value from void function
2004-08-06 18:03:27 +02:00
lenz@mysql.com
1097805cf2 - rename: EXCEPTIONS->EXCEPTIONS-CLIENT 2004-08-05 17:05:11 +02:00
lenz@mysql.com
b6c0b67cf6 - Fixed libmysql license texts: added reference to the FLOSS
EXCEPTIONS file and amended the GPL text as requested by Zak
2004-08-05 11:59:17 +02:00
konstantin@mysql.com
f8c0850521 Cleanup in libmysql. 2004-08-05 02:43:18 -07:00
konstantin@mysql.com
569d3c8488 WL#1518, "make bundled zlib usable for unix builds":
required autotools macro written and deployed in all apropriate Makefile.ams.
Use cases checked:
- linux, standard location of zlib, no ndb
- linux, standard locatoin of zlib, with ndb
- linux, non-standard location of zlib, no ndb
- hpux11, use of bundled zlib, no ndb 
The only non-checked case is non-standard location of zlib (or use of bundled
zlib) + ndb. I wasn't able to check it as ndb/ just won't compile on beasts 
like AIX52 or HPUX11, where such a check is possible. It didn't compile 
there before as these systems dont't have installed zlib, so nothing got broken ;)
2004-07-24 03:30:11 -07:00
hf@deer.(none)
94bfeb8393 Fixes for bugs in embedded library:
#4700 (Unsigned value returned as signed)
    just no appropriate checking
#4701 (Errors returned earlier than expected)
    all errors returned from send_command()
#4702 (Result isn't freed properly if there's no retrieval)
    flush_use_result has only 'client' version and should
    be made 'virtual'
2004-07-22 20:54:25 +05:00
lenz@mysql.com
c2ca8e1a7a - fixed tabbing and added several missing symbols (required for
linking with PHP5) (thanks to Georg Richter for the patch)
2004-07-13 13:50:06 +02:00
paul@kite-hub.kitebird.com
c53dc62ece client.c, libmysql.c:
Symbol spelling change.
errmsg.c:
  Client error message edits.
errmsg.h:
  Two symbol spelling changes.
2004-06-30 22:18:41 -05:00
paul@kite-hub.kitebird.com
925c5ce711 Reword some client error messages. 2004-06-29 12:28:45 -05:00
konstantin@mysql.com
786e5ff717 Fix for compilation failure on high-byte-first platforms. 2004-06-26 04:54:11 +04:00
monty@mysql.com
b1d08ba2b4 Merge with 4.0 to get the latest bug patches to 4.1 2004-06-25 20:13:05 +03:00
konstantin@mysql.com
354e2ba67b Type of MYSQL_BIND::buffer changed to void * 2004-06-25 17:04:33 +04:00
konstantin@mysql.com
a30fcdc690 Fix for Bug#4030 "Client side conversion string -> date type doesn't
work (prepared statements)" and after-review fixes:
- str_to_TIME renamed to str_to_datetime to pair with str_to_time
- functions str_to_time and str_to_TIME moved to sql-common
- send_data_str now supports MYSQL_TYPE_TIME, MYSQL_TIME_DATE,
  MYSQL_TIME_DATETIME types of user input buffers.
- few more comments in the client library
- a test case added.
2004-06-24 19:08:36 +04:00
monty@mysql.com
ad86016e2f lower_case_table_names=2 (Keep case for table names) was not honored
with ALTER TABLE and CREATE/DROP INDEX. (Bug #3109)
Make net_buffer_length visible for mysql clients (Bug #4206)
2004-06-23 16:44:34 +03:00
konstantin@mysql.com
b81315d6e8 Fixes to make client_test run on 64 bit Sun: a bug in libmysql and
test suite fixed.
2004-06-22 23:07:08 +04:00
monty@mysql.com
d69a36d118 merge 2004-06-21 10:24:40 +03:00
guilhem@mysql.com
c5544563ac swapping lines to make gcc happy 2004-06-19 15:35:41 +02:00
guilhem@mysql.com
6b45c24d39 Merge gbichot@213.136.52.20:/home/bk/mysql-4.1
into mysql.com:/home/mysql_src/mysql-4.1-874
2004-06-18 23:51:15 +02:00
guilhem@mysql.com
19dbf58eec API change: mysql_shutdown() now requires a 2nd argument, the shutdown level.
mysqld >=4.1.3 will however understand shutdown requests sent by clients <4.1.3.
And mysqld <4.1.3 will understand shutdown requests sent by clients >=4.1.3
(it will ignore the level). Those shutdown level are just PLACEHOLDERS now.
So this change is just to make the 4.1 API suitable before it is frozen. Later
we will actually implement the shutdown levels.
2004-06-18 23:50:04 +02:00
monty@mysql.com
fd0153304d Fixed some byte order bugs with prepared statements on machines with high-byte-first. (Bug #4173)
Fixed problem with NULL and derived tables (Bug #4097)
Cleanup of new pushed code
2004-06-18 03:02:29 +03:00
monty@mysql.com
6e820c8024 Merge mysql.com:/home/my/mysql-3.23 into mysql.com:/home/my/mysql-4.0 2004-06-18 02:48:01 +03:00
guilhem@mysql.com
5a0a4a134f Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-3.23
into mysql.com:/home/mysql_src/mysql-3.23
2004-06-17 15:41:54 +02:00
guilhem@mysql.com
69bea44bc9 Fix for BUG#4017 "mysql_real_connect buffer overflow" 2004-06-17 15:40:13 +02:00
konstantin@mysql.com
5b5af92fa3 - mysql_stmt_send_long_data commented. A few other comments. 2004-06-17 02:03:15 +04:00
konstantin@mysql.com
e9f2c7d478 Comments and cleanups in client library. 2004-06-16 23:11:02 +04:00
konstantin@mysql.com
5f8ef7a38d Another place where Bug#4079 "error checking in prepared statements"
pops up fixed.
2004-06-16 14:06:39 +04:00
guilhem@mysql.com
f1fda6387e API change: mysql_shutdown() now needs a 2nd parameter, the shutdown level.
Server will however still accept shutdown without specified level; so that old
mysqladmin can still shut server down.
I would like your comments on the names of shutdown level which I chose. You
are welcome to propose better names. Please however check WL#709 before.
Reason for the names I propose is to be accurate, thus leaving possibility
for other levels which we may imagine in the future; that's why I have rejected
names like "fast", "smart", "graceful" so far. My position is that WAIT_ALL_BUFFERS
or WAIT_CRITICAL_BUFFERS say what the shutdown does, whereas for "smart", "fast" you
need to remember what it does.
This should be pushed in 4.1.3 but only after your comments.
2004-06-15 11:35:23 +02:00
konstantin@mysql.com
b9f2b34200 Fixed to compile with IBM C Compiler for AIX Version 6 2004-06-15 12:29:22 +04:00
konstantin@mysql.com
21c524e712 Fix for Bug#4079 "error checking in prepared statements":
reset mysql->status if there was an error in row reading.
2004-06-11 13:12:29 +04:00
konstantin@mysql.com
f08bbd1f12 assert.h needed for my_dbug.h now is included in my_dbug.h, where it for
some reason wasn't included before.
A lot of files cleaned up from #include <assert.h>
2004-06-10 23:58:39 +04:00
konstantin@mysql.com
dc11d3cfa1 Proposed fix for Bug#4026 "Microseconds part of TIME/DATETIME types
is broken (prepared statements)": fixed date handling in many places 
of prepared statements code.
2004-06-09 03:21:50 +04:00
konstantin@mysql.com
dabc0e774e mysql_stmt_field_count() 2004-06-06 02:27:05 +04:00
konstantin@mysql.com
231ec66652 More comments in prepared statements code. 2004-06-06 00:33:16 +04:00
monty@mysql.com
42c35d4569 Added authentication code that was missed in merge
Added new windows configuration
2004-06-03 01:55:47 +03:00
monty@mysql.com
70c2256d2f Merge with 4.0 to get fixes for netware 2004-06-02 00:09:14 +03:00
hf@deer.(none)
9145dcef5e mysql_get_parameter interface fixed 2004-05-31 13:53:10 +05:00
dlenev@brandersnatch.localdomain
03b705ff44 Made my_snprintf() behavior snprintf() compatible when printing %x arguments (it should
produce hex digits in lower case). (fixed version)

Replaced _dig_vec array with two _dig_vec_upper/_dig_vec_lower arrays.
Added extra argument to int2str function which controls case of digits you get.
Replaced lot of invocations of int2str for decimal radix with more optimized int10_to_str()
function.
Removed unused my_itoa/my_ltoa functions.
2004-05-27 17:54:40 +04:00
monty@mysql.com
61a6557307 merge with 4.0 to get windows fixes 2004-05-27 00:30:28 +03:00
hf@deer.(none)
78f58ff384 Fix to make Windows compilation smoother 2004-05-26 21:40:27 +05:00
monty@mysql.com
7d8f8bc77b Changed prototype of killed_ptr() to make it more portable
Applied patches for Netware
2004-05-26 19:12:49 +03:00
monty@mysql.com
af44187bff Merge with 4.0 to get fixes for Windows project files 2004-05-25 02:47:25 +03:00
monty@mysql.com
0babddff40 New MYSQL_SERVER_SUFFIX usage (for easier compilation)
Update of VC++ project files.
2004-05-25 02:28:44 +03:00
konstantin@mysql.com
f207b33a7b Support for character set conversion in binary protocol: another go
after Monty's review.
- Item_param was rewritten.
- it turns out that we can't convert string data to character set of
  connection on the fly, because they first should be written to the binary
  log.
  To support efficient conversion we need to rewrite prepared statements
  binlogging code first.
2004-05-25 02:03:49 +04:00
hf@deer.(none)
e18cd2ea9f Fixes for #3371, #3372, #3374, #3375, #3376 2004-05-15 17:07:44 +05:00
miguel@hegel.local
feb5d24d04 Fix VC++ compiler error (function redifinition) for embedded server 2004-05-10 20:55:52 -03:00
georg@beethoven.local
c745ae9503 Added additional parameter userdata for mysql_set_local_infile_handler
to allow binding of userland functions in PHP.
2004-05-07 14:50:10 +02:00
monty@mysql.com
9e71351122 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/my/mysql-4.1
2004-05-07 01:44:07 +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
konstantin@mysql.com
b58df2e9d4 mysql_stmt_reset now expects ok/error packet from server. 2004-05-06 22:44:00 +04:00
monty@mysql.com
59ddd8c738 Fix to handle unsigned data in prepared statements (Bug #3447)
Fixed security problem that password was temporarly reset when someone changed GRANT for a user. (Bug #3404)
Fixed problem with PROCEDURE analyse() and impossible WHERE (Bug #2238)
Don't auto-repair tables in mysqlcheck if table type doesn't support 'check' command.
2004-05-04 15:02:38 +03:00
monty@mysql.com
661aeb5af2 Only calculate MYSQL_FIELD->max_length if mysql_stmt_attr_set(..., STMT_ATTR_UPDATE_MAX_LENGTH) is done. 2004-04-30 14:24:06 +03:00
monty@mysql.com
0a95918ee9 Merge 2004-04-30 14:04:51 +03:00
monty@mysql.com
6678ecf19a Update 'MYSQL_FIELD->max_length' on mysql_stmt_store_result() (Bug #1647)
Added checking of cut read lines in bootstrap thread (Bug #2874)
2004-04-30 14:02:17 +03:00
konstantin@mysql.com
07eaf18642 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/kostja/mysql/mysql-4.1-u2
2004-04-30 03:00:55 +04:00
konstantin@mysql.com
aec8522569 Fix for Bug#3035 "Prepared statement integer inserts": now unsigned
flag is sent to server with placeholder types.
There were no need to extend the protocol as one additional byte
was reserved for placeholder code, when placeholder code is in range 0-255.
So this byte is now used for flags. Post-review fixes added.
2004-04-30 03:00:19 +04:00
konstantin@mysql.com
392481dae5 Implementation of mysql_stmt_attr_get and mysql_stmt_attr_set
requested by Monty for Bug#1647 (No way to determine what size 
blob/clob is being returned into bound buffer)
2004-04-30 01:02:29 +04:00
monty@mysql.com
32d0b69503 Allow one to send empty strings with mysql_stmt_send_long_data()
mysql_stmt_reset() now resets param->long_data_used
Abort if --defaults-file=path-name uses a non-existing file (Bug #3413)
Fixed problem with symlink test (bug in 4.1.2)
2004-04-28 20:19:50 +03:00
konstantin@dragonfly.local
4a4f5fc601 Stubs for types/names of placeholders, cursor flags and array execution count
implemented in the client library and server.
Warning: this makes the new client library and server incompatible with all 
previous versions and 5.0.
2004-03-31 02:27:49 +04:00
konstantin@mysql.com
889790a15c Simplification: MYSQL_RES *result replaced with MYSQL_DATA result;
No need to check for result existence any more, store_result functions
now are shorter.
cli_read_binary_rows rewritten to handle MYSQL_DATA directly.
2004-03-28 17:22:04 +04:00
serg@serg.mylan
072ddb0194 bad merge (?) fixed 2004-03-26 13:21:48 +01:00
monty@mysql.com
1448199bd7 Cleanups & safety fixes 2004-03-25 22:11:22 +02:00
bar@bar.intranet.mysql.r18.ru
3827fa5589 Unicode Collation Algorithm subset implementation 2004-03-24 16:16:08 +04:00
jcole@mugatu.jcole.us
15cc92cacb Added LOCAL INFILE callback function support. 2004-03-22 19:58:49 -05:00
monty@mysql.com
933278a52b merge with 4.0 (to get compiler error fixes for innodb) 2004-03-19 15:17:56 +02:00
konstantin@mysql.com
b9f51f7081 WL #1510 "Implement support for "commercial" binaries on handshake",
client library:
- implemented 'check_license' function
2004-03-17 20:04:50 +03:00
miguel@hegel.local
bdd771edc5 Merge miguel@bk-internal.mysql.com:/home/bk/mysql-4.1
into hegel.local:/home/miguel/bk/mysql-4.1
2004-03-16 15:55:51 -03:00
konstantin@mysql.com
420c956d27 Intermediate commit of client library (cleanups + fixes of 3 items from
flaws list)
TODO: 
 * verify that no sequence of API calls produces SIGSEGV.
 That is, verify that mysql_stmt_init  -> mysql_stmt_fetch is OK,
 or mysql_stmt_prepare -> mysql_stmt_fetch_column is OK and sets
 meaningful error.
 * remove alloc_stmt_fields call
 * revise stmt->state codes and statement states.
 * there are other items in prepared statements 'to fix' document.

Done:
 - cleanups and comments
 - revision of prepared statement error codes.
 - mysql_stmt_prepare is now can always be called (that is, you can reprepare
   a statement)
 - new implementation of mysql_stmt_close and fetch cancellation
2004-03-16 01:04:04 +03:00
miguel@hegel.local
9c3f21583c Merge miguel@bk-internal.mysql.com:/home/bk/mysql-4.1
into hegel.local:/home/miguel/bk/mysql-4.1
2004-03-12 17:59:06 -03:00
miguel@hegel.local
7efba206fd For to export the renamed functions 2004-03-12 15:51:18 -03:00
konstantin@oak.local
001ad87554 fix to make client.c compile on windows 2004-03-12 18:53:45 +03:00
konstantin@oak.local
a1834919a9 Rudimentary part of libmysql patch:
set_mysql_error is deployed
2004-03-12 15:21:48 +03:00
monty@mysql.com
98fb8ea4c7 Merge with 3.23 to get patch for floor() 2004-03-12 01:12:14 +02:00
konstantin@oak.local
082a01d1e0 Rename:
read_statistic -> read_statistics
(statistic is adjective)
2004-03-10 20:12:24 +03:00
konstantin@mysql.com
1d624d3546 Fix for C++ style declaration 2004-03-05 19:04:59 +03:00
konstantin@mysql.com
7753c6b93e New call mysql_stmt_init() introduced.
Renames:
mysql_bind_param      -> mysql_stmt_bind_param
mysql_bind_result     -> mysql_stmt_bind_result
mysql_execute         -> mysql_stmt_execute
mysql_fetch           -> mysql_stmt_fetch
mysql_fetch_column    -> mysql_stmt_fetch_column
mysql_get_metadata    -> mysql_stmt_result_metadata
mysql_param_count     -> mysql_stmt_param_count
mysql_param_result    -> mysql_stmt_param_metadata
mysql_prepare         -> mysql_stmt_prepare
mysql_send_long_data  -> mysql_stmt_send_long_data

client_test.c cleaned up from memory leaks
2004-03-05 16:55:09 +03:00
monty@mashka.mysql.fi
1ae05760ac Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mashka.mysql.fi:/home/my/mysql-4.1
2004-02-22 11:01:28 +02:00