Commit graph

11039 commits

Author SHA1 Message Date
unknown
5ec889c798 Merge hasky:/my/mysql-build into mysql.com:/home/my/mysql-5.0
sql/sql_lex.h:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
2005-05-25 19:55:01 +03:00
unknown
e38f06f7ff Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/my/mysql-5.0


sql/sql_base.cc:
  Auto merged
sql/sql_insert.cc:
  Auto merged
2005-05-25 18:38:29 +03:00
unknown
1834f8899f Fix that we can read tables with the 'older' decimal format used in 5.0.3 & 5.0.4
We will however give a warning when opening such a table that users should use ALTER TABLE ... FORCE to fix
the table. In future release we will fix that REPAIR TABLE will be able to handle this case


sql/sql_lex.h:
  Support for ALTER TABLE ... FORCE
sql/sql_table.cc:
  CHECK TABLE now gives a note if table->s->crashed was set
sql/sql_yacc.yy:
  Support for ALTER TABLE ... FORCE
sql/table.cc:
  
  Fix that we can read tables with the 'older' decimal format used in 5.0.3 & 5.0.4
  (Now we store display length in the .frm table while we previously stored precision)
sql/table.h:
  Store in TABLE_SHARE version number of MySQL where table was created (or checked)
2005-05-25 18:33:36 +03:00
unknown
c6283dbba9 Cleanup's during review
Added ASSERT() to detect wrongly packed fields


sql/field.h:
  Fixed comments to right format
sql/opt_range.cc:
  Merged code
sql/sql_base.cc:
  Fixed indentation
sql/sql_insert.cc:
  Fixed comments to right format
sql/sql_select.cc:
  Simplify code
sql/unireg.cc:
  Simply code for calculating key_buff_length
  Added ASSERT() to detect wrongly packed fields
2005-05-25 18:33:32 +03:00
unknown
9ae4241994 Merge acurtis@bk-internal.mysql.com:/home/bk/mysql-5.0
into xiphis.org:/usr/home/antony/work2/p3-bug7241.6
2005-05-24 22:51:02 +01:00
unknown
896786eadd Manual merge of patch fixing several trigger related bugs with main tree.
sql/item.cc:
  Auto merged
sql/item.h:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_delete.cc:
  Auto merged
sql/sql_insert.cc:
  Manual merge
sql/sql_update.cc:
  Manual merge
2005-05-24 22:35:41 +04:00
unknown
1fa7c69d31 Fix for bugs:
#5860 "Multi-table UPDATE does not activate update triggers"
 #6812 "Triggers are not activated for INSERT ... SELECT"
 #8755 "Trigger is not activated by LOAD DATA".
This patch also implements proper handling of triggers for special forms
of insert like REPLACE or INSERT ... ON DUPLICATE KEY UPDATE. 
Also now we don't call after trigger in case when we have failed to
inserted/update or delete row. Trigger failure should stop statement
execution.

I have not properly tested handling of errors which happen inside of
triggers in this patch, since it is simplier to do this once we will be
able to access tables from triggers.


mysql-test/r/trigger.result:
  Added tests for triggers behavior for various non-standard forms of
  INSERT such as REPLACE and INSERT ... ON DUPLICATE KEY UPDATE.
  Also added tests for bugs #5860 "Multi-table UPDATE does not activate
  update triggers", #6812 "Triggers are not activated for INSERT ... SELECT"
  and #8755 "Trigger is not activated by LOAD DATA".
mysql-test/t/trigger.test:
  Added tests for triggers behavior for various non-standard forms of
  INSERT such as REPLACE and INSERT ... ON DUPLICATE KEY UPDATE.
  Also added tests for bugs #5860 "Multi-table UPDATE does not activate
  update triggers", #6812 "Triggers are not activated for INSERT ... SELECT"
  and #8755 "Trigger is not activated by LOAD DATA".
sql/item.cc:
  Since it turned out that at trigger loading time we can't say in which
  buffer TABLE::record[0] or record[1] old version of row will be stored
  we have to change our approach to binding of Item_trigger_field to
  Field instances.
  Now after trigger parsing (in Item_trigger_field::setup_table()) we only
  find index of proper Field in the TABLE::field array. Then before trigger
  is invoked we set Table_triggers_list::old_field/new_field so they point
  to arrays holding Field instances bound to buffers with proper row
  versions. And as last step in Item_trigger_field::fix_fields() we get
  pointer to Field from those arrays using saved field index.
  
  Item_trigger_field::setup_field()/fix_fields() were changed to implement
  this approach.
sql/item.h:
  Since it turned out that at trigger loading time we can't say in which
  buffer TABLE::record[0] or record[1] old version of row will be stored
  we have to change our approach to binding of Item_trigger_field to
  Field instances.
  Now after trigger parsing (in Item_trigger_field::setup_table()) we only
  find index of proper Field in the TABLE::field array. Then before trigger
  is invoked we set Table_triggers_list::old_field/new_field so they point
  to arrays holding Field instances bound to buffers with proper row
  versions. And as last step in Item_trigger_field::fix_fields() we get
  pointer to Field from those arrays using saved field index.
  
  Item_trigger_field:
  - Added field_idx member to store index of Field object corresponding to
    this Item in TABLE::field array.
  - Added triggers member to be able to access to parent Table_trigger_list
    object from fix_fields() method.
  - setup_field() no longer needs to know for which type of event this
    trigger is, since it does not make decision Field for which buffer
    (record[0] or record[1] is appropriate for this Item_trigger_field)
sql/mysql_priv.h:
  Added fill_record_n_invoke_before_triggers() methods. They are simple
  wrappers around fill_record() which invoke proper before trigger right
  after filling record with values.
sql/sql_base.cc:
  Added fill_record_n_invoke_before_triggers() methods. They are simple
  wrappers around fill_record() which invoke proper before trigger right
  after filling record with values.
sql/sql_delete.cc:
  mysql_delete():
    Now we stop statement execution if one of triggers failed, we also
    don't execute after delete trigger if we failed to delete row from
    the table (We also pass information about which buffer contains old
    version of row to process_triggers()).
  multi_delete::send_data()/do_deletes():
    Now we also invoke triggers in case of multi-delete.
sql/sql_insert.cc:
  mysql_insert():
    Moved invocation of before triggers to fill_record_n_invoke_before_triggers()
    method. After triggers are now executed as part of write_record().
    (as nice side effect now we also stop statement execution if one of
    triggers fail).
  write_record():
    Invoke after insert trigger after performing insert. Also invoke proper
    triggers if insert is converted to update or conflicting row is deleted.
    Cleaned up error handling a bit - no sense to report error via
    handler::print_error if it was not generated by handler method and
    was reported before.
    Also now we will execute after trigger only if we really have written
    row to the table. 
  select_insert::send_data()/store_values():
    We should also execute INSERT triggers for INSERT ... SELECT statement.
sql/sql_load.cc:
  read_fixed_length()/read_sep_field():
    We should execute INSERT triggers when processing LOAD DATA statement.
    Small cleanup in auto-increment related code. Also moved check for
    thd->killed which is used to abort LOAD DATA in case of problems
    in 'traditional' mode to better place..
sql/sql_trigger.cc:
  Since it turned out that at trigger loading time we can't say in which
  buffer TABLE::record[0] or record[1] old version of row will be stored
  we have to change our approach to binding of Item_trigger_field to
  Field instances.
  Now after trigger parsing (in Item_trigger_field::setup_table()) we only
  find index of proper Field in the TABLE::field array. Then before trigger
  is invoked we set Table_triggers_list::old_field/new_field so they point
  to arrays holding Field instances bound to buffers with proper row
  versions. And as last step in Item_trigger_field::fix_fields() we get
  pointer to Field from those arrays using saved field index.
  
  Table_triggers_list methods were changed to implement this approach
  (see also comments for sql_trigger.h).
sql/sql_trigger.h:
  Since it turned out that at trigger loading time we can't say in which
  buffer TABLE::record[0] or record[1] old version of row will be stored
  we have to change our approach to binding of Item_trigger_field to
  Field instances.
  Now after trigger parsing (in Item_trigger_field::setup_table()) we only
  find index of proper Field in the TABLE::field array. Then before trigger
  is invoked we set Table_triggers_list::old_field/new_field so they point
  to arrays holding Field instances bound to buffers with proper row
  versions. And as last step in Item_trigger_field::fix_fields() we get
  pointer to Field from those arrays using saved field index.
  
  Changed Table_triggers_list to implement this new approach:
  - Added record1_field member to store array of Field objects bound
    to TABLE::record[1] buffer (instead of existing old_field member)
  - Added new_field member and changed meaning of old_field member.
    During trigger execution they should point to arrays of Field objects
    bound to buffers holding new and old versions of row respectively.
  - Added 'table' member to be able to get access to TABLE instance
    (for which this trigger list object was created) from process_triggers()
    method.
  - Now process_triggers() method sets old_field and new_field members
    properly before executing triggers body (basing on new 
    old_row_is_record1 parameter value).
  - Renamed prepare_old_row_accessors_method() to prepare_record1_accessors()
  
  Also added has_before_update_triggers() method which allows to check
  whenever any before update triggers exist for table.
sql/sql_update.cc:
  mysql_update():
    Now we invoke before triggers in fill_record_n_invoke_before_triggers()
    method. Also now we abort statement execution when one of triggers fail.
  safe_update_on_fly():
    When we are trying to understand if we can update first table in multi
    update on the fly we should take into account that BEFORE UPDATE
    trigger can change field values.
  multi_update::send_data()/do_updates()
    We should execute proper triggers when doing multi-update
    (in both cases when we do it on the fly and using temporary tables).
2005-05-24 22:19:33 +04:00
unknown
cfb54ed514 ha_archive.cc:
Use local seach path for "mysql_priv.h"
mysqld.dsp:
  Added the ARCHIVE storage engine to max
ha_archive.h:
  VC6, but not VC7, needs a cast of byte[] to char* to make
  the compile select the right conversion function in String


sql/examples/ha_archive.h:
  VC6, but not VC7, needs a cast of byte[] to char* to make
  the compile select the right conversion function in String
VC++Files/sql/mysqld.dsp:
  Added the ARCHIVE storage engine to max
sql/examples/ha_archive.cc:
  Use local seach path for "mysql_priv.h"
2005-05-24 18:51:53 +02:00
unknown
879d932ba9 Merge
mysql-test/r/lock.result:
  Auto merged
mysql-test/r/rpl_log.result:
  Auto merged
mysql-test/t/lock.test:
  Auto merged
mysql-test/r/rpl_rotate_logs.result:
  SCCS merged
sql/sql_parse.cc:
  SCCS merged
sql/sql_repl.cc:
  SCCS merged
2005-05-24 15:52:48 +01:00
unknown
3a23b67566 Merge acurtis@bk-internal.mysql.com:/home/bk/mysql-4.1
into xiphis.org:/usr/home/antony/work2/p3-bug7241.5
2005-05-24 13:40:25 +01:00
unknown
1a8f64d715 Add comments 2005-05-24 13:38:46 +01:00
unknown
efc7b884eb Bug#7241 - Invalid response when DELETE .. USING and LOCK TABLES used.
Only acquire necessary write lock for multi-delete


mysql-test/r/lock.result:
  Test for Bug#7241
mysql-test/t/lock.test:
  Test for Bug#7241
sql/sql_parse.cc:
  Bug#7241
    Don't acquire write lock on all tables.
    Make sure to set lock_type on real table_list
2005-05-24 11:44:34 +01:00
unknown
d0afc3492e Merge gluh@gluh:/home/gluh/release/mysql-5.0-build
into mysql.com:/home/gluh/MySQL/Merge/mysql-5.0
2005-05-24 15:35:24 +05:00
unknown
ab1ba1341c Merge pmartin@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/pem/work/mysql-5.0
2005-05-24 10:19:10 +02:00
unknown
9c79a9d691 Fixed on BUG#6048: Stored procedure causes operating system reboot
Memory leak in locally evalutated expressions during SP execution fixed by
  reusing allocated item slots when possible.
  Note: No test case added, since the test is a stress test that tries to make
  the machine to run out of memory.
  Second attempt, now tested with debug build, valgrind build, max (optimized)
  build, with and without --debug, --vagrind and --ps-protocol.
  Errors in trigger and view test with --debug in debug build where present
  before this patch, and likewise for valgrind warnings for view test in
  valgrind build with --ps-protocol.


sql/item.cc:
  Init rsize in Item (for SP item reusal).
sql/item.h:
  Addes special new operator for reuse of Items, for SP internal use only.
sql/sp_head.cc:
  Reuse items assigned internally in SPs when possible.
sql/sp_rcontext.cc:
  Reuse items assigned internally in SPs when possible.
  Moved the local variable assignment here (from sp_head) to avoid
  duplicated code.
sql/sp_rcontext.h:
  New arg to sp_rcontext::set_item_eval() (and some coding style).
sql/sql_class.cc:
  Adjusted call to new set_item_eval().
2005-05-23 23:43:43 +02:00
unknown
87f3b9f43e mysqld.dsp:
Added BLACKHOLE and FEDERATED storage engines for max builds
  Some preparations for including yaSSL
ha_federated.cc:
  Use local seach path for "mysql_priv.h"


sql/ha_federated.cc:
  Use local seach path for "mysql_priv.h"
VC++Files/sql/mysqld.dsp:
  Added BLACKHOLE and FEDERATED storage engines for max builds
  Some preparations for including yaSSL
2005-05-23 21:15:00 +02:00
unknown
d81bee6ec1 Merge mysql.com:/home/bkroot/mysql-4.1 into mysql.com:/home/bk/c4944-4.1 2005-05-23 21:05:30 +02:00
unknown
ad9eba227d A comment for view_prepare_mode.
sql/sql_lex.h:
  A comment.
2005-05-23 22:38:12 +04:00
unknown
67c5514b90 BUG#10687 - Merge engine fails under Windows
This final cset is to fix a syntax problem in ha_myisammrg.cc where a / was left out of a format string.
It also adds a check in has_path to avoid a possible redundant comparison.

ha_myisammrg.cc:
  Replaced missing / in format string
my_getwd.c:
  Added test to see if FN_LIBCHAR != '/' before doing comparison to avoid redundant comparison


mysys/my_getwd.c:
  Added test to see if FN_LIBCHAR != '/' before doing comparison to avoid redundant comparison
sql/ha_myisammrg.cc:
  Replaced missing / in format string
2005-05-23 12:31:22 -05:00
unknown
1b2a2c8647 Merge rburnett@bk-internal.mysql.com:/home/bk/mysql-4.1
into mdk10.(none):/home/reggie/bk/mysql-4.1
2005-05-23 12:08:57 -05:00
unknown
36b3f0a052 BUG# 10687: Merge engine fails under Windows
This cset is to roll out the cset applied earlier from Ingo.
This bug has been fixed with a different cset.



sql/ha_myisammrg.cc:
  removed the patch applied earlier
strings/my_vsnprintf.c:
  removed the patch applied earlier.  The patch was to add %c ability.  
  Monty has already done this.
2005-05-23 12:05:15 -05:00
unknown
3e2417ed57 Merge neptunus.(none):/home/msvensson/mysql/mysql-5.0.6-build
into neptunus.(none):/home/msvensson/mysql/mysql-5.0-tmp


VC++Files/mysys/mysys.dsp:
  Auto merged
include/my_global.h:
  Auto merged
myisam/rt_split.c:
  Auto merged
sql/field_conv.cc:
  Auto merged
sql/sql_delete.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
strings/my_vsnprintf.c:
  Auto merged
2005-05-23 19:01:16 +02:00
unknown
bc40c03d3a Merge mysql.com:/home/bkroot/mysql-4.1 into mysql.com:/home/bk/c4944-4.1 2005-05-23 16:23:05 +02:00
unknown
05e658235b default_modify.c:
Use MY_STAT to declare argument to my_fstat()
des_key_file.cc:
  Use local seach path for "mysql_priv.h"
mysys.dsp, libmysqld.dsp, libmysql.dsp:
  New file needed, "../mysys/default_modify.c"


VC++Files/libmysql/libmysql.dsp:
  New file needed, "../mysys/default_modify.c"
VC++Files/libmysqld/libmysqld.dsp:
  New file needed, "../mysys/default_modify.c"
VC++Files/mysys/mysys.dsp:
  New file needed, "../mysys/default_modify.c"
sql/des_key_file.cc:
  Use local seach path for "mysql_priv.h"
mysys/default_modify.c:
  Use MY_STAT to declare argument to my_fstat()
2005-05-21 23:23:39 +02:00
unknown
982bd00d48 ha_innodb.cc:
The natural InnoDB type for NEWDECIMAL is FIXBINARY, not BINARY, since there probably is no benefit from stripping trailing bytes 0x20; note that tables created with 5.0.6 and containing DECIMAL do not need to be rebuilt, as BINARY works as well; note that because of Jani's fix to bug 10465, tables created with 5.0.? - 5.0.5 DO NEED TO BE REBUILT if they contain DECIMAL


sql/ha_innodb.cc:
  The natural InnoDB type for NEWDECIMAL is FIXBINARY, not BINARY, since there probably is no benefit from stripping trailing bytes 0x20; note that tables created with 5.0.6 and containing DECIMAL do not need to be rebuilt, as BINARY works as well; note that because of Jani's fix to bug 10465, tables created with 5.0.? - 5.0.5 DO NEED TO BE REBUILT if they contain DECIMAL
2005-05-21 18:44:51 +03:00
unknown
6df4988985 join_outer.test, join_outer.result:
Added test cases for bug #9938.
item.h:
  Fixed bug #9938: missing method not_null_tables for Item_ref.


sql/item.h:
  Fixed bug #9938: missing method not_null_tables for Item_ref.
mysql-test/t/join_outer.test:
  Added test cases for bug #9938.
2005-05-21 08:44:50 -07:00
unknown
e2e90649f5 sql_select.cc:
Added missing comment for fix of #10561.


sql/sql_select.cc:
  Added missing comment for fix of #10561.
2005-05-21 08:39:35 -07:00
unknown
d844dab14f opt_range.cc:
Post review corrections for optimization request #10561.


sql/opt_range.cc:
  Post review corrections for optimization request #10561.
2005-05-21 07:02:43 -07:00
unknown
8f7bca3abd range.result, range.test:
Added test cases for optimization request #10561.
opt_range.cc, sql_select.cc:
  Fixed bug #10561: an optimization request to allow
  range analysis for NOT IN and NOT BETWEEN.


sql/sql_select.cc:
  Fixed bug #10561: an optimization request to allow
  range analysis for NOT IN and NOT BETWEEN.
sql/opt_range.cc:
  Fixed bug #10561: an optimization request to allow
  range analysis for NOT IN and NOT BETWEEN.
mysql-test/t/range.test:
  Added test cases for optimization request #10561.
mysql-test/r/range.result:
  Added test cases for optimization request #10561.
2005-05-21 06:11:44 -07:00
unknown
606d8a5ab0 fixed conflicts
VC++Files/mysys/mysys.dsp:
  Auto merged
include/my_sys.h:
  Auto merged
sql/sql_db.cc:
  Auto merged
2005-05-20 16:34:59 -05:00
unknown
03e26e50b9 Merge rburnett@bk-internal.mysql.com:/home/bk/mysql-5.0
into mdk10.(none):/home/reggie/bk/mysql-5.0


sql/spatial.cc:
  Auto merged
2005-05-20 16:24:12 -05:00
unknown
c1ae672add BUG# 9148: Denial of service
The problem was that on Windows the access method indicates that access to file 
such as "com1" and "lpt1" is allowed (since they are device names) and
this causes mysql to attempt to open them as databases or tables.

The fix was to write our own my_access method that uses other Win32 functions
to determine if the given argument is indeed a file and has to requested
mode.


VC++Files/mysys/mysys.dsp:
  added my_access
VC++Files/mysys/mysys_ia64.dsp:
  added my_access.c
include/my_sys.h:
  if on windows, we use my_access.
  if not on windows, then my_access points to the native access method
mysys/Makefile.am:
  added my_access to mysys build file
mysys/mf_pack.c:
  changed call to access to my_access
sql/sql_db.cc:
  changed call to access to my_access
2005-05-20 16:04:10 -05:00
unknown
2a5a3de285 Fixed BUG#10537: Server crashes while loading data file into table through
procedure.
  by simply disabling 'load' in stored procedures, like it's already disabled
  for prepared statements. (They must be made "re-execution" safe before
  working with either PS or SP.)


mysql-test/r/sp-error.result:
  New test case for BUG#10537.
mysql-test/t/sp-error.test:
  New test case for BUG#10537.
sql/sql_yacc.yy:
  Disable LOAD in stored procedures (just as for prepared statements).
2005-05-20 17:47:08 +02:00
unknown
7fa4dc6d2f Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/my/mysql-5.0
2005-05-20 17:32:35 +03:00
unknown
19f3d13c8a Merge sgluhov@bk-internal.mysql.com:/home/bk/mysql-5.0
into gluh.mysql.r18.ru:/home/gluh/release/mysql-5.0
2005-05-20 18:32:34 +04:00
unknown
355000fa4e Merge mysql.com:/home/bkroot/mysql-4.1 into mysql.com:/home/bk/c4944-4.1 2005-05-20 15:30:15 +02:00
unknown
31cffb8a7f my_vsnprintf.c, sql_select.cc, sql_delete.cc, field_conv.cc, rt_split.c:
Fixes for valgrind errors and compatiblity issues by Monty


myisam/rt_split.c:
  Fixes for valgrind errors and compatiblity issues by Monty
sql/field_conv.cc:
  Fixes for valgrind errors and compatiblity issues by Monty
sql/sql_delete.cc:
  Fixes for valgrind errors and compatiblity issues by Monty
sql/sql_select.cc:
  Fixes for valgrind errors and compatiblity issues by Monty
strings/my_vsnprintf.c:
  Fixes for valgrind errors and compatiblity issues by Monty
2005-05-20 15:17:13 +02:00
unknown
ccafae43da Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/my/mysql-5.0


sql/sql_select.cc:
  Auto merged
2005-05-20 16:16:22 +03:00
unknown
027c10f3bb compatibility issues
Fixed errors reported by valgrind (some errors in NDB remains)


myisam/rt_split.c:
  Added missing cast that caused problem on novell
  (minor code cleanup)
ndb/src/ndbapi/Ndb.cpp:
  Moved DBUG_ENTER to remove warning from DBUG library
sql/field_conv.cc:
  Added test for valgrind/purify to avoid warning
sql/item_sum.cc:
  Removed comment and added ASSERT as setup can't be called twice anymore
sql/sql_delete.cc:
  Fixed wrong return value
sql/sql_parse.cc:
  More debugging
sql/sql_select.cc:
  Removed duplicate call to setup() which caused a memory leak
strings/my_vsnprintf.c:
  Added support for '%c' (used when printing my_getopt errors)
2005-05-20 16:14:35 +03:00
unknown
648b072da2 do not try to use equal field from outer query as field of local join (BUG#6384)
mysql-test/r/subselect.result:
  changes in plans
  test for bug#6384
mysql-test/t/subselect.test:
  test for bug#6384
sql/sql_select.cc:
  do not set equal field from outer query
2005-05-20 16:01:41 +03:00
unknown
122e029a2c Merge gluh.mysql.r18.ru:/home/gluh/release/mysql-5.0-build
into gluh.mysql.r18.ru:/home/gluh/release/mysql-5.0
2005-05-20 16:55:00 +04:00
unknown
be218f51f5 addition of "REFERENCED_TABLE_SCHEMA",
"REFERENCED_TABLE_NAME", "REFERENCED_COLUMN_NAME" fields into
  KEY_COLUMN_USAGE table
2005-05-20 16:39:28 +04:00
unknown
4c3d3bb2f4 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into neptunus.(none):/home/msvensson/mysql/mysql-5.0
2005-05-20 00:05:24 +02:00
unknown
bdf5dbcd9a Cset exclude: matt@mysql.com|ChangeSet|20050519052223|06259
Cset exclude: msvensson@neptunus.(none)|ChangeSet|20050425090838|60886


configure.in:
  Exclude
sql/opt_range.cc:
  Exclude
2005-05-19 23:52:17 +02:00
unknown
1da5382a9f BUG# 10687 - MERGE engine fails under Windows
This patch was submitted by Ingo and it appears to work correctly.


sql/ha_myisammrg.cc:
  use FN_LIBCHAR instead of / so buff works correctly on Windows
strings/my_vsnprintf.c:
  add support for %c to my_vsnprintf
2005-05-19 16:02:14 -05:00
unknown
c321b2ba6e Merge mdk10.(none):/home/reggie/bk/mysql-4.1
into mdk10.(none):/home/reggie/bk/mysql-5.0


sql/spatial.cc:
  Auto merged
sql/sql_udf.cc:
  Auto merged
2005-05-19 15:50:44 -05:00
unknown
f210d1ddf1 Merge mysqldev@production.mysql.com:my/mysql-5.0-build
into neptunus.(none):/home/msvensson/mysql/mysql-5.0-build


sql/item_func.cc:
  Auto merged
2005-05-19 22:23:59 +02:00
unknown
f4a584f501 This fixed a compile problem on Windows
sql_udf.cc:
  changed dl_name to udf->dl in mysql_create_function


sql/sql_udf.cc:
  changed dl_name to udf->dl in mysql_create_function
2005-05-19 15:18:49 -05:00
unknown
4482604ec6 hf's fix for bug #9060 (FORMAT returns incorrect result)
we need proper rounding there


mysql-test/r/func_math.result:
  test result fixed
mysql-test/t/func_math.test:
  test case added
sql/item_func.cc:
  my_double_round implementation added
sql/item_strfunc.cc:
  my_double_round used
sql/mysql_priv.h:
  my_double_round interface
2005-05-20 01:04:08 +05:00
unknown
4422b07126 Merge neptunus.(none):/home/msvensson/mysql/bug9626
into neptunus.(none):/home/msvensson/mysql/mysql-5.0-build


mysql-test/r/type_newdecimal.result:
  Auto merged
mysql-test/t/type_newdecimal.test:
  Auto merged
sql/item_func.cc:
  Auto merged
2005-05-19 20:41:23 +02:00