Commit graph

841 commits

Author SHA1 Message Date
davi@moksha.com.br
26f03b0bc6 Merge moksha.local:/Users/davi/mysql/bugs/31669-5.0
into  moksha.local:/Users/davi/mysql/mysql-5.0-runtime
2007-10-30 09:41:24 -03:00
gluh@eagle.(none)
17acda6ca8 Merge mysql.com:/home/gluh/MySQL/Merge/5.1
into  mysql.com:/home/gluh/MySQL/Merge/5.1-opt
2007-10-23 19:08:21 +05:00
gluh@eagle.(none)
237383f0fe Merge mysql.com:/home/gluh/MySQL/Merge/5.0
into  mysql.com:/home/gluh/MySQL/Merge/5.0-opt
2007-10-23 18:51:43 +05:00
davi@moksha.local/moksha.com.br
dac55f09f0 Bug#31669 Buffer overflow in mysql_change_user()
The problem is that when copying the supplied username and
database, no bounds checking is performed on the fixed-length
buffer. A sufficiently large (> 512) user string can easily
cause stack corruption. Since this API can be used from PHP
and other programs, this is a serious problem.

The solution is to increase the buffer size to the accepted
size in similar functions and perform bounds checking when
copying the username and database.
2007-10-23 09:05:39 -03:00
serg@janus.mylan
f86510e45e Merge bk-internal.mysql.com:/home/bk/mysql-5.1
into  janus.mylan:/usr/home/serg/Abk/mysql-5.1
2007-10-22 20:05:06 +02:00
serg@janus.mylan
6463d82d1b Merge bk-internal.mysql.com:/home/bk/mysql-5.1
into  janus.mylan:/usr/home/serg/Abk/mysql-5.1
2007-10-19 12:44:57 +02:00
malff@lambda.hsd1.co.comcast.net.
2d6fbbda59 Merge lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.1-base
into  lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.1-rt-merge
2007-10-18 16:57:51 -06:00
serg@janus.mylan
633b6e392a tests/mysql_client_test.c: typo fixed 2007-10-16 13:20:08 +02:00
anozdrin/alik@station.
7237c31698 A patch for BUG#31418: User locks misfunctioning after
mysql_change_user().

The problem was that THD::ull was not reset in THD::cleanup().

The fix is to reset it.
2007-10-11 17:11:12 +04:00
anozdrin/alik@station.
ac83b3122c Fix for BUG#20023: mysql_change_user() resets the value
of SQL_BIG_SELECTS.

The bug was that SQL_BIG_SELECTS was not properly set
in COM_CHANGE_USER.

The fix is to update SQL_BIG_SELECTS properly.
2007-10-10 17:57:01 +04:00
gluh@eagle.(none)
16c07b16fe Merge sgluhov@bk-internal.mysql.com:/home/bk/mysql-5.1-opt
into  mysql.com:/home/gluh/MySQL/Merge/5.1-opt
2007-10-04 17:13:57 +05:00
gluh@eagle.(none)
53fa81ac03 Merge mysql.com:/home/gluh/MySQL/Merge/5.0-opt
into  mysql.com:/home/gluh/MySQL/Merge/5.1-opt
2007-10-04 14:23:55 +05:00
gkodinov/kgeorge@magare.gmz
61085ae612 merge 5.0-opt -> 5.1-opt 2007-10-01 12:56:25 +03:00
evgen@moonbone.local
77dabba63f Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  moonbone.local:/work/27990-bug-5.0-opt-mysql
2007-09-28 23:27:23 +00:00
evgen@moonbone.local
b9e81c2ae3 Bug#27990: Wrong info in MYSQL_FIELD struct members when a tmp table was used.
The change_to_use_tmp_fields function leaves the orig_table member of an
expression's tmp table field filled for the new Item_field being created.
Later orig_table is used by the Field::make_field function to provide some
info about original table and field name to a user. This is ok for a field
but for an expression it should be empty.

The change_to_use_tmp_fields function now resets orig_table member of
an expression's tmp table field to prevent providing a wrong info to a user.
The Field::make_field function now resets the table_name and the org_col_name
variables when the orig_table is set to 0.
2007-09-28 23:24:40 +00:00
anozdrin/alik@station.
8051b7568d Patch for BUG#30472: libmysql doesn't reset charset,
insert_id after succ. mysql_change_user() call.

See also WL 4066.
  
This bug reveals two problems:
  - the problem on the client side which was described originally;
  - the problem in protocol / the server side: connection context
    on client and server should be like after mysql_real_connect()
    and be consistent. The server however just resets character
    set variables to the global defaults.

The fix seems to be as follows:
  - extend the protocol so that the client be able to send
    character set information in COM_CHANGE_USER command;
  - change the server so that it understands client character set
    in the command;
  - change the client:
    - reset character set to the default value (which has been
      read from the configuration);
    - send character set in COM_CHANGE_USER command.
2007-09-28 23:30:54 +04:00
anozdrin/alik@station.
e452c06438 Prerequisite patch for BUG#30472: libmysql doesn't reset charset,
insert_id after succ. mysql_change_user() call.

Supply a correct packet length to dispatch command.
2007-09-28 15:42:37 +04:00
tnurnberg@sin.intern.azundris.com
f3b1822c7a Merge tnurnberg@bk-internal.mysql.com:/home/bk/mysql-5.1-maint
into  mysql.com:/home/tnurnberg/15327/51-15327
2007-09-15 05:12:02 +02:00
tnurnberg@sin.intern.azundris.com
7451aaf48c Merge tnurnberg@bk-internal.mysql.com:/home/bk/mysql-5.0-maint
into  mysql.com:/home/tnurnberg/15327/50-15327
2007-09-15 04:45:20 +02:00
tnurnberg@sin.intern.azundris.com
d5174aad89 Merge mysql.com:/home/tnurnberg/15327/50-15327
into  mysql.com:/home/tnurnberg/15327/51-15327
2007-09-15 04:09:38 +02:00
tnurnberg@mysql.com/sin.intern.azundris.com
3c6ca8d6ed Bug #15327: configure: --with-tcp-port option being partially ignored
make sure that if builder configured with a non-standard (!= 3306)
default TCP port that value actually gets used throughout. if they
didn't configure a value, assume "use a sensible default", which
will be read from /etc/services or, failing that, from the factory
default. That makes the order of preference
- command-line option
- my.cnf, where applicable
- $MYSQL_TCP_PORT environment variable
- /etc/services (unless configured --with-tcp-port)
- default port (--with-tcp-port=... or factory default)
2007-09-13 16:19:46 +02:00
jani@a88-113-38-195.elisa-laajakaista.fi
b25dacbdee Merge a88-113-38-195.elisa-laajakaista.fi:/home/my/bk/mysql-5.1-main
into  a88-113-38-195.elisa-laajakaista.fi:/home/my/bk/mysql-5.1-marvel
2007-08-24 15:25:02 +03:00
df@pippilotta.erinye.com
6d068a5ac7 Merge dfischer@bk-internal.mysql.com:/home/bk/mysql-5.1-build
into  pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.1-build
2007-08-24 10:13:03 +02:00
igor@olga.mysql.com
37f3a92a42 Post-merge fix. 2007-08-16 19:27:44 -07:00
evgen@moonbone.local
222fddcb79 mysql_client_test.c:
Post fix for the bug#29948.
2007-08-15 18:21:58 +04:00
evgen@moonbone.local
1cc8f0e383 Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  moonbone.local:/mnt/gentoo64/work/29948-bug-5.0-opt-mysql
2007-08-14 18:16:34 +04:00
evgen@moonbone.local
4bc4d834fd Bug#29948: Unchecked NULL pointer caused server crash.
The cli_read_binary_rows function is used to fetch data from the server
after a prepared statement execution. It accepts a statement handler and gets
the connection handler from it. But when the auto-reconnect option is set
the connection handler is reset to NULL after reconnection because the
prepared statement is lost and the handler became useless. This case
wasn't checked in the cli_read_binary_rows function and caused server crash.

Now the cli_read_binary_rows function checks the connection handler to be
not NULL and returns an error if it is.
2007-08-14 17:28:51 +04:00
monty@narttu.mysql.fi
9d609a59fd Merge bk-internal.mysql.com:/home/bk/mysql-5.1
into  mysql.com:/home/my/mysql-5.1
2007-08-14 00:22:34 +03:00
monty@mysql.com/nosik.monty.fi
e53a73e26c Fixed a lot of compiler warnings and errors detected by Forte C++ on Solaris
Faster thr_alarm()
Added 'Opened_files' status variable to track calls to my_open()
Don't give warnings when running mysql_install_db
Added option --source-install to mysql_install_db

I had to do the following renames() as used polymorphism didn't work with Forte compiler on 64 bit systems
index_read()      -> index_read_map()
index_read_idx()  -> index_read_idx_map()
index_read_last() -> index_read_last_map()
2007-08-13 16:11:25 +03:00
kostja@bodhi.(none)
b4eb961fef Merge bodhi.(none):/opt/local/work/mysql-5.0-runtime
into  bodhi.(none):/opt/local/work/mysql-5.1-runtime
2007-08-08 11:45:13 +04:00
kostja@bodhi.(none)
3c6eb0002d Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  bodhi.(none):/opt/local/work/mysql-5.0-runtime
2007-08-08 11:34:35 +04:00
kostja@bodhi.(none)
ec5464d2e0 A fix and a test case for Bug#29306 "Truncated data in MS Access with decimal (3,1) columns in a
VIEW".

mysql_list_fields() C API function would incorrectly set MYSQL_FIELD::decimals
member for some view columns.

The problem was in an incomplete implementation of 
Item_ident_for_show::make_field(), which is responsible for view
columns metadata.
2007-08-06 14:22:24 +04:00
joerg@trift2.
7ddc8c35b2 Merge jbruehe@bk-internal.mysql.com:/home/bk/mysql-5.1-build
into  trift2.:/MySQL/M51/push-5.1
2007-08-02 21:18:24 +02:00
joerg@trift2.
c9e9d735af Merge trift2.:/MySQL/M51/bug29982-5.1
into  trift2.:/MySQL/M51/push-5.1
2007-08-02 20:19:21 +02:00
kent@kent-amd64.(none)
b976f18c1b Merge kboortz@bk-internal.mysql.com:/home/bk/mysql-5.0-build
into  mysql.com:/home/kent/bk/cmake-tls/mysql-5.0-build
2007-08-02 15:39:34 +02:00
kent@mysql.com/kent-amd64.(none)
74267ad9b8 CMakeLists.txt (several), make_win_bin_dist:
Aligned client library build and use with the Unix version when it
  comes to what source to include directly in the builds, and what
  libraries to link with (bug#30118).

  Also reviewed, corrected and made more clear when static or dynamic
  Thread Local Storage is to be used. Some code duplication was removed,
  and some redundant library usage were removed, reducing the risk of
  incorrect TLS usage.
2007-08-02 12:49:27 +02:00
joerg@trift2.
22d445ee70 Fix a bad BitKeeper dependency structure for the "CMakeLists.txt" files.
They had been introduced in 5.1 and were only later backported to 5.0;
as a consequence, the files in the 5.1 tree do not depend on the 5.0 ones,
and changes in 5.0 do not propagate into the 5.1 files.

To fix this, the (previous) files in 5.1 now are deleted ("bk rm"),
and the previously deleted files depending on 5.0 are now moved to the 
respective source directories ("bk mv").
The current 5.1 contents is restored in these files.

If you need the previous history of the 5.1 files ("bk revtool"),
access those in "BitKeeper/deleted".

Contrary to the original plan, I did not introduce the name
"CMakeLists.historic" - mostly in order not to clutter the source tree.

This fixes bug#29982.
2007-07-31 19:35:13 +02:00
antony@pcg5ppc.xiphis.org
e894244733 Merge pcg5ppc.xiphis.org:/private/Network/Servers/anubis.xiphis.org/home/antony/work/p2-bug25714.1.merge-5.0
into  pcg5ppc.xiphis.org:/private/Network/Servers/anubis.xiphis.org/home/antony/work/p2-bug25714.1.merge-5.1
2007-07-24 10:54:12 -07:00
antony@pcg5ppc.xiphis.org
3f06084e7f fix compile on Windows for bug25714.c
---
fix compile on Windows for bug25714.c
2007-07-24 10:50:28 -07:00
antony@pcg5ppc.xiphis.org
1bddf38d93 build bug25714 test app on Windows 2007-07-24 09:36:56 -07:00
antony@pcg5ppc.xiphis.org
c42837a232 build bug25714 test app on Windows 2007-07-24 09:32:51 -07:00
acurtis/antony@ltamd64.xiphis.org
f736a40f82 Merge xiphis.org:/anubis/antony/work/p2-bug25714.1
into  xiphis.org:/anubis/antony/work/p2-bug25714.1.merge-5.1
2007-07-24 00:03:01 -07:00
antony@pcg5ppc.xiphis.org
6b38c5b762 Bug#25714
"getGeneratedKeys() does not work with FEDERATED table"
  mysql_insert() expected the storage engine to update the row data
  during the write_row() operation with the value of the new auto-
  increment field. The field must be updated when only one row has
  been inserted as mysql_insert() would ignore the thd->last_insert.
  This patch implements HA_STATUS_AUTO support in ha_federated::info()
  and ensures that ha_federated::write_row() does update the row's
  auto-increment value.
  The test case was written in C as the protocol's 'id' value is
  accessible through libmysqlclient and not via SQL statements.
  mysql-test-run.pl was extended to enable running the test binary.
2007-07-23 23:35:43 -07:00
gshchepa/uchum@gleb.loc
95d43074cc Merge gleb.loc:/home/uchum/work/bk/5.1
into  gleb.loc:/home/uchum/work/bk/5.1-opt
2007-07-20 04:21:46 +05:00
holyfoot/hf@mysql.com/hfmain.(none)
c4b12955b3 mysql_client_test fixed 2007-07-20 00:04:30 +05:00
holyfoot/hf@mysql.com/hfmain.(none)
d0272fe1d5 test case for memory leak added 2007-07-19 20:59:11 +05:00
dkatz@damien-katzs-computer.local
639fd4c555 Bug #29692 Single row inserts can incorrectly report a huge number of row insertions
This bug was caused by unitialized value that was the result of a bad 5.0 merge.
2007-07-16 14:53:05 -04:00
kostja@bodhi.(none)
7ce3cada45 Merge bodhi.(none):/opt/local/work/mysql-5.0-runtime
into  bodhi.(none):/opt/local/work/mysql-5.1-runtime
2007-07-02 01:55:01 +04:00
anozdrin/alik@ibm.
6eb17c289a Follow up to the patch for the BUG#10491. 2007-06-29 17:37:17 +04:00
kostja@bodhi.(none)
7758a5de33 Enable the disabled test case for Bug#28075 (pushbuild by now
should be fixed).
2007-06-20 19:14:59 +04:00
kostja@bodhi.(none)
72ff5488be Merge bodhi.(none):/opt/local/work/mysql-5.0-runtime
into  bodhi.(none):/opt/local/work/mysql-5.1-runtime
2007-06-20 19:05:38 +04:00
malff/marcsql@weblab.(none)
381deba387 Manual merge 2007-06-15 15:38:25 -06:00
malff/marcsql@weblab.(none)
e20232cf63 manual merge 2007-06-15 10:59:40 -06:00
gkodinov/kgeorge@magare.gmz
16a7a45bdc Merge magare.gmz:/home/kgeorge/mysql/work/valgrind-errs-5.0-opt
into  magare.gmz:/home/kgeorge/mysql/work/valgrind-errs-5.1-opt
2007-06-14 16:52:30 +03:00
gkodinov/kgeorge@magare.gmz
78f477c9d9 corrected valgrind problems for bug 28505 and 28934 2007-06-14 15:38:52 +03:00
gkodinov/kgeorge@magare.gmz
fbefe9d552 Merge bk-internal:/home/bk/mysql-5.0-opt
into  magare.gmz:/home/kgeorge/mysql/work/merge-5.1-opt
2007-06-12 16:34:54 +03:00
gkodinov/kgeorge@magare.gmz
2a6ac40e11 removed compilation warning 2007-06-12 14:45:30 +03:00
gkodinov/kgeorge@magare.gmz
b9876c6e9c Bug #28934: server crash when receiving malformed com_execute packets
Sometimes a parameter slot may not get a value because of the protocol
 data being plain wrong.
 Such cases should be detected and handled by returning an error.
 Fixed by checking data stream constraints where possible (like maximum
 length) and reacting to the case where a value cannot be constructed.
2007-06-12 11:02:34 +03:00
evgen@moonbone.local
a52c981d6a Merge moonbone.local:/mnt/gentoo64/work/test-5.0-opt-mysql
into  moonbone.local:/mnt/gentoo64/work/test-5.1-opt-mysql
2007-06-11 00:16:00 +04:00
evgen@moonbone.local
b90901130e Bug#28505: mysql_affected_rows() may return wrong result if CLIENT_FOUND_ROWS
flag is set.

When the CLIENT_FOUND_ROWS flag is set then the server should return
found number of rows independently whether they were updated or not.
But this wasn't the case for the INSERT statement which always returned
number of rows that were actually changed thus providing wrong info to
the user.

Now the select_insert::send_eof method and the mysql_insert function
are sending the number of touched rows if the CLIENT_FOUND_ROWS flag is set.
2007-06-07 00:30:00 +04:00
kostja@bodhi.(none)
16633169e4 Merge bk-internal.mysql.com:/home/bk/mysql-5.1
into  bodhi.(none):/opt/local/work/mysql-5.1-runtime
2007-06-01 12:12:06 +04:00
malff/marcsql@weblab.(none)
e8fec66e9e Manual merge 2007-05-29 14:52:17 -06:00
thek@adventure.(none)
7fc2ddbf22 Undefined unused function causing red in PushBuild. 2007-05-29 15:05:35 +02:00
thek@adventure.(none)
343a9db45d Removed broken test from list of test to execute.
To be restored when PB is patched to ignore 
requested safemalloc memory dumps.
2007-05-29 13:37:38 +02:00
malff/marcsql@weblab.(none)
88e3abf5ef Bug#27876 (SF with cyrillic variable name fails during execution (regression))
The root cause of this bug is related to the function skip_rear_comments,
in sql_lex.cc

Recent code changes in skip_rear_comments changed the prototype from
"const uchar*" to "const char*", which had an unforseen impact on this test:
  (endp[-1] < ' ')
With unsigned characters, this code filters bytes of value [0x00 - 0x20]
With *signed* characters, this also filters bytes of value [0x80 - 0xFF].

This caused the regression reported, considering cyrillic characters in the
parameter name to be whitespace, and truncated.
Note that the regression is present both in 5.0 and 5.1.

With this fix:
- [0x80 - 0xFF] bytes are no longer considered whitespace.
This alone fixes the regression.

In addition, filtering [0x00 - 0x20] was found bogus and abusive,
so that the code now filters uses my_isspace when looking for whitespace.

Note that this fix is only addressing the regression affecting UTF-8
in general, but does not address a more fundamental problem with
skip_rear_comments: parsing a string *backwards*, starting at end[-1],
is not safe with multi-bytes characters, so that end[-1] can confuse the
last byte of a multi-byte characters with a characters to filter out.

The only known impact of this remaining issue affects objects that have to
meet all the conditions below:

- the object is a FUNCTION / PROCEDURE / TRIGGER / EVENT / VIEW
- the body consist of only *1* instruction, and does *not* contain a
  BEGIN-END block
- the instruction ends, lexically, with <ident> <whitespace>* ';'?
  For example, "select <ident>;" or "return <ident>;"
- The last character of <ident> is a multi-byte character
- the last byte of this character is ';' '*', '/' or whitespace

In this case, the body of the object will be truncated after parsing,
and stored in an invalid format.

This last issue has not been fixed in this patch, since the real fix
will be implemented by Bug 25411 (trigger code truncated), which is caused
by the very same code.
The real problem is that the function skip_rear_comments is only a
work-around, and should be removed entirely: see the proposed patch for
bug 25411 for details.
2007-05-25 14:36:01 -06:00
mleich@four.local.lan
1ce2e5c712 This changeset belongs to the fix of Bug#735 Prepared Statements: there is no support for Query Cache
- Create "--ps-protocol" and no "--<whatever>-protocol" variants of the former tests
  t/grant_cache.test and t/query_cache_sql_prepare.test.
- Some additional subtest and fixes of bugs
- Minor improvements
2007-05-24 22:13:49 +02:00
malff/marcsql@weblab.(none)
d82bed47a7 build break cleanup 2007-05-22 16:19:36 -06:00
andrey@whirlpool.mysql.com
ed4144e528 Test case for bug#28075 2007-05-22 18:18:39 +02:00
monty@mysql.com/narttu.mysql.fi
088e2395f1 WL#3817: Simplify string / memory area types and make things more consistent (first part)
The following type conversions was done:

- Changed byte to uchar
- Changed gptr to uchar*
- Change my_string to char *
- Change my_size_t to size_t
- Change size_s to size_t

Removed declaration of byte, gptr, my_string, my_size_t and size_s. 

Following function parameter changes was done:
- All string functions in mysys/strings was changed to use size_t
  instead of uint for string lengths.
- All read()/write() functions changed to use size_t (including vio).
- All protocoll functions changed to use size_t instead of uint
- Functions that used a pointer to a string length was changed to use size_t*
- Changed malloc(), free() and related functions from using gptr to use void *
  as this requires fewer casts in the code and is more in line with how the
  standard functions work.
- Added extra length argument to dirname_part() to return the length of the
  created string.
- Changed (at least) following functions to take uchar* as argument:
  - db_dump()
  - my_net_write()
  - net_write_command()
  - net_store_data()
  - DBUG_DUMP()
  - decimal2bin() & bin2decimal()
- Changed my_compress() and my_uncompress() to use size_t. Changed one
  argument to my_uncompress() from a pointer to a value as we only return
  one value (makes function easier to use).
- Changed type of 'pack_data' argument to packfrm() to avoid casts.
- Changed in readfrm() and writefrom(), ha_discover and handler::discover()
  the type for argument 'frmdata' to uchar** to avoid casts.
- Changed most Field functions to use uchar* instead of char* (reduced a lot of
  casts).
- Changed field->val_xxx(xxx, new_ptr) to take const pointers.

Other changes:
- Removed a lot of not needed casts
- Added a few new cast required by other changes
- Added some cast to my_multi_malloc() arguments for safety (as string lengths
  needs to be uint, not size_t).
- Fixed all calls to hash-get-key functions to use size_t*. (Needed to be done
  explicitely as this conflict was often hided by casting the function to
  hash_get_key).
- Changed some buffers to memory regions to uchar* to avoid casts.
- Changed some string lengths from uint to size_t.
- Changed field->ptr to be uchar* instead of char*. This allowed us to
  get rid of a lot of casts.
- Some changes from true -> TRUE, false -> FALSE, unsigned char -> uchar
- Include zlib.h in some files as we needed declaration of crc32()
- Changed MY_FILE_ERROR to be (size_t) -1.
- Changed many variables to hold the result of my_read() / my_write() to be
  size_t. This was needed to properly detect errors (which are
  returned as (size_t) -1).
- Removed some very old VMS code
- Changed packfrm()/unpackfrm() to not be depending on uint size
  (portability fix)
- Removed windows specific code to restore cursor position as this
  causes slowdown on windows and we should not mix read() and pread()
  calls anyway as this is not thread safe. Updated function comment to
  reflect this. Changed function that depended on original behavior of
  my_pwrite() to itself restore the cursor position (one such case).
- Added some missing checking of return value of malloc().
- Changed definition of MOD_PAD_CHAR_TO_FULL_LENGTH to avoid 'long' overflow.
- Changed type of table_def::m_size from my_size_t to ulong to reflect that
  m_size is the number of elements in the array, not a string/memory
  length.
- Moved THD::max_row_length() to table.cc (as it's not depending on THD).
  Inlined max_row_length_blob() into this function.
- More function comments
- Fixed some compiler warnings when compiled without partitions.
- Removed setting of LEX_STRING() arguments in declaration (portability fix).
- Some trivial indentation/variable name changes.
- Some trivial code simplifications:
  - Replaced some calls to alloc_root + memcpy to use
    strmake_root()/strdup_root().
  - Changed some calls from memdup() to strmake() (Safety fix)
  - Simpler loops in client-simple.c
2007-05-10 12:59:39 +03:00
holyfoot/hf@hfmain.(none)
e0b6a9baa0 Merge bk@192.168.21.1:mysql-5.1
into  mysql.com:/d2/hf/mrg/mysql-5.1-opt
2007-04-29 18:52:14 +05:00
holyfoot/hf@mysql.com/hfmain.(none)
e2f6bd86b4 Merge bk@192.168.21.1:mysql-5.0
into  mysql.com:/d2/hf/mrg/mysql-5.0-opt
2007-04-29 18:42:50 +05:00
holyfoot/hf@hfmain.(none)
2fcebef31f Merge mysql.com:/d2/hf/mrg/mysql-5.0-opt
into  mysql.com:/d2/hf/mrg/mysql-5.1-opt
2007-04-29 13:19:32 +05:00
evgen@sunlight.local
4b5c387f5d Additional fix for the bug#27590. 2007-04-28 00:04:50 +04:00
evgen@moonbone.local
4747fa0c03 Bug#27590: Wrong DATE/DATETIME comparison.
DATE and DATETIME can be compared either as strings or as int. Both
methods have their disadvantages. Strings can contain valid DATETIME value
but have insignificant zeros omitted thus became non-comparable with
other DATETIME strings. The comparison as int usually will require conversion
from the string representation and the automatic conversion in most cases is
carried out in a wrong way thus producing wrong comparison result. Another
problem occurs when one tries to compare DATE field with a DATETIME constant.
The constant is converted to DATE losing its precision i.e. losing time part.

This fix addresses the problems described above by adding a special
DATE/DATETIME comparator. The comparator correctly converts DATE/DATETIME
string values to int when it's necessary, adds zero time part (00:00:00)
to DATE values to compare them correctly to DATETIME values. Due to correct
conversion malformed DATETIME string values are correctly compared to other
DATE/DATETIME values.

As of this patch a DATE value equals to DATETIME value with zero time part.
For example '2001-01-01' equals to '2001-01-01 00:00:00'.

The compare_datetime() function is added to the Arg_comparator class.
It implements the correct comparator for DATE/DATETIME values.
Two supplementary functions called get_date_from_str() and get_datetime_value()
are added. The first one extracts DATE/DATETIME value from a string and the
second one retrieves the correct DATE/DATETIME value from an item.
The new Arg_comparator::can_compare_as_dates() function is added and used
to check whether two given items can be compared by the compare_datetime()
comparator.
Two caching variables were added to the Arg_comparator class to speedup the
DATE/DATETIME comparison.
One more store() method was added to the Item_cache_int class to cache int
values.
The new is_datetime() function was added to the Item class. It indicates
whether the item returns a DATE/DATETIME value.
2007-04-27 00:12:09 +04:00
msvensson@pilot.blaudden
b941ef8633 Merge pilot.blaudden:/home/msvensson/mysql/mysql-5.0-maint
into  pilot.blaudden:/home/msvensson/mysql/mysql-5.1-maint
2007-04-23 13:28:09 +02:00
msvensson@pilot.blaudden
10181a7fa7 Fix warnings reported by icc 2007-04-23 12:02:58 +02:00
monty@mysql.com/narttu.mysql.fi
6e8b72a6bb Added more descriptive error message of why statement was automaticly dropped
Print information if net_clear() skipped bytes (As this otherwise hides critical timeing bugs)
Added DBUG_ASSERT if we get packets out of order
mysql_change_user() could on error send multiple packets, which caused mysql_client_test to randomly fail
2007-04-13 01:56:22 +03:00
gluh@mysql.com/eagle.(none)
2d47f0cb1b Bug#21432 Database/Table name limited to 64 bytes, not chars, problems with multi-byte 2007-04-03 16:13:27 +05:00
tsmith@quadxeon.mysql.com
54e7bc8daa Merge tsmith@bk-internal.mysql.com:/home/bk/mysql-5.1
into  quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/maint/51
2007-03-22 01:04:39 +01:00
msvensson@pilot.blaudden
709f066948 Merge pilot.blaudden:/home/msvensson/mysql/mysql-5.0-maint
into  pilot.blaudden:/home/msvensson/mysql/mysql-5.1-maint
2007-03-19 11:15:59 +01:00
msvensson@pilot.blaudden
e182572212 Remove test/udf_test and test/udf_test.res, since udf's are nowadays
tested by mysql-test-run.pl
2007-03-15 15:52:04 +01:00
guilhem@gbichot3.local
eaf7728d9f Fix for BUG#735 "Prepared Statements: there is no support for Query
Cache".
WL#1569 "Prepared Statements: implement support of Query Cache".
Prepared SELECTs did not look up in the query cache, and their results
were not stored in the query cache. This made them slower than
non-prepared SELECTs in some cases.
The fix is to re-use the expanded query (the prepared query where
"?" placeholders are replaced by their values, at execution time)
for searching/storing in the query cache.
It works fine for statements prepared via mysql_stmt_prepare(), which
are the most commonly used and were the scope of this bugfix and WL.
It works less fine for statements prepared via the SQL command
PREPARE...FROM, which are still not using the query cache if they
have at least one parameter (because then the expanded query contains
names of user variables, and user variables don't work with the
query cache, even in non-prepared queries).
Note that results from prepared SELECTs, which are in the binary
protocol, and results from normal SELECTs, which are in the text
protocol, ignore each other in the query cache, because a result in the
binary protocol should never be served to a SELECT expecting the text
protocol and vice-versa.
Note, after this patch, bug 25843 starts applying to query cache
("changing default database between PREPARE and EXECUTE of statement
breaks binlog"), we need to fix it.
2007-03-09 18:09:57 +01:00
monty@mysql.com/narttu.mysql.fi
f0ae3ce9b9 Fixed compiler warnings
Fixed compile-pentium64 scripts
Fixed wrong estimate of update_with_key_prefix in sql-bench
Merge bk-internal.mysql.com:/home/bk/mysql-5.1 into mysql.com:/home/my/mysql-5.1
Fixed unsafe define of uint4korr()
Fixed that --extern works with mysql-test-run.pl
Small trivial cleanups
This also fixes a bug in counting number of rows that are updated when we have many simultanous queries
Move all connection handling and command exectuion main loop from sql_parse.cc to sql_connection.cc
Split handle_one_connection() into reusable sub functions.
Split create_new_thread() into reusable sub functions.
Added thread_scheduler; Preliminary interface code for future thread_handling code.

Use 'my_thread_id' for internal thread id's
Make thr_alarm_kill() to depend on thread_id instead of thread
Make thr_abort_locks_for_thread() depend on thread_id instead of thread
In store_globals(), set my_thread_var->id to be thd->thread_id.
Use my_thread_var->id as basis for my_thread_name()
The above changes makes the connection we have between THD and threads more soft.

Added a lot of DBUG_PRINT() and DBUG_ASSERT() functions
Fixed compiler warnings
Fixed core dumps when running with --debug
Removed setting of signal masks (was never used)
Made event code call pthread_exit() (portability fix)
Fixed that event code doesn't call DBUG_xxx functions before my_thread_init() is called.
Made handling of thread_id and thd->variables.pseudo_thread_id uniform.
Removed one common 'not freed memory' warning from mysqltest
Fixed a couple of usage of not initialized warnings (unlikely cases)
Suppress compiler warnings from bdb and (for the moment) warnings from ndb
2007-02-23 13:13:55 +02:00
monty@narttu.mysql.fi
8a80e36ac3 Merge mysql.com:/home/my/mysql-5.0
into  mysql.com:/home/my/mysql-5.1
Merge of 'remove compiler warnings when using -Wshadow'
2007-01-27 03:46:45 +02:00
monty@mysql.com/narttu.mysql.fi
a04157fbb3 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/home/my/mysql-5.0
2007-01-22 14:04:40 +02:00
msvensson@pilot.mysql.com
4dbfac2a5c Merge pilot.mysql.com:/home/msvensson/mysql/mysql-5.0-maint
into  pilot.mysql.com:/home/msvensson/mysql/mysql-5.1-new-maint
2007-01-19 11:12:24 +01:00
msvensson@pilot.mysql.com
2c60829f3b Bug #15518 Reusing a stmt that has failed during prepare does not clear error
- Additional patch removing check for mysql_errno on already closed
   mysql1
2007-01-19 11:07:20 +01:00
tsmith@siva.hindu.god
94f7990ef8 Merge siva.hindu.god:/home/tsmith/m/bk/mrg-jan17/maint/50
into  siva.hindu.god:/home/tsmith/m/bk/mrg-jan17/maint/51
2007-01-18 08:41:52 -07:00
msvensson@pilot.mysql.com
d18e98929c Merge 192.168.0.10:mysql/mysql-5.0-maint
into  pilot.mysql.com:/home/msvensson/mysql/mysql-5.0-maint
2007-01-17 13:57:45 +01:00
msvensson@neptunus.(none)
11ddeb693d Merge neptunus.(none):/home/msvensson/mysql/bug15518/my50-bug15518
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
2007-01-16 14:13:48 +01:00
msvensson@neptunus.(none)
f507bb2cb3 Bug#15518 Reusing a stmt that has failed during prepare does not clear error
- Always reset error when calling mysql_stmt_prepare a second time
 - Set stmt->state to MYSQL_STMT_INIT_DONE before closing prepared stmt in server.
 - Add test to mysql_client_test
 - Remove mysql_stmt_close in mysqltest after each query
 - Close all open statements in mysqltest if disable_ps_protocol is called.
2007-01-16 13:39:42 +01:00
kostja@bodhi.local
bf1005a125 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  bodhi.local:/opt/local/work/mysql-5.0-runtime
2007-01-11 21:59:28 +03:00
malff/marcsql@weblab.(none)
0055056c91 Merge weblab.(none):/home/marcsql/TREE/mysql-5.1-base
into  weblab.(none):/home/marcsql/TREE/mysql-5.1-merge
2007-01-02 14:18:13 -07:00
kent@mysql.com/kent-amd64.(none)
67868597bb Many files:
Removed "MySQL Finland AB & TCX DataKonsult AB" from copyright header
  Adjusted year(s) in copyright header 
  Added GPL copyright text
my_vle.h, rpl_utility.h, my_vle.c, base64-t.c, rpl_utility.cc:
  Changed copyright header formatting some
plugin_example.c, daemon_example.c:
  Added "Copyright (C) 2006 MySQL AB" to GPL header
2006-12-31 02:29:11 +01:00
kent@kent-amd64.(none)
58763e383e Merge mysql.com:/home/kent/bk/main/mysql-5.0
into  mysql.com:/home/kent/bk/main/mysql-5.1
2006-12-31 01:32:21 +01:00
kent@mysql.com/kent-amd64.(none)
6523aca729 my_strtoll10-x86.s:
Corrected spelling in copyright text
Makefile.am:
  Don't update the files from BitKeeper
Many files:
  Removed "MySQL Finland AB & TCX DataKonsult AB" from copyright header
  Adjusted year(s) in copyright header 
Many files:
  Added GPL copyright text
Removed files:
  Docs/Support/colspec-fix.pl
  Docs/Support/docbook-fixup.pl
  Docs/Support/docbook-prefix.pl
  Docs/Support/docbook-split
  Docs/Support/make-docbook
  Docs/Support/make-makefile
  Docs/Support/test-make-manual
  Docs/Support/test-make-manual-de
  Docs/Support/xwf
2006-12-31 01:02:27 +01:00
kent@kent-amd64.(none)
be15e3bc15 Merge mysql.com:/home/kent/bk/main/mysql-5.0
into  mysql.com:/home/kent/bk/main/mysql-5.1
2006-12-23 20:20:40 +01:00
kent@mysql.com/kent-amd64.(none)
226a5c833f Many files:
Changed header to GPL version 2 only
2006-12-23 20:17:15 +01:00
monty@mysql.com/narttu.mysql.fi
a6481aa4c7 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/home/my/mysql-5.0
2006-12-15 01:01:52 +02:00
monty@mysql.com/narttu.mysql.fi
88dd873de0 Fixed compiler warnings detected by option -Wshadow and -Wunused:
- Removed not used variables and functions
- Added #ifdef around code that is not used
- Renamed variables and functions to avoid conflicts
- Removed some not used arguments

Fixed some class/struct warnings in ndb
Added define IS_LONGDATA() to simplify code in libmysql.c

I did run gcov on the changes and added 'purecov' comments on almost all lines that was not just variable name changes
2006-12-15 00:51:37 +02:00
kostja@bodhi.local
bc6e73873d Merge bk-internal.mysql.com:/home/bk/mysql-5.1
into  bodhi.local:/opt/local/work/mysql-5.1-runtime
2006-12-12 13:57:28 +03:00
pgalbraith@bk-internal.mysql.com
23f0c6d765 Merge bk-internal.mysql.com:/data0/bk/mysql-5.1
into  bk-internal.mysql.com:/data0/bk/mysql-5.1-arch
2006-12-09 02:34:42 +01:00
msvensson@neptunus.(none)
128b73fc36 Merge neptunus.(none):/home/msvensson/mysql/mysql-5.0
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-12-04 19:28:38 +01:00
msvensson@neptunus.(none)
971c783f7d Merge neptunus.(none):/home/msvensson/mysql/mysql-5.1
into  neptunus.(none):/home/msvensson/mysql/mysql-5.1-maint
2006-12-04 19:11:55 +01:00
brian@zim.(none)
31d67280f7 This finishes the work (someone) started to remove FIELD_ types and use the Enum MYSQL types. The second part to this is to actually deprecate the FIELD defines in mysql_com.h 2006-12-01 17:26:52 -08:00
kostja@bodhi.local
88dadbbf60 Merge bodhi.local:/opt/local/work/mysql-5.0-4968
into  bodhi.local:/opt/local/work/mysql-5.1-runtime
2006-12-01 13:26:49 +03:00
kostja@bodhi.local
87a87bc04b A fix and a test case for Bug#24179 "select b into $var" fails with
--cursor_protocol": fix a misleading error message in case of
SELECT .. INTO.
2006-12-01 13:25:06 +03:00
msvensson@shellback.(none)
7ddc43e305 Merge shellback.(none):/home/msvensson/mysql/mysql-5.1
into  shellback.(none):/home/msvensson/mysql/mysql-5.1-maint
2006-11-29 15:44:09 +01:00
kostja@bodhi.local
2525e16c73 Merge bk-internal.mysql.com:/home/bk/mysql-5.1
into  bodhi.local:/opt/local/work/mysql-5.1-runtime-merge
2006-11-29 11:44:37 +03:00
kostja@bodhi.local
5fea0724bc Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  bodhi.local:/opt/local/work/mysql-5.0-runtime
2006-11-29 02:44:12 +03:00
msvensson@neptunus.(none)
04d5a42bbf Merge neptunus.(none):/home/msvensson/mysql/mysql-5.0
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-11-28 20:59:57 +01:00
monty@nosik.monty.fi
313f23a93a Merge bk-internal.mysql.com:/home/bk/mysql-5.1-marvel
into  mysql.com:/home/my/mysql-5.1
2006-11-27 14:07:52 +02:00
kroki/tomash@moonlight.intranet
160f28084e After merge fixes: remove const and add query buffer. 2006-11-22 16:51:20 +03:00
kroki/tomash@moonlight.intranet
3b9a8532f5 After merge fixes: remove const and add query buffer. 2006-11-22 16:49:32 +03:00
monty@nosik.monty.fi
89570bf966 Merge mysql.com:/home/my/mysql-5.0
into  mysql.com:/home/my/mysql-5.1
2006-11-22 14:11:36 +02:00
kroki/tomash@moonlight.intranet
b290ed7a97 Merge moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.0
into  moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.0-bug21635
2006-11-22 14:17:24 +03:00
kroki/tomash@moonlight.intranet
7cb5df1ce0 Merge moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.0-bug21635
into  moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.1-bug21635
2006-11-22 14:08:43 +03:00
kroki/tomash@moonlight.intranet
003cd7b78f Merge moonlight.intranet:/home/tomash/src/mysql_ab/mysql-4.1-bug21635
into  moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.0-bug21635
2006-11-22 14:05:26 +03:00
kroki/tomash@moonlight.intranet
ec7a6d15fc BUG#21635: MYSQL_FIELD struct's member strings seem to misbehave for
expression cols.

The problem was that MYSQL_FIELD::org_name was set for MIN() and MAX()
functions (COUNT() is also mentioned in the bug report but was already
fixed).

After this patch for expressions MYSQL_FIELD::name is set to either
expression itself or its alias, and other data origin fields of
MYSQL_FILED (db, org_table, table, org_name) are empty strings.
2006-11-22 13:58:00 +03:00
monty@mysql.com/nosik.monty.fi
e825879800 Remove compiler warnings
(Mostly in DBUG_PRINT() and unused arguments)
Fixed bug in query cache when used with traceing (--with-debug)
Fixed memory leak in mysqldump
Removed warnings from mysqltest scripts (replaced -- with #)
2006-11-20 22:42:06 +02:00
kroki/tomash@moonlight.intranet
1f699a4422 Merge moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.0-bug23383
into  moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.1-bug23383
2006-11-17 12:33:59 +03:00
kroki/tomash@moonlight.intranet
6d4558f7c3 Merge moonlight.intranet:/home/tomash/src/mysql_ab/mysql-4.1-bug23383
into  moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.0-bug23383
2006-11-17 12:30:26 +03:00
kroki/tomash@moonlight.intranet
5e2ef3a68e BUG#23383: mysql_affected_rows() returns different values than
mysql_stmt_affected_rows()

The problem was that affected_rows for prepared statement wasn't updated
in the client library on the error.  The solution is to always update
affected_rows, which will be equal to -1 on the error.
2006-11-17 12:21:32 +03:00
jani@ua141d10.elisa.omakaista.fi
596f64d91a Merge jamppa@bk-internal.mysql.com:/home/bk/mysql-5.1-marvel
into  ua141d10.elisa.omakaista.fi:/home/my/bk/mysql-5.1-lex-string
2006-11-16 14:38:45 +02:00
msvensson@neptunus.(none)
430b493806 Merge neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
into  neptunus.(none):/home/msvensson/mysql/mysql-5.1-new-maint
2006-11-13 18:02:09 +01:00
msvensson@neptunus.(none)
bf020e5ea6 Bug#19817 error when try to compile PHP5.1 with mysql 5.0.21 static libs
- Most likely caused by linking with libmysqlclient using gcc and not g++.
 - Removing our "yassl_dummy_link_fix" hacks so some test programs are linked
   with gcc 
 - Remove build of non working test programs in vio
2006-11-13 17:16:37 +01:00
anozdrin/alik@alik.
ee15c11b7c Merge alik.:/mnt/raid/alik/MySQL/devel/5.1
into  alik.:/mnt/raid/alik/MySQL/devel/5.1-rt-merged-2
2006-11-07 16:24:35 +03:00
cmiller@zippy.cornsilk.net
c34f3219b3 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into  zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-4.1-maint
2006-11-02 17:27:42 -05:00
malff/marcsql@weblab.(none)
62c242cc75 Bug#21114 (Foreign key creation fails to table with name format)
Due to the complexity of this change, everything is documented in WL#3565

This patch is the third iteration, it takes into account the comments
received to date.
2006-11-02 11:01:53 -07:00
msvensson@neptunus.(none)
4d8eda1303 Merge neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
into  neptunus.(none):/home/msvensson/mysql/mysql-5.1-new-maint
2006-10-25 16:27:36 +02:00
msvensson@neptunus.(none)
eab6dbceab Fix memory leaks found when valgrinding mysql_client_test
Remove one warning
2006-10-25 16:26:57 +02:00
msvensson@neptunus.(none)
a6d87b4c00 Add valgrinding support for mysql_client_test
Fix two memory leaks in mysql_client_test
2006-10-25 14:34:18 +02:00
msvensson@neptunus.(none)
00c2535bbd Merge neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
into  neptunus.(none):/home/msvensson/mysql/mysql-5.1-new-maint
2006-10-24 19:16:45 +02:00
msvensson@neptunus.(none)
28ca3dea79 Bug#23037 Bug in field "Default" of query "SHOW COLUMNS FROM table"
- Fix check in mysql_client_test to reflect the change of datatype
   for DEFAULT column
2006-10-24 19:16:18 +02:00
msvensson@neptunus.(none)
52aaf251bd Merge neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
into  neptunus.(none):/home/msvensson/mysql/mysql-5.1-new-maint
2006-10-24 18:52:01 +02:00
msvensson@neptunus.(none)
a45e6ba7e8 Merge neptunus.(none):/home/msvensson/mysql/mysql-4.1-maint
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-10-24 18:51:07 +02:00
msvensson@neptunus.(none)
a8d1c62e5f Run mysql_client_test without --silent
Flush both stdout and stderr before abort'ing mysql_client_test
2006-10-24 18:49:19 +02:00
msvensson@neptunus.(none)
9069a9367b Merge neptunus.(none):/home/msvensson/mysql/bug17039/my51-bug17039
into  neptunus.(none):/home/msvensson/mysql/mysql-5.1-new-maint
2006-10-19 00:11:13 +02:00
msvensson@neptunus.(none)
4cf0a5ee74 Merge neptunus.(none):/home/msvensson/mysql/bug17039/my50-bug17039
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-10-19 00:10:36 +02:00
msvensson@neptunus.(none)
658623bd5c Merge neptunus.(none):/home/msvensson/mysql/bug17039/my50-bug17039
into  neptunus.(none):/home/msvensson/mysql/bug17039/my51-bug17039
2006-10-18 22:58:04 +02:00
jani@ua141d10.elisa.omakaista.fi
8dd0b2d0ae Merge jamppa@bk-internal.mysql.com:/home/bk/mysql-5.1
into  ua141d10.elisa.omakaista.fi:/home/my/bk/mysql-5.1-lex-string
2006-10-17 19:54:44 +03:00
jani@ua141d10.elisa.omakaista.fi
02f29377fd Changed several char* to LEX_STRING*. 2006-10-16 19:57:33 +03:00
kroki/tomash@moonlight.intranet
ee0cebf9a7 BUG#21726: Incorrect result with multiple invocations of LAST_INSERT_ID.
Note: bug#21726 does not directly apply to 4.1, as it doesn't have stored
procedures.  However, 4.1 had some bugs that were fixed in 5.0 by the
patch for bug#21726, and this patch is a backport of those fixes.
Namely, in 4.1 it fixes:

  - LAST_INSERT_ID(expr) didn't return value of expr (4.1 specific).

  - LAST_INSERT_ID() could return the value generated by current
    statement if the call happens after the generation, like in

      CREATE TABLE t1 (i INT AUTO_INCREMENT PRIMARY KEY, j INT);
      INSERT INTO t1 VALUES (NULL, 0), (NULL, LAST_INSERT_ID());

  - Redundant binary log LAST_INSERT_ID_EVENTs could be generated.
2006-10-06 13:34:07 +04:00
kroki/tomash@moonlight.intranet
8aa33bf46d Merge moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.0-real-bug21726
into  moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.1-real-bug21726
2006-10-02 15:01:19 +04:00
kroki/tomash@moonlight.intranet
5ea8adfae7 BUG#21726: Incorrect result with multiple invocations of LAST_INSERT_ID
Non-upper-level INSERTs (the ones in the body of stored procedure,
stored function, or trigger) into a table that have AUTO_INCREMENT
column didn't affected the result of LAST_INSERT_ID() on this level.

The problem was introduced with the fix of bug 6880, which in turn was
introduced with the fix of bug 3117, where current insert_id value was
remembered on the first call to LAST_INSERT_ID() (bug 3117) and was
returned from that function until it was reset before the next
_upper-level_ statement (bug 6880).

The fix for bug#21726 brings back the behaviour of version 4.0, and
implements the following: remember insert_id value at the beginning
of the statement or expression (which at that point equals to
the first insert_id value generated by the previous statement), and
return that remembered value from LAST_INSERT_ID() or @@LAST_INSERT_ID.

Thus, the value returned by LAST_INSERT_ID() is not affected by values
generated by current statement, nor by LAST_INSERT_ID(expr) calls in
this statement.

Version 5.1 does not have this bug (it was fixed by WL 3146).
2006-10-02 14:28:23 +04:00
msvensson@shellback.(none)
2c3015499d Merge shellback.(none):/home/msvensson/mysql/bug22139/my50-bug22139
into  shellback.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-09-15 16:42:27 +02:00
msvensson@shellback.(none)
211aceca68 Merge shellback.(none):/home/msvensson/mysql/bug22139/my50-bug22139
into  shellback.(none):/home/msvensson/mysql/bug22139/my51-bug22139
2006-09-15 16:41:50 +02:00
msvensson@shellback.(none)
e890eed69b Bug#22139 undefined reference to `my_memmem' when compiling tests/mysql_client_test
- Build mysql_client_test from mysql_client_test.c and mysys/my_memmem.c
2006-09-12 11:34:46 +02:00
msvensson@neptunus.(none)
3a1e9009a2 Bug#17039 Cursor with procedure crashes client
- Change 'get_unit_column_type" to return the field list for the procedure
2006-09-07 16:44:18 +02:00
grichter@bk-internal.mysql.com
6993e3a3f7 Merge bk-internal.mysql.com:/data0/bk/mysql-5.0
into  bk-internal.mysql.com:/data0/bk/mysql-5.0-cmake
2006-09-02 11:03:16 +02:00
georg@lmy002.wdf.sap.corp
9d6471c33e make dist changes for Cmake build 2006-09-01 10:32:12 +02:00
georg@lmy002.wdf.sap.corp
27636d9303 Additional files for cmake support 2006-08-31 19:52:42 +02:00
cmiller@zippy.cornsilk.net
8fbf3c5e8d Merge zippy.cornsilk.net:/home/cmiller/work/mysql/no-strange-literals/my51-no-strange-literals
into  zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.1-maint

Fixes bad merge.
2006-08-31 11:34:17 -04:00
cmiller@zippy.cornsilk.net
4340ec8ce9 Merge zippy.cornsilk.net:/home/cmiller/work/mysql/no-strange-literals/my50-no-strange-literals
into  zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.0-maint
2006-08-31 11:31:45 -04:00
cmiller@zippy.cornsilk.net
2d9187fcba Merge zippy.cornsilk.net:/home/cmiller/work/mysql/no-strange-literals/my41-no-strange-literals
into  zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-4.1-maint
2006-08-31 11:30:14 -04:00
cmiller@zippy.cornsilk.net
bd0451e232 Merge zippy.cornsilk.net:/home/cmiller/work/mysql/no-strange-literals/my50-no-strange-literals
into  zippy.cornsilk.net:/home/cmiller/work/mysql/no-strange-literals/my51-no-strange-literals
2006-08-31 11:28:57 -04:00
cmiller@zippy.cornsilk.net
797b8206ed Merge zippy.cornsilk.net:/home/cmiller/work/mysql/no-strange-literals/my41-no-strange-literals
into  zippy.cornsilk.net:/home/cmiller/work/mysql/no-strange-literals/my50-no-strange-literals
2006-08-31 11:27:55 -04:00
cmiller@zippy.cornsilk.net
436d3a3798 Bitkeeper's Tk interface uses UTF8 by default, so mixing charsets in a
single file is a bad practice.
2006-08-31 11:14:04 -04:00
cmiller@zippy.cornsilk.net
d575196c35 Manual merge. 2006-08-30 21:26:43 -04:00
msvensson@neptunus.(none)
160a44dbc3 Merge neptunus.(none):/home/msvensson/mysql/bug21813/my50-bug21813
into  neptunus.(none):/home/msvensson/mysql/bug21813/my51-bug21813
2006-08-30 17:25:56 +02:00
msvensson@neptunus.(none)
9d87db7767 Bug#21813 An attacker has the opportunity to bypass query logging, part2
- Use the "%.*b" format when printing prepared and exeuted prepared statements to the log.
 - Add test case to check that also prepared statements end up in the query log
Bug#14346 Prepared statements corrupting general log/server memory
 - Use "stmt->query" when logging the newly prepared query instead of "packet"
2006-08-30 17:11:00 +02:00
cmiller@zippy.cornsilk.net
5db9cce5fd Merge zippy.cornsilk.net:/home/cmiller/work/mysql/merge/mysql-5.0
into  zippy.cornsilk.net:/home/cmiller/work/mysql/merge/mysql-5.1
2006-08-25 14:34:17 -04:00
iggy@rolltop.ignatz42.dyndns.org
a21ec5dbd4 Merge rolltop.ignatz42.dyndns.org:/mnt/storeage/mysql-5.0-maint_11972
into  rolltop.ignatz42.dyndns.org:/mnt/storeage/mysql-5.1-new-maint_11972
2006-08-24 15:03:33 -04:00
msvensson@neptunus.(none)
1682c8b463 Merge bk-internal:/home/bk/mysql-5.0-maint
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-08-22 08:31:18 +02:00
msvensson@neptunus.(none)
aa944afbe7 Remove debug printout from mysql_client_test 2006-08-22 08:30:33 +02:00
iggy@rolltop.ignatz42.dyndns.org
f6dbea4f2f Merge rolltop.ignatz42.dyndns.org:/mnt/storeage/mysql-5.0-maint_21757
into  rolltop.ignatz42.dyndns.org:/mnt/storeage/mysql-5.1-new-maint_21757
2006-08-21 20:33:22 -04:00
iggy@rolltop.ignatz42.dyndns.org
39a8fe6e44 Bug#21757: mysql_client_test fails in testcase when reading master.log file 2006-08-21 20:29:11 -04:00
cmiller@zippy.cornsilk.net
f2f90320de Merge zippy.cornsilk.net:/home/cmiller/work/mysql/merge/mysql-5.0
into  zippy.cornsilk.net:/home/cmiller/work/mysql/merge/mysql-5.1
2006-08-21 12:59:46 -04:00
msvensson@shellback.(none)
adaa3a2a60 Merge bk-internal:/home/bk/mysql-5.0-maint
into  shellback.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-08-21 14:09:38 +02:00
msvensson@shellback.(none)
2b2985e0ea Print lines from log file to see what's in them 2006-08-21 14:06:59 +02:00
cmiller@zippy.cornsilk.net
c821fa8bc6 Merge zippy.cornsilk.net:/home/cmiller/work/mysql/merge/mysql-5.0
into  zippy.cornsilk.net:/home/cmiller/work/mysql/merge/mysql-5.1
2006-08-17 12:17:52 -04:00
rburnett@bk-internal.mysql.com
d65095b451 Merge bk-internal.mysql.com:/data0/bk/tmp_reg
into  bk-internal.mysql.com:/data0/bk/mysql-5.1
2006-08-17 17:19:41 +02:00
cmiller@zippy.cornsilk.net
6998c5140b Merge zippy.cornsilk.net:/home/cmiller/work/mysql/merge/tmp_merge
into  zippy.cornsilk.net:/home/cmiller/work/mysql/merge/mysql-5.0
2006-08-17 10:53:12 -04:00
cmiller@zippy.cornsilk.net
7d38d61398 Merge zippy.cornsilk.net:/home/cmiller/work/mysql/merge/tmp_merge
into  zippy.cornsilk.net:/home/cmiller/work/mysql/merge/mysql-5.0
2006-08-17 10:49:56 -04:00
cmiller@zippy.cornsilk.net
030ddb48f3 Merge zippy.cornsilk.net:/home/cmiller/work/mysql/merge/tmp_merge
into  zippy.cornsilk.net:/home/cmiller/work/mysql/merge/mysql-5.0
2006-08-17 10:47:23 -04:00
rburnett@production.mysql.com
0199dda5a6 My previous change of replacing the call to sprintf with some memcpy type routines was not correct. This patch reverts that.
mysql_client_test.c:
  reverting my previous change
2006-08-14 20:48:37 +02:00
kostja@bodhi.local
04c97488f9 Merge bodhi.local:/opt/local/work/tmp_merge
into  bodhi.local:/opt/local/work/mysql-5.1-runtime-merge
2006-08-12 21:06:51 +04:00
Reggie@xgeek.
e26aef9f64 Some small cleanups that will help get mysql_client_test passing on Windows 2006-08-10 17:39:01 -05:00
kroki/tomash@moonlight.intranet
5c272816ca Merge moonlight.intranet:/home/tomash/src/mysql_ab/tmp_merge
into  moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.1-merge
2006-08-09 13:37:20 +04:00
patg@govinda.patg.net
8d1e5a5bb1 Merge govinda.patg.net:/home/patg/mysql-build/mysql-5.0-holyfoot
into  govinda.patg.net:/home/patg/mysql-build/mysql-5.1-5.0-merge2

Push by holyfoot@production.mysql.com on Tue Jul 25 13:41:40 2006:

bk clone -l -r'holyfoot/hf@mysql.com/deer.(none)|ChangeSet|20060725085017|41021' mysql-5.0 tmp_merge
2006-08-08 09:01:32 -07:00
msvensson@neptunus.(none)
dee4105ce0 Remove extra whitespace 2006-08-07 19:21:43 +02:00
msvensson@neptunus.(none)
862d5626a5 Add some more code to analyze why the fgets fails. 2006-08-07 17:26:02 +02:00
msvensson@neptunus.(none)
419e4dd46f Add printouts in test case for bug17667 2006-08-07 14:02:57 +02:00
msvensson@neptunus.(none)
68168c8e8f Change the 'sleep' into an explicit FLUSH LOGS command 2006-08-07 11:29:41 +02:00
msvensson@neptunus.(none)
2e4dbadf9f fflush(NULL) before abort so that all pending writes are performed 2006-08-07 10:16:37 +02:00
msvensson@neptunus.(none)
e33bd1a309 Flush stderr before calling abort() 2006-08-06 23:56:51 +02:00
Reggie@xgeek.
7a8a33a941 please don't call methods that should always execute inside assert() 2006-08-05 18:58:38 -05:00
rburnett@production.mysql.com
a73a9da34b mysql_client_test.c:
Moving call that processes select results out of the assert
2006-08-05 23:15:23 +02:00
kostja@bodhi.local
4bfc67fc3c Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  bodhi.local:/opt/local/work/mysql-5.0-runtime-merge
2006-08-02 14:13:01 +04:00
kroki/tomash@moonlight.intranet
cc98d26a23 Fix after manual merge. 2006-07-29 13:50:08 +04:00
jimw@rama.(none)
f7e19b40f3 Merge rama.(none):/home/jimw/my/tmp_merge
into  rama.(none):/home/jimw/my/mysql-5.1-clean
2006-07-28 15:51:48 -07:00
holyfoot/hf@mysql.com/deer.(none)
a9a345d9a5 Merge mysql.com:/home/hf/work/mysql-4.1.mrg
into  mysql.com:/home/hf/work/mysql-5.0.mrg
2006-07-25 13:50:17 +05:00
kostja@bodhi.local
2ce1a07c89 A fix and a test case for Bug#15752 "Lost connection to MySQL server
when calling a SP from C API"

The bug was caused by lack of checks for misuse in mysql_real_query. 
A stored procedure always returns at least one result, which is the 
status of execution of the procedure itself.
This result, or so-called OK packet, is similar to a result
returned by INSERT/UPDATE/CREATE operations: it contains the overall
status of execution, the number of affected rows and the number of
warnings. The client test program attached to the bug did not read this 
result and ivnoked the next query. In turn, libmysql had no check for 
such scenario and mysql_real_query was simply trying to send that query 
without reading the pending response, thus messing up the communication
protocol.

The fix is to return an error from mysql_real_query when it's called
prior to retrieval of all pending results.
2006-07-24 14:56:53 +04:00
ingo/mydev@chilla.local
18a76a953c Merge chilla.local:/home/mydev/mysql-5.0-mmerge
into  chilla.local:/home/mydev/mysql-5.1-amain
2006-07-20 21:28:55 +02:00
holyfoot/hf@mysql.com/deer.(none)
95b88445fb Merge bk@192.168.21.1:mysql-4.1
into  mysql.com:/home/hf/work/mysql-4.1.19983
2006-07-20 16:03:21 +05:00
gluh@myoffice.izhnet.ru
f76aec6d90 Merge myoffice.izhnet.ru:/usr/home/gluh/MySQL/tmp_merge
into  myoffice.izhnet.ru:/usr/home/gluh/MySQL/5.1
2006-07-18 18:43:55 +05:00
holyfoot/hf@mysql.com/deer.(none)
00f56da9af merging 2006-07-18 16:43:39 +05:00
kostja@bodhi.local
d7845b74db Merge bodhi.local:/opt/local/work/tmp_merge
into  bodhi.local:/opt/local/work/mysql-5.1-runtime-merge-5.0
2006-07-13 22:09:36 +04:00
cmiller@zippy.(none)
2c5308a703 Merge zippy.(none):/home/cmiller/work/mysql/merge/mysql-5.0
into  zippy.(none):/home/cmiller/work/mysql/m50-maint--07C2P
2006-07-13 11:11:20 -04:00
cmiller@zippy.(none)
e62e730020 A patch to Bug#17667 didn't take into consideration that the vardir, which contains
the server's binlog file, might be set to a different directory.  This adds a new
"vardir" parameter, which takes the name of the directory as a value, so that the 
test_bug17667() test can find the binlog.
2006-07-10 16:38:03 -04:00