Commit graph

298 commits

Author SHA1 Message Date
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
konstantin@mysql.com
8b33aad4e4 A test case for Bug#6761 "mysql_list_fields doesn't work" 2005-01-12 20:28:31 +03:00
hf@deer.(none)
e5125d3e88 Fix to perform correctly with charsets in embedded server 2004-12-21 10:05:58 +04:00
konstantin@mysql.com
ba69a5b7e8 Making 4.1 tree compile with -ansi -pedantic 2004-12-16 16:16:28 +03: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
bar@mysql.com
4fa867494d bug#6275 "client_test" fail in 4.1.7 make test
bug#6911 resultset metadata always return client character set
2004-12-14 15:58:30 +04:00
sergefp@mysql.com
a7147bec84 Test for BUG#7242: Testing prepare + several times execute
(here in client_test.c because we need to check if several PS execution works and the bug shows up with binary protocol only )
2004-12-14 10:57:30 +03:00
Sinisa@sinisa.nasamreza.org
a90da35fe6 Fix for a bug #6996 2004-12-07 19:12:29 +02:00
hf@deer.(none)
71bfbbdcd0 Fixes to make mysql-test-run --embedded-server working 2004-12-02 16:08:17 +04:00
ram@gw.mysql.r18.ru
c78eefbc95 Fixes (bug #6932: 'revoke all privileges...' doesn't remove all proper columns from columns_priv
bug #6933: error in the tests/grant.pl test).
2004-12-02 13:34:30 +04: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
konstantin@mysql.com
fec630622b Some comments regarding Bug#6275 ""client_test" fail in 4.1.7 make test" 2004-11-18 23:35:45 +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
jani@ua141d10.elisa.omakaista.fi
dc6452a4d4 Code cleanup and some optimizations. 2004-11-12 19:54:25 +02:00
jani@ua141d10.elisa.omakaista.fi
340ba1cf56 Merge jamppa@bk-internal.mysql.com:/home/bk/mysql-4.1
into ua141d10.elisa.omakaista.fi:/home/my/bk/mysql-4.1
2004-11-12 18:31:11 +02:00
jani@ua141d10.elisa.omakaista.fi
379b46128f Added possibility to run only certain tests by giving the test name(s)
as argument(s) after options.

Added option -T to display all current test names.
2004-11-12 18:30:30 +02:00
monty@mysql.com
20eb74dcda Write fatal errors even if silent is used in client_test 2004-11-11 14:59:13 +02:00
monty@mysql.com
4fbf62e6c2 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/my/mysql-4.1
2004-11-08 01:15:26 +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
konstantin@mysql.com
eeeb342b3c A fix and test case for the bug reported by Reggie: if character set
of client equals to character set of connection, possibly required
conversion to character set of column is not performed
(prepared statements, data is supplied using placeholders).
2004-11-05 21:02:12 +03:00
konstantin@mysql.com
c1dc0975c6 A test case for Bug#4172 "Floating point conversion looses precision
(prepared staements)": adding the test case to close the bug
(the bug was fixed along with other conversion incompatibilities 
in 4.1.7)
2004-11-05 00:45:41 +03:00
serg@serg.mylan
4650f0acab bad automerge (?) fixed 2004-11-02 23:34:40 +01:00
monty@mysql.com
2185f1a56c Remove usage of !$ from mysql-tests
Added protocol::flush() for easier embedded-server code
Increase block allocation variables a bit as they where a bit too small for MySQL 4.1
Added option --silent to client_test
2004-11-02 20:13:27 +02: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
konstantin@mysql.com
5622920f2c Playing with test_bug5399() to make it work on HPUX 64 bit: no
reason for the failure was found, so the guess is that it is a 
compiler bug.
2004-10-26 22:42:16 +04:00
dlenev@mysql.com
fbdc20e0af Manual merge of fix for bug #6081 "Call to deprecated mysql_create_db() function crashes
server" with main tree.
2004-10-22 20:21:56 +04:00
konstantin@mysql.com
f99d6ccfd0 A test case for Bug#6046: no fix is needed (the bug is already
fixed in the main tree).
2004-10-22 15:59:59 +04:00
konstantin@mysql.com
a55e6dda22 Manual merge. 2004-10-21 18:44:40 +04:00
konstantin@mysql.com
49a58fc64e A fix and test case for bug#6059 "mysql_stmt_field_count returns
positive numbers when no resultset is available": when sending
result set metadata we need to use virtual select_result::send_fields, 
and not address protocol directly, because select_result descendents may 
intercept result set (it's the case for example for SELECT INTO OUTFILE).
2004-10-21 18:33:53 +04: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@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
dlenev@brandersnatch.localdomain
b7a957d127 Fix for bug #6081 "Call to deprecated mysql_create_db() function crashes
server".

Altough mysql_create_db()/mysql_drop_db() API calls are deprecated
since 4.0, they should not crash server and should not stall connection
in case of errors.
2004-10-17 13:59:46 +04: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
09b50375ed tests/client_test.c:
Make checks (asserts) performed in client_test.c work in non-debug
  builds.
2004-10-13 19:27:07 +04:00
kent@mysql.com
05c01360e3 Makefile.am, client_test.test, mysql-test-run.sh:
To make client_test work as mysql-test-run test case, needs to install it
2004-10-08 01:39:20 +02:00
konstantin@mysql.com
2aa7ec0d9d A fix for Bug#5748 "Prepared statement with BETWEEN and bigint values
crashes mysqld": implementation for a generic item tree modifications
registry. Every item tree modification which should be rolled back for
subsequent execution of a prepared statement or stored procedure should
be saved in the registry. All such modifications are rolled back at once
during cleanup stage of PS.
Actual fix for the bug just adds a call to register modifications to
convert_constant_item.
Post review fixes implemented.
2004-10-08 02:21:19 +04:00
kent@mysql.com
155e1ec330 client_test.test:
Run client_test as a testcase
  new file
mysql-test-run.sh:
  More clearly report failure if --force, also exit 1
client_test.c:
  Use MAXPATHLEN in test_frm_bug()
  Renable test cases disabled for running from mysql-test-run
mysqltest.c:
  Don't check errno from popen, may not be set
2004-09-28 16:27:50 +02:00
kent@mysql.com
405fdcb6dc Merge 2004-09-25 10:34:54 +02:00
kent@mysql.com
7d4445f17b client_test.c:
Return exit(1) instead of exit(0) on failure.
  Allow longer path names using MAXPATHLEN.
  Added option --testcase that skips some failing tests.
  Replaced 'return' with exit(1) in test_frm_bug().
mysqltest.c:
  Let --exec fail if command fails
2004-09-25 10:30:36 +02:00
konstantin@mysql.com
be7415c11a fix client_test to be a bit faster under valgrind. 2004-09-23 20:38:18 +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
konstantin@mysql.com
10aedc87d8 Fix the test case for bug#4231 (which before was passing just by occasion) 2004-09-15 02:43:17 +04:00
joerg@mysql.com
41aadd909d Syntax correction for bug#5560. 2004-09-14 09:46:05 +02:00
paul@kite-hub.kitebird.com
8cb8c1e15a client_test.c:
fix typos noticed while poking around in test program.
2004-09-08 20:13:27 -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
konstantin@mysql.com
3640843a8b A fix and test case for bug#5399 "Wrong statement executed by MySQL
server" (use my_charset_bin for stmt id hash).
2004-09-08 12:33:05 +04:00
monty@mysql.com
936eb4b4f4 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/my/mysql-4.1
2004-09-03 02:26:00 +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
monty@mysql.com
8547d98c88 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/my/mysql-4.1
2004-09-02 16:58:01 +03:00
monty@mysql.com
dec44916c1 After merge fixes 2004-09-02 16:57:26 +03:00
konstantin@mysql.com
3ee572768b Make client_test pass on 64-bit HP-UX11: long is 64 bit,
replace all (mis)uses of it with int32.
2004-09-01 12:50:23 +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
serg@serg.mylan
08f3ba0e29 after merge 2004-08-26 18:22:22 +02:00
konstantin@mysql.com
f8c0850521 Cleanup in libmysql. 2004-08-05 02:43:18 -07:00
konstantin@mysql.com
354e2ba67b Type of MYSQL_BIND::buffer changed to void * 2004-06-25 17:04:33 +04:00
konstantin@mysql.com
674a1c4e18 - fixed test_frm_bug test to work with increased number of columns in
result of SHOW TABLE STATUS
2004-06-24 20:08:42 +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
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
konstantin@mysql.com
02c654d218 - automatic dependency tracking for client_test enabled 2004-06-22 14:47:41 +04:00
konstantin@mysql.com
3f53a1cb44 Fix for bug#4236 "Server crash on attempt to execute non-prepared
statement": check that statement is not null when accessing it's name.
2004-06-22 11:04:41 +04:00
konstantin@mysql.com
e7de488713 Compilation error on AIX (IBM C Compiler Version 6) fixed. 2004-06-16 11: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
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
21783e8537 Few more cleanups in client_test:
No need for mysql_commit, especially after DDL statements.
2004-06-05 03:09:53 +04:00
konstantin@mysql.com
1ae0504c6a The comment is not true any more.
Is there a way to sefely use MYSQL_BIND structure without bzero?
2004-06-05 02:56:50 +04:00
konstantin@mysql.com
7d09dd999a HAVE_DEPRECATED_411_API macro removed. 2004-06-04 18:38:18 +04:00
konstantin@mysql.com
eaa4d106e6 Fix for Bug#3796 "Prepared statement, select concat(<parameter>,<column>), wrong
result": new Item_param member for use in val_str()
2004-05-31 14:21:48 +04: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
bell@sanja.is.com.ua
329ac02441 assigning max_length parameter for Item_param (Bug #3811) 2004-05-20 19:08:34 +03:00
hf@deer.(none)
af39bd4125 Merge abotchkov@bk-internal.mysql.com:/home/bk/mysql-4.1
into deer.(none):/home/hf/work/mysql-4.1.ps
2004-05-19 10:28:24 +05:00
monty@mysql.com
21f1bca789 Portability fixes
Fixed wrong number of warnings/duplicates for machines with high-byte-first
2004-05-19 05:09:10 +03:00
hf@deer.(none)
bbfe390afd Merge abotchkov@bk-internal.mysql.com:/home/bk/mysql-4.1
into deer.(none):/home/hf/work/mysql-4.1.ps
2004-05-17 18:45:50 +05:00
hf@deer.(none)
e18cd2ea9f Fixes for #3371, #3372, #3374, #3375, #3376 2004-05-15 17:07:44 +05:00
monty@mysql.com
e0a4b51215 Better fix for bug #3749 (bug in deleting automatic generated foreign keys) 2004-05-15 11:57:40 +03:00
bell@sanja.is.com.ua
a00117902f treat parameter as constant in ORDER BY check of fields in SELECT list(Bug #3686) 2004-05-10 13:29:02 +03:00
konstantin@mysql.com
b58df2e9d4 mysql_stmt_reset now expects ok/error packet from server. 2004-05-06 22:44:00 +04:00
konstantin@mysql.com
57feb6625a Few cleanups to client_test.c 2004-05-06 13:49:20 +04:00
monty@mysql.com
104fdf607d Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/my/mysql-4.1
2004-05-05 12:40:59 +03:00
dlenev@brandersnatch.localdomain
f1c8e165a5 After merge fix.
Now test_bug1664() uses new statement checking macros.
2004-05-04 20:02:55 +04:00
dlenev@brandersnatch.localdomain
2c30359aa4 Manual merge of bugfix for Bug #1664. 2004-05-04 19:13:18 +04:00
dlenev@brandersnatch.localdomain
c7fbcbca7a Fix for remaining issues described in Bug #1664
"mysql_send_long_data() API call is completely broken".

Now we are resetting some members (long_data_supplied/null_value...) of Item_param to its 
initial state after each execution of prepared statement. We also manipulating 
Item_param::maybe_null/null_value only via Item_param::set_* setters which makes code a bit 
more robust.
2004-05-04 19:08:19 +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
bell@sanja.is.com.ua
66e7ff2a8c return table list of fake_select in empty state to prevent using TABLE_LIST allocated on stack in next execution of PS (Bug #3577) 2004-05-03 13:58:01 +03:00
sergefp@mysql.com
6475db534c Fix client_test to use new statement assertion macros 2004-04-30 17:21:06 +04:00
sergefp@mysql.com
d854a85f0c Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/dbdata/psergey/mysql-4.1-bug3420
2004-04-30 16:28:04 +04:00
sergefp@mysql.com
448e4bbdde Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/dbdata/psergey/mysql-4.1-bug3420
2004-04-30 15:32:41 +04: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
sergefp@mysql.com
40ac433e4b Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/dbdata/psergey/mysql-4.1-my-ps-bugs
2004-04-30 00:00:54 +04:00
sergefp@mysql.com
b8802c514d Fix for BUG#3567: Disallow several SQL statements inside a Prepared Statement. 2004-04-27 03:44:41 +04:00
sergefp@mysql.com
baa85a2e05 Fixed client_test to run with MAX_KEY=64. 2004-04-27 02:57:00 +04:00
sergefp@mysql.com
a2a7eb2e74 Testcase for BUG#3420. The bug itself has been fixed by some previous PS code changes made since 4.1.1a 2004-04-14 01:42:01 +04:00
sergefp@mysql.com
5e22d6cbfc Fix and testcase for BUG#3367. 2004-04-13 00:13:25 +04:00
bell@sanja.is.com.ua
0d773f29de complex join example for test suite 2004-04-09 10:30:07 +03:00
bell@sanja.is.com.ua
ef5f15c351 fixed subquery in the FROM clause with parameter (BUG#3020) 2004-04-08 23:28:47 +03:00