mariadb/mysys
Davi Arnaut e879919a9f Backport of Bug#15192 to mysql-next-mr
------------------------------------------------------------
revno: 2597.4.17
revision-id: sp1r-davi@mysql.com/endora.local-20080328174753-24337
parent: sp1r-anozdrin/alik@quad.opbmk-20080328140038-16479
committer: davi@mysql.com/endora.local
timestamp: Fri 2008-03-28 14:47:53 -0300
message:
  Bug#15192 "fatal errors" are caught by handlers in stored procedures

  The problem is that fatal errors (e.g.: out of memory) were being
  caught by stored procedure exception handlers which could cause
  the execution to not be stopped due to a continue handler.

  The solution is to not call any exception handler if the error is
  fatal and send the fatal error to the client.

mysql-test/r/sp-error.result:
  Add test case result for Bug#15192
mysql-test/t/sp-error.test:
  Add test case for Bug#15192
mysys/my_alloc.c:
  Pass flag to signal fatal error in memory root allocations.
sql/event_data_objects.cc:
  Use init_sql_alloc to initialize memory roots, which uses
  the sql error handler to push errors.
sql/ha_partition.cc:
  Pass flag to signal fatal error instead of calling fatal_error.
sql/item_func.cc:
  Pass flag to signal fatal error instead of calling fatal_error.
sql/item_subselect.cc:
  Remove redundant fatal error, memory root already pushes error.
sql/opt_sum.cc:
  Pass flag to signal fatal error instead of calling fatal_error.
sql/sp_head.cc:
  Allocator already sets fatal error.
sql/sql_class.h:
  A error must exist for it to be fatal. Pass flag to signal fatal
  error instead of calling fatal_error.
sql/sql_insert.cc:
  Pass flag to signal fatal error instead of calling fatal_error.
sql/sql_list.h:
  Pass flag to signal fatal error instead of calling fatal_error.
sql/sql_parse.cc:
  Pass flag to signal fatal error instead of calling fatal_error.
sql/sql_partition.cc:
  Pass flag to signal fatal error instead of calling fatal_error.
sql/sql_select.cc:
  Pass flag to signal fatal error instead of calling fatal_error.
sql/sql_servers.cc:
  Use init_sql_alloc to initialize memory roots, which uses
  the sql error handler to push errors.
sql/sql_show.cc:
  Pass flag to signal fatal error instead of calling fatal_error.
sql/sql_trigger.cc:
  Use init_sql_alloc to initialize memory roots, which uses
  the sql error handler to push errors.
sql/sql_update.cc:
  Pass flag to signal fatal error instead of calling fatal_error.
sql/tztime.cc:
  Use init_sql_alloc to initialize memory roots, which uses
  the sql error handler to push errors.
2009-11-10 18:31:28 -02:00
..
.cvsignore
array.c
base64.c
ChangeLog
charset-def.c
charset.c
checksum.c
CMakeLists.txt
default.c
default_modify.c
errors.c
hash.c
list.c
make-ccc
make-conf.c
Makefile.am
md5.c
mf_arr_appstr.c
mf_brkhant.c
mf_cache.c
mf_dirname.c
mf_fn_ext.c
mf_format.c
mf_getdate.c
mf_iocache.c
mf_iocache2.c
mf_keycache.c
mf_keycaches.c
mf_loadpath.c
mf_pack.c
mf_path.c
mf_qsort.c
mf_qsort2.c
mf_radix.c
mf_same.c
mf_sort.c
mf_soundex.c
mf_tempdir.c
mf_tempfile.c
mf_unixpath.c
mf_util.c
mf_wcomp.c
mf_wfile.c
mulalloc.c
my_access.c
my_aes.c
my_alarm.c
my_alloc.c
my_append.c
my_atomic.c
my_bit.c
my_bitmap.c
my_chsize.c
my_clock.c
my_compress.c
my_conio.c
my_copy.c
my_crc32.c
my_create.c
my_delete.c
my_div.c
my_dup.c
my_error.c
my_file.c
my_fopen.c
my_fstream.c
my_gethostbyname.c
my_gethwaddr.c
my_getncpus.c
my_getopt.c
my_getpagesize.c
my_getsystime.c
my_getwd.c
my_handler.c
my_handler_errors.h
my_init.c
my_largepage.c
my_lib.c
my_libwrap.c
my_lock.c
my_lockmem.c
my_malloc.c
my_memmem.c
my_messnc.c
my_mkdir.c
my_mmap.c
my_net.c
my_netware.c
my_new.cc
my_once.c
my_open.c
my_port.c
my_pread.c
my_pthread.c
my_quick.c
my_read.c
my_realloc.c
my_redel.c
my_rename.c
my_seek.c
my_sleep.c
my_static.c
my_static.h
my_symlink.c
my_symlink2.c
my_sync.c
my_thr_init.c
my_vle.c
my_wincond.c
my_windac.c
my_winerr.c
my_winfile.c
my_winthread.c
my_write.c
mysys_priv.h
ptr_cmp.c
queues.c
rijndael.c
safemalloc.c
sha1.c
stacktrace.c
string.c
test_charset.c
test_dir.c
test_fn.c
test_xml.c
testhash.c
thr_alarm.c
thr_lock.c
thr_mutex.c
thr_rwlock.c
tree.c
trie.c
typelib.c