summaryrefslogtreecommitdiff
path: root/storage/innobase/pars/pars0opt.c
diff options
context:
space:
mode:
authorunknown <tsmith@maint1.mysql.com>2006-09-05 03:52:15 +0200
committerunknown <tsmith@maint1.mysql.com>2006-09-05 03:52:15 +0200
commit0da158aa2f8ea28e20359701d3fae0d7d3dd09de (patch)
tree53a9a2f242d2a61c1a3f936b0a15fe42e9df2aac /storage/innobase/pars/pars0opt.c
parentfbf2bc183aad7dd3a25bf0877ebdf89f946674b4 (diff)
downloadmariadb-git-0da158aa2f8ea28e20359701d3fae0d7d3dd09de.tar.gz
Applied InnoDB 5.1 snapshot ss787.
Bugs fixed: - Bug #20791 valgrind errors in InnoDB Remove Valgrind warning of Bug #20791 : in new database creation, we read the doublewrite buffer magic number from uninitialized memory; the code worked because it was extremely unlikely that the memory would contain the magic number - Bug #21784 DROP TABLE crashes 5.1.12-pre if concurrent queries on the table remove update_thd() in ::store_lock() Also includes numerous coding style fixes, etc. See file-level comments for details. sql/ha_innodb.cc: Applied InnoDB 5.1 snapshot ss787. r755: Merge a patch from MySQL AB (Mats Kindal): Lock and unlock prepare_commit_mutex under the same conditions. r782: Fix bug #21784 of a crash in DROP TABLE with concurrent queries on the table storage/innobase/Makefile.am: Applied InnoDB 5.1 snapshot ss787. r772: Merge changes from MySQL AB: ChangeSet 2006/08/23 13:59:16-07:00 brian@zim.(none) This patch removes need for a innodb to have its own configure. storage/innobase/btr/btr0btr.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r764: Split lines before an opening parenthesis, not after one. Replace some printf(...) in debug builds with fprintf(stderr, ...). r765: Split lines before binary operators, not after them. storage/innobase/btr/btr0cur.c: Applied InnoDB 5.1 snapshot ss787. r761: btr_cur_search_to_nth_level(): Document where cursor is left at in PAGE_CUR_LE searches. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r765: Split lines before binary operators, not after them. storage/innobase/btr/btr0pcur.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r765: Split lines before binary operators, not after them. storage/innobase/btr/btr0sea.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/buf/buf0buf.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r764: Split lines before an opening parenthesis, not after one. Replace some printf(...) in debug builds with fprintf(stderr, ...). r765: Split lines before binary operators, not after them. storage/innobase/buf/buf0flu.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r764: Split lines before an opening parenthesis, not after one. Replace some printf(...) in debug builds with fprintf(stderr, ...). r765: Split lines before binary operators, not after them. storage/innobase/buf/buf0lru.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r764: Split lines before an opening parenthesis, not after one. Replace some printf(...) in debug builds with fprintf(stderr, ...). storage/innobase/buf/buf0rea.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r765: Split lines before binary operators, not after them. storage/innobase/data/data0data.c: Applied InnoDB 5.1 snapshot ss787. r743: dfield_print_raw(): Make static. Print at most 1000 bytes to avoid excessive space usage of the error log. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r765: Split lines before binary operators, not after them. storage/innobase/data/data0type.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/dict/dict0boot.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/dict/dict0crea.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/dict/dict0dict.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r764: Split lines before an opening parenthesis, not after one. Replace some printf(...) in debug builds with fprintf(stderr, ...). r765: Split lines before binary operators, not after them. r767: Remove dict_col_t::aux, which was only used when copying an index definition to the data dictionary cache. storage/innobase/dict/dict0load.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r765: Split lines before binary operators, not after them. storage/innobase/dict/dict0mem.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/eval/eval0eval.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r765: Split lines before binary operators, not after them. storage/innobase/eval/eval0proc.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/fil/fil0fil.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r764: Split lines before an opening parenthesis, not after one. Replace some printf(...) in debug builds with fprintf(stderr, ...). r765: Split lines before binary operators, not after them. storage/innobase/fsp/fsp0fsp.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r764: Split lines before an opening parenthesis, not after one. Replace some printf(...) in debug builds with fprintf(stderr, ...). r765: Split lines before binary operators, not after them. storage/innobase/fut/fut0lst.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/ha/ha0ha.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/ibuf/ibuf0ibuf.c: Applied InnoDB 5.1 snapshot ss787. r735: Remove all traces of the obsolete concept of replicate spaces. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r764: Split lines before an opening parenthesis, not after one. Replace some printf(...) in debug builds with fprintf(stderr, ...). r765: Split lines before binary operators, not after them. storage/innobase/include/btr0btr.ic: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/btr0cur.h: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/btr0cur.ic: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/btr0pcur.ic: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/buf0buf.h: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/buf0buf.ic: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/buf0flu.ic: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/buf0rea.h: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/data0data.h: Applied InnoDB 5.1 snapshot ss787. r743: dfield_print_raw(): Make static. Print at most 1000 bytes to avoid excessive space usage of the error log. storage/innobase/include/data0data.ic: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/data0type.ic: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/dict0boot.h: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/dict0dict.ic: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/dict0mem.h: Applied InnoDB 5.1 snapshot ss787. r767: Remove dict_col_t::aux, which was only used when copying an index definition to the data dictionary cache. storage/innobase/include/eval0eval.ic: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/fut0lst.ic: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/ibuf0ibuf.ic: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/lock0lock.ic: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/log0log.ic: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/log0recv.h: Applied InnoDB 5.1 snapshot ss787. r735: Remove all traces of the obsolete concept of replicate spaces. storage/innobase/include/mach0data.ic: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/mem0mem.ic: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r765: Split lines before binary operators, not after them. storage/innobase/include/mtr0log.ic: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/mtr0mtr.h: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/os0file.h: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/page0cur.ic: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/page0page.ic: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r764: Split lines before an opening parenthesis, not after one. Replace some printf(...) in debug builds with fprintf(stderr, ...). storage/innobase/include/que0que.ic: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/read0read.ic: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/rem0cmp.ic: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/rem0rec.ic: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r765: Split lines before binary operators, not after them. storage/innobase/include/row0mysql.h: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/row0purge.h: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/row0row.h: Applied InnoDB 5.1 snapshot ss787. r777: Remove unused code. row_build(): Remove type==ROW_COPY_ALSO_EXTERNALS, because it is never passed. storage/innobase/include/row0row.ic: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/row0sel.h: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/row0sel.ic: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/row0undo.h: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/row0upd.ic: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/sync0rw.h: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/sync0rw.ic: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/sync0sync.h: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/sync0sync.ic: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/trx0rec.ic: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/trx0rseg.ic: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r765: Split lines before binary operators, not after them. storage/innobase/include/trx0sys.ic: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r765: Split lines before binary operators, not after them. storage/innobase/include/trx0trx.h: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/trx0trx.ic: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/trx0undo.h: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/trx0undo.ic: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/trx0xa.h: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/univ.i: Applied InnoDB 5.1 snapshot ss787. r772: Merge changes from MySQL AB: ChangeSet 2006/08/23 13:59:16-07:00 brian@zim.(none)· This patch removes need for a innodb to have its own configure.· univ.i: Replace ../ib_config.h with config.h. r777: Remove unused code. univ.i: Do not #define YYDEBUG, because it is only useful for debugging the grammar of the Bison-generated InnoDB SQL parser. storage/innobase/include/ut0byte.ic: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/include/ut0rnd.ic: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r765: Split lines before binary operators, not after them. storage/innobase/lock/lock0lock.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r764: Split lines before an opening parenthesis, not after one. Replace some printf(...) in debug builds with fprintf(stderr, ...). r765: Split lines before binary operators, not after them. storage/innobase/log/log0log.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r764: Split lines before an opening parenthesis, not after one. Replace some printf(...) in debug builds with fprintf(stderr, ...). r765: Split lines before binary operators, not after them. storage/innobase/log/log0recv.c: Applied InnoDB 5.1 snapshot ss787. r735: Remove all traces of the obsolete concept of replicate spaces. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r764: Split lines before an opening parenthesis, not after one. Replace some printf(...) in debug builds with fprintf(stderr, ...). r765: Split lines before binary operators, not after them. storage/innobase/mem/mem0dbg.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r765: Split lines before binary operators, not after them. storage/innobase/mem/mem0mem.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/mem/mem0pool.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/mtr/mtr0log.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/mtr/mtr0mtr.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r765: Split lines before binary operators, not after them. storage/innobase/os/os0file.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r765: Split lines before binary operators, not after them. storage/innobase/os/os0proc.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r765: Split lines before binary operators, not after them. storage/innobase/os/os0sync.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/os/os0thread.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/page/page0cur.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r765: Split lines before binary operators, not after them. storage/innobase/page/page0page.c: Applied InnoDB 5.1 snapshot ss787. r761: btr_cur_search_to_nth_level(): Document where cursor is left at in PAGE_CUR_LE searches. r762: page_validate(): Add missing space to error print, for real this time, following an error in r761. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r764: Split lines before an opening parenthesis, not after one. Replace some printf(...) in debug builds with fprintf(stderr, ...). r765: Split lines before binary operators, not after them. storage/innobase/pars/pars0opt.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/pars/pars0pars.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r764: Split lines before an opening parenthesis, not after one. Replace some printf(...) in debug builds with fprintf(stderr, ...). r765: Split lines before binary operators, not after them. storage/innobase/que/que0que.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/read/read0read.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/rem/rem0cmp.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r764: Split lines before an opening parenthesis, not after one. Replace some printf(...) in debug builds with fprintf(stderr, ...). r765: Split lines before binary operators, not after them. storage/innobase/rem/rem0rec.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r765: Split lines before binary operators, not after them. storage/innobase/row/row0ins.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r764: Split lines before an opening parenthesis, not after one. Replace some printf(...) in debug builds with fprintf(stderr, ...). r765: Split lines before binary operators, not after them. storage/innobase/row/row0mysql.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r764: Split lines before an opening parenthesis, not after one. Replace some printf(...) in debug builds with fprintf(stderr, ...). r765: Split lines before binary operators, not after them. storage/innobase/row/row0purge.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/row/row0row.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r765: Split lines before binary operators, not after them. r777: Remove unused code. row_build(): Remove type==ROW_COPY_ALSO_EXTERNALS, because it is never passed. storage/innobase/row/row0sel.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r764: Split lines before an opening parenthesis, not after one. Replace some printf(...) in debug builds with fprintf(stderr, ...). r765: Split lines before binary operators, not after them. storage/innobase/row/row0uins.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/row/row0umod.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/row/row0undo.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/row/row0upd.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r765: Split lines before binary operators, not after them. storage/innobase/row/row0vers.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/srv/srv0srv.c: Applied InnoDB 5.1 snapshot ss787. r741: srv_master_thread(): Add OS_THREAD_DUMMY_RETURN to get rid of a compiler warning "no return value from a function returning non-void". r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r764: Split lines before an opening parenthesis, not after one. Replace some printf(...) in debug builds with fprintf(stderr, ...). r765: Split lines before binary operators, not after them. r780: Add a warning comment above the place where we set srv_main_thread_op_info to "waiting for server activity" that mentions that this string should not be changed. storage/innobase/srv/srv0start.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r765: Split lines before binary operators, not after them. storage/innobase/sync/sync0arr.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r765: Split lines before binary operators, not after them. storage/innobase/sync/sync0rw.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/sync/sync0sync.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/thr/thr0loc.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/trx/trx0purge.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r765: Split lines before binary operators, not after them. storage/innobase/trx/trx0rec.c: Applied InnoDB 5.1 snapshot ss787. r735: Remove all traces of the obsolete concept of replicate spaces. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r765: Split lines before binary operators, not after them. storage/innobase/trx/trx0roll.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/trx/trx0rseg.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/trx/trx0sys.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r765: Split lines before binary operators, not after them. storage/innobase/trx/trx0trx.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r764: Split lines before an opening parenthesis, not after one. Replace some printf(...) in debug builds with fprintf(stderr, ...). r765: Split lines before binary operators, not after them. storage/innobase/trx/trx0undo.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r765: Split lines before binary operators, not after them. storage/innobase/ut/ut0byte.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/ut/ut0dbg.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r764: Split lines before an opening parenthesis, not after one. Replace some printf(...) in debug builds with fprintf(stderr, ...). storage/innobase/ut/ut0mem.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/ut/ut0ut.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). r765: Split lines before binary operators, not after them. storage/innobase/ut/ut0vec.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files). storage/innobase/ut/ut0wqueue.c: Applied InnoDB 5.1 snapshot ss787. r763: Reindent the code base (except for ha_innodb.{cc,h} and generated parser and lexer files).
Diffstat (limited to 'storage/innobase/pars/pars0opt.c')
-rw-r--r--storage/innobase/pars/pars0opt.c116
1 files changed, 59 insertions, 57 deletions
diff --git a/storage/innobase/pars/pars0opt.c b/storage/innobase/pars/pars0opt.c
index 4037f50cb5c..7c564d3ee4c 100644
--- a/storage/innobase/pars/pars0opt.c
+++ b/storage/innobase/pars/pars0opt.c
@@ -86,7 +86,7 @@ opt_check_exp_determined_before(
while (arg) {
if (!opt_check_exp_determined_before(arg, sel_node,
- nth_table)) {
+ nth_table)) {
return(FALSE);
}
@@ -148,10 +148,10 @@ opt_look_for_col_in_comparison_before(
ut_ad(search_cond);
ut_a((search_cond->func == '<')
- || (search_cond->func == '>')
- || (search_cond->func == '=')
- || (search_cond->func == PARS_GE_TOKEN)
- || (search_cond->func == PARS_LE_TOKEN));
+ || (search_cond->func == '>')
+ || (search_cond->func == '=')
+ || (search_cond->func == PARS_GE_TOKEN)
+ || (search_cond->func == PARS_LE_TOKEN));
table = sel_node_get_nth_plan(sel_node, nth_table)->table;
@@ -160,10 +160,10 @@ opt_look_for_col_in_comparison_before(
return(NULL);
} else if ((cmp_type == OPT_COMPARISON)
- && (search_cond->func != '<')
- && (search_cond->func != '>')
- && (search_cond->func != PARS_GE_TOKEN)
- && (search_cond->func != PARS_LE_TOKEN)) {
+ && (search_cond->func != '<')
+ && (search_cond->func != '>')
+ && (search_cond->func != PARS_GE_TOKEN)
+ && (search_cond->func != PARS_LE_TOKEN)) {
return(NULL);
}
@@ -174,8 +174,8 @@ opt_look_for_col_in_comparison_before(
sym_node = arg;
if ((sym_node->token_type == SYM_COLUMN)
- && (sym_node->table == table)
- && (sym_node->col_no == col_no)) {
+ && (sym_node->table == table)
+ && (sym_node->col_no == col_no)) {
/* sym_node contains the desired column id */
@@ -185,7 +185,7 @@ opt_look_for_col_in_comparison_before(
exp = que_node_get_next(arg);
if (opt_check_exp_determined_before(exp, sel_node,
- nth_table)) {
+ nth_table)) {
*op = search_cond->func;
return(exp);
@@ -200,11 +200,11 @@ opt_look_for_col_in_comparison_before(
sym_node = arg;
if ((sym_node->token_type == SYM_COLUMN)
- && (sym_node->table == table)
- && (sym_node->col_no == col_no)) {
+ && (sym_node->table == table)
+ && (sym_node->col_no == col_no)) {
if (opt_check_exp_determined_before(exp, sel_node,
- nth_table)) {
+ nth_table)) {
*op = opt_invert_cmp_op(search_cond->func);
return(exp);
@@ -253,7 +253,8 @@ opt_look_for_col_in_cond_before(
new_cond = search_cond->args;
exp = opt_look_for_col_in_cond_before(cmp_type, col_no,
- new_cond, sel_node, nth_table, op);
+ new_cond, sel_node,
+ nth_table, op);
if (exp) {
return(exp);
@@ -262,12 +263,14 @@ opt_look_for_col_in_cond_before(
new_cond = que_node_get_next(new_cond);
exp = opt_look_for_col_in_cond_before(cmp_type, col_no,
- new_cond, sel_node, nth_table, op);
+ new_cond, sel_node,
+ nth_table, op);
return(exp);
}
exp = opt_look_for_col_in_comparison_before(cmp_type, col_no,
- search_cond, sel_node, nth_table, op);
+ search_cond, sel_node,
+ nth_table, op);
if (exp == NULL) {
return(NULL);
@@ -281,7 +284,8 @@ opt_look_for_col_in_cond_before(
return(NULL);
- } else if (!sel_node->asc && ((*op == '>') || (*op == PARS_GE_TOKEN))) {
+ } else if (!sel_node->asc
+ && ((*op == '>') || (*op == PARS_GE_TOKEN))) {
return(NULL);
}
@@ -329,9 +333,9 @@ opt_calc_index_goodness(
col_no = dict_index_get_nth_col_no(index, j);
- exp = opt_look_for_col_in_cond_before(OPT_EQUAL, col_no,
- sel_node->search_cond,
- sel_node, nth_table, &op);
+ exp = opt_look_for_col_in_cond_before
+ (OPT_EQUAL, col_no, sel_node->search_cond,
+ sel_node, nth_table, &op);
if (exp) {
/* The value for this column is exactly known already
at this stage of the join */
@@ -342,9 +346,9 @@ opt_calc_index_goodness(
} else {
/* Look for non-equality comparisons */
- exp = opt_look_for_col_in_cond_before(OPT_COMPARISON,
- col_no, sel_node->search_cond,
- sel_node, nth_table, &op);
+ exp = opt_look_for_col_in_cond_before
+ (OPT_COMPARISON, col_no, sel_node->search_cond,
+ sel_node, nth_table, &op);
if (exp) {
index_plan[j] = exp;
*last_op = op;
@@ -488,15 +492,15 @@ opt_check_order_by(
if (i < sel_node->n_tables - 1) {
ut_a(dict_index_get_n_unique(plan->index)
- <= plan->n_exact_match);
+ <= plan->n_exact_match);
} else {
ut_a(plan->table == order_table);
ut_a((dict_index_get_n_unique(plan->index)
- <= plan->n_exact_match)
- || (dict_index_get_nth_col_no(plan->index,
- plan->n_exact_match)
- == order_col_no));
+ <= plan->n_exact_match)
+ || (dict_index_get_nth_col_no(plan->index,
+ plan->n_exact_match)
+ == order_col_no));
}
}
}
@@ -541,7 +545,7 @@ opt_search_plan_for_table(
/* should be do ... until ? comment by Jani */
while (index) {
goodness = opt_calc_index_goodness(index, sel_node, i,
- index_plan, &last_op);
+ index_plan, &last_op);
if (goodness > best_goodness) {
best_index = index;
@@ -549,7 +553,7 @@ opt_search_plan_for_table(
n_fields = opt_calc_n_fields_from_goodness(goodness);
ut_memcpy(best_index_plan, index_plan,
- n_fields * sizeof(void*));
+ n_fields * sizeof(void*));
best_last_op = last_op;
}
@@ -565,14 +569,14 @@ opt_search_plan_for_table(
plan->n_exact_match = 0;
} else {
plan->tuple = dtuple_create(pars_sym_tab_global->heap,
- n_fields);
+ n_fields);
dict_index_copy_types(plan->tuple, plan->index, n_fields);
plan->tuple_exps = mem_heap_alloc(pars_sym_tab_global->heap,
- n_fields * sizeof(void*));
+ n_fields * sizeof(void*));
ut_memcpy(plan->tuple_exps, best_index_plan,
- n_fields * sizeof(void*));
+ n_fields * sizeof(void*));
if (best_last_op == '=') {
plan->n_exact_match = n_fields;
} else {
@@ -580,11 +584,11 @@ opt_search_plan_for_table(
}
plan->mode = opt_op_to_search_mode(sel_node->asc,
- best_last_op);
+ best_last_op);
}
if ((best_index->type & DICT_CLUSTERED)
- && (plan->n_exact_match >= dict_index_get_n_unique(best_index))) {
+ && (plan->n_exact_match >= dict_index_get_n_unique(best_index))) {
plan->unique_search = TRUE;
} else {
@@ -660,7 +664,7 @@ opt_classify_comparison(
the testing is necessary when the cursor is reversed. */
if ((n_fields > plan->n_exact_match)
- && opt_is_arg(plan->tuple_exps[n_fields - 1], cond)) {
+ && opt_is_arg(plan->tuple_exps[n_fields - 1], cond)) {
return(OPT_SCROLL_COND);
}
@@ -671,11 +675,10 @@ opt_classify_comparison(
access the table, it is classified as OPT_END_COND */
if ((dict_index_get_n_fields(plan->index) > plan->n_exact_match)
- && opt_look_for_col_in_comparison_before(
- OPT_COMPARISON,
- dict_index_get_nth_col_no(plan->index,
- plan->n_exact_match),
- cond, sel_node, i, &op)) {
+ && opt_look_for_col_in_comparison_before
+ (OPT_COMPARISON,
+ dict_index_get_nth_col_no(plan->index, plan->n_exact_match),
+ cond, sel_node, i, &op)) {
if (sel_node->asc && ((op == '<') || (op == PARS_LE_TOKEN))) {
@@ -763,7 +766,7 @@ opt_normalize_cmp_conds(
sym_node = arg2;
if ((sym_node->token_type == SYM_COLUMN)
- && (sym_node->table == table)) {
+ && (sym_node->table == table)) {
/* Switch the order of the arguments */
@@ -803,7 +806,7 @@ opt_determine_and_normalize_test_conds(
opt_find_test_conds(sel_node, i, sel_node->search_cond);
opt_normalize_cmp_conds(UT_LIST_GET_FIRST(plan->end_conds),
- plan->table);
+ plan->table);
ut_a(UT_LIST_GET_LEN(plan->end_conds) >= plan->n_exact_match);
}
@@ -846,7 +849,7 @@ opt_find_all_cols(
while (arg) {
opt_find_all_cols(copy_val, index, col_list, plan,
- arg);
+ arg);
arg = que_node_get_next(arg);
}
@@ -900,10 +903,8 @@ opt_find_all_cols(
/* Fill in the field_no fields in sym_node */
- sym_node->field_nos[SYM_CLUST_FIELD_NO]
- = dict_index_get_nth_col_pos(
- dict_table_get_first_index(index->table),
- sym_node->col_no);
+ sym_node->field_nos[SYM_CLUST_FIELD_NO] = dict_index_get_nth_col_pos
+ (dict_table_get_first_index(index->table), sym_node->col_no);
if (!(index->type & DICT_CLUSTERED)) {
ut_a(plan);
@@ -963,7 +964,7 @@ opt_find_copy_cols(
plan = sel_node_get_nth_plan(sel_node, i);
opt_find_all_cols(TRUE, plan->index, &(plan->columns), plan,
- search_cond);
+ search_cond);
}
}
@@ -998,7 +999,7 @@ opt_classify_cols(
while (exp) {
opt_find_all_cols(TRUE, plan->index, &(plan->columns), plan,
- exp);
+ exp);
exp = que_node_get_next(exp);
}
@@ -1008,7 +1009,7 @@ opt_classify_cols(
columns: therefore FALSE */
opt_find_all_cols(FALSE, plan->index, &(plan->columns), plan,
- sel_node->search_cond);
+ sel_node->search_cond);
}
/***********************************************************************
@@ -1069,10 +1070,11 @@ opt_clust_access(
tables, and they should not contain column prefix indexes. */
if (dict_index_get_nth_field(index, pos)->prefix_len != 0
- || dict_index_get_nth_field(clust_index, i)
- ->prefix_len != 0) {
+ || dict_index_get_nth_field(clust_index, i)
+ ->prefix_len != 0) {
fprintf(stderr,
-"InnoDB: Error in pars0opt.c: table %s has prefix_len != 0\n",
+ "InnoDB: Error in pars0opt.c:"
+ " table %s has prefix_len != 0\n",
index->table_name);
}
@@ -1098,7 +1100,7 @@ opt_search_plan(
ulint i;
sel_node->plans = mem_heap_alloc(pars_sym_tab_global->heap,
- sel_node->n_tables * sizeof(plan_t));
+ sel_node->n_tables * sizeof(plan_t));
/* Analyze the search condition to find out what we know at each
join stage about the conditions that the columns of a table should