Commit graph

438 commits

Author SHA1 Message Date
marko
fb067e41bd Revert the hunk on ha_innobase::innobase_read_and_init_auto_inc()
that was accidentally committed in r782.
2006-09-01 08:19:47 +00:00
heikki
a3c6001751 Fix bug #21784 of a crash in DROP TABLE with concurrent queries on the table 2006-08-31 19:52:25 +00:00
heikki
799b063824 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.
2006-08-31 19:19:22 +00:00
osku
42f9837428 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.
2006-08-31 11:01:15 +00:00
marko
279d526570 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.

row_build(): Remove type==ROW_COPY_ALSO_EXTERNALS, because it is never
passed.
2006-08-31 10:47:31 +00:00
marko
befb1c5308 compile-innodb, compile-innodb-debug:
Replace max-no-ndb compilation flags with --with-plugin=innobase.
2006-08-31 09:36:45 +00:00
marko
41ae786e43 Adapt the InnoDB build scripts to r772.
setup.sh: Create symbolic links to the build scripts instead of copying them.
2006-08-31 07:26:30 +00:00
marko
965a94160d 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.

Makefile.i, Makefile.am: Change directory paths.

configure.in: Delete.

plug.in: New file, included from the top-level configure.in.

setup.sh: Replace configure.in with plug.in.
2006-08-30 20:29:01 +00:00
marko
33ed2aa4de Remove dict_col_t::aux, which was only used when copying an index definition
to the data dictionary cache.
2006-08-29 12:11:56 +00:00
marko
27dffa4f7d Split lines before binary operators, not after them. 2006-08-29 08:27:56 +00:00
marko
917941e44c Split lines before an opening parenthesis, not after one.
Replace some printf(...) in debug builds with fprintf(stderr, ...).
2006-08-29 07:33:51 +00:00
marko
8f18616ef0 Reindent the code base (except for ha_innodb.{cc,h} and generated parser
and lexer files).  From now on, the following Emacs cc-mode settings apply
when indenting C function bodies in InnoDB:

(setq c-basic-offset 8)
(setq c-label-minimum-indentation 0)
(add-to-list 'c-offsets-alist '(c . 0))
(add-to-list 'c-offsets-alist '(label . [0]))

The indentation rules for function declarations still have not been
formalized, and they must be formatted manually.

Try to limit all lines to at most 79 characters (assuming TAB stops every
8 characters) by splitting lines before opening parenthesis, or at
string constants.

Fix some grammar mistakes in diagnostic output:
 match to, match with -> match
 found from -> found in
 trying rename -> trying to rename

Fix an error in page_check_dir(): it said "supremum not pointed to"
when the infimum was not pointed to.

Enclose commented-out code snippets in #if 0 ... #endif instead of /* ... */.
Add (void*) casts to some %p parameters in fprintf() calls.  Try to
split lines before a binary operator, not after one.  (These three fixes
were not made everywhere.)
2006-08-28 17:42:45 +00:00
osku
bd338cebd9 page_validate(): Add missing space to error print, for real this time,
following an error in r761.
2006-08-28 07:07:13 +00:00
osku
66241d5a8d btr_cur_search_to_nth_level(): Document where cursor is left at in
PAGE_CUR_LE searches.

page_validate(): Add missing space to error print.
2006-08-28 06:15:42 +00:00
marko
42a77e858b Merge a patch from MySQL AB (Mats Kindal):
Lock and unlock prepare_commit_mutex under the same conditions.
2006-08-22 07:20:52 +00:00
marko
d475256ce5 dfield_print_raw(): Make static. Print at most 1000 bytes to avoid
excessive space usage of the error log.
2006-08-17 12:46:19 +00:00
marko
abe9dae496 srv_master_thread(): Add OS_THREAD_DUMMY_RETURN to get rid of a compiler
warning "no return value from a function returning non-void".
2006-08-17 08:51:42 +00:00
osku
475e422b4a Remove all traces of the obsolete concept of replicate spaces. 2006-08-16 08:01:37 +00:00
marko
e87b68e001 row_vers_build_for_semi_consistent_read(): rec_trx_id was uninitialized
in a comparison.  Initialize it.
2006-08-14 11:18:18 +00:00
osku
d2a7614eac btr_cur_get_page(): Remove buggy assertion. 2006-08-14 10:36:58 +00:00
marko
6ccc725f98 innodb.result: Adjust Innodb_rows_inserted and Innodb_rows_updated
to reflect the deleted statements in r420, which somehow reappeared
in the MySQL tree.
2006-08-14 07:52:28 +00:00
marko
2d45f76523 Merge code from MySQL:
ChangeSet@1.2181.173.1  2006-08-02 17:57:06+02:00  ingo@local

Bug#18775 - Temporary table from alter table visible to other threads
Continued implementation of WL#1324 (table name to filename encoding)
Changed back the encoded temp file prefix to #sql.
2006-08-14 07:34:26 +00:00
marko
23573074d6 Merge changes to test files from MySQL AB. The suite innodb.test fails
due to this MySQL change to row0mysql.c not being merged:

http://mysql.bkbits.net:8080/mysql-5.1/diffs/storage/innobase/row/row0mysql.c@1.126.1.1
2006-08-11 09:20:10 +00:00
marko
b0d9c363fc ha_innobase::delete_all_rows(): Correct an error introduced in r705:
Replace the local variable "trx" with "prebuilt->trx".

Also, replace the second invocation of the macro current_thd with
the local variable thd.
2006-08-11 08:44:10 +00:00
marko
122ca35327 Merge a change from MySQL AB:
# ChangeSet
#   2006/07/30 05:16:08+04:00 aivanov@mysql.com 
#   Make innodb_thread_concurrency 0 by default.
#    Fixing test result.
# 
# mysql-test/r/innodb.result
#   2006/07/30 05:16:05+04:00 aivanov@mysql.com +1 -1
#   Make innodb_thread_concurrency 0 by default.
#    Fixing test result.
2006-08-11 08:08:54 +00:00
marko
b4270e7081 Merge a change from MySQL AB (originally implemented by Marko
in the 5.0 tree and now merged to the 5.1 tree):

# ChangeSet
#   2006/07/29 07:17:33+04:00 aivanov@mysql.com 
#   Make innodb_flush_log_at_trx_commit a settable global variable.
# 
# sql/ha_innodb.cc
#   2006/07/29 07:17:29+04:00 aivanov@mysql.com +1 -3
#   Remove innobase_flush_log_at_trx_commit
#   (set srv_flush_log_at_trx_commit directly).
# 
# sql/ha_innodb.h
#   2006/07/29 07:17:29+04:00 aivanov@mysql.com +1 -1
#   Remove innobase_flush_log_at_trx_commit.
#   Declare srv_flush_log_at_trx_commit.
# 
# storage/innobase/include/srv0srv.h
#   2006/07/29 07:17:30+04:00 aivanov@mysql.com +1 -1
#   Change the type of srv_flush_log_at_trx_commit.
# 
# storage/innobase/srv/srv0srv.c
#   2006/07/29 07:17:30+04:00 aivanov@mysql.com +1 -1
#   Change the type of srv_flush_log_at_trx_commit.
#
2006-08-11 08:05:40 +00:00
marko
6389cd96f4 Merge a change from MySQL AB:
# ChangeSet
#   2006/07/28 21:27:01+04:00 sergefp@mysql.com 
#   BUG#14940 "MySQL choose wrong index", v.2
# mysql-test/r/innodb_gis.result
#   2006/07/28 21:26:56+04:00 sergefp@mysql.com +15 -15
#   BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
2006-08-11 08:02:26 +00:00
heikki
ac88d25b33 Remove redundant check_trx_exists() and ut_a() from r701,
as suggested by Marko
2006-08-08 11:38:34 +00:00
marko
b17cae8c6a setup.sh: Link also CMakeLists.txt. 2006-08-08 11:33:49 +00:00
marko
b758497312 Correct all URLs pointing to the MySQL manual. (Bug #21467) 2006-08-08 10:54:57 +00:00
heikki
df475ab785 Add update_thd() to several places in ha_innodb.cc to make sure prebuilt->trx points to the right trx object; in other functions add assertions that prebuilt->trx is for this thd; when 5.1 stabilizes, we can change these assertions to ut_ad() debug version assertions 2006-08-07 15:39:40 +00:00
heikki
5d37f4bad7 Fix Bug #20493 : we must prepare prebuilt->trx to point to the trx of this thd before using it 2006-08-07 15:23:32 +00:00
heikki
f185d66669 Fix Bug#20213 and its duplicates: stress test crashes of InnoDB-5.1 2006-08-07 15:18:22 +00:00
marko
58676efe16 Remove non-varying variable ibuf->meter and related constant IBUF_THRESHOLD. 2006-08-02 08:01:41 +00:00
marko
e79ebe8315 After ut_print_timestamp(), always display " InnoDB:" (note two spaces). 2006-08-02 06:52:44 +00:00
osku
fa832adc86 ut_dbg_assertion_failed(): Print space between timestamp and start of error
message.
2006-08-01 10:20:14 +00:00
marko
49606878fc innodb.result: Set the default value of innodb_thread_concurrency to 8.
This has already been changed in the MySQL source code tree.
2006-07-31 11:17:32 +00:00
marko
52c09c8c9c row_rename_table_for_mysql(): Restore the row_mysql_unlock_data_dictionary()
call that was accidentally removed in r674.
2006-07-31 11:05:14 +00:00
marko
01ce2292ff ha_innobase::start_stmt(): patch from Heikki:
Do not call read_view_close_for_mysql().  (Bug #19834)
2006-07-28 10:17:55 +00:00
marko
cef9a0265f Remove the special treatment of tables
rsql_IDENTIFIER_recover_innodb_tmp_table, which is redundant and
was broken with the introduction of the "safe" file name encoding of
identifiers.  (Bug #21313)
2006-07-27 18:41:37 +00:00
osku
59ec36ce5f Make the tablespace cache hash size 100 or 1000 times bigger. Fixes bug
#21112.
2006-07-21 05:15:49 +00:00
osku
829429cfe8 ibuf_print(): Don't print redundant information. Fixes bug #21113. 2006-07-21 05:14:14 +00:00
osku
04413d93d8 Makefile.am: Add some missing files to EXTRA_DIST. 2006-06-15 04:43:58 +00:00
osku
d9b9c4ccaa mem_heap_cat(): Remove void* arithmetic. 2006-06-15 04:41:52 +00:00
osku
8c91463079 Add -Wpointer-arith to CFLAGS when using GCC. 2006-06-15 04:41:15 +00:00
marko
3412bdf03e Merge changes from MySQL AB:
innodb_mysql.test, innodb_mysql.result:
  Bug #16798: Uninitialized row buffer reads in ref-or-null optimizer
  Bug #12882: min/max inconsistent on empty table
  Test of behaviour with CREATE ... SELECT
 Moved from group_min_max.test:
  Bug #12672: primary key implicitly included in every innodb index
  Bug #6142: a problem with empty innodb table 
  Bug #9798: group by with rollup

ChangeSet@2006/06/01 21:47:15+03:00 bell@sanja.is.com.ua 
#   interface for transaction log management added to handlerton
#   iterators creation interface added to handlerton
ha_innodb.cc: Add get_log_status = create_iterator = NULL

ChangeSet@2006/06/04 18:52:22+03:00 monty@mysql.com 
#   This changeset is largely a handler cleanup changeset (WL#3281),
#   but includes fixes and cleanups that was found necessary while
#   testing the handler changes
# sql/ha_innodb.h
#   2006/06/04 18:52:09+03:00 monty@mysql.com +6 -13
#   Update to 'newer' table handler interface
#   - table_flags are now ulonglong
#   - Added reset() method
#   - Removed not needed ha_retrieve_all_cols() and ha_retrieve_all_pk()
#     columns.
#   - Made build_template() a class function to be able to easier access
#     class variables
# sql/ha_innodb.cc
#   2006/06/04 18:52:09+03:00 monty@mysql.com +37 -44
#   Update to 'newer' table handler interface
#   - Update innobase_create_handler() to new interface
#   - Removed HA_NOT_EXACT_COUNT (not needed)
#   - Renamed HA_PRIMARY_KEY_ALLOW_RANDOM_ACCESS
#     to HA_PRIMARY_KEY_REQUIRED_FOR_POSITION.
#   - Prefixed base status variables with 'stats'
#   - Use table column bitmaps instead of ha_get_bit_in_read_set()
#   - Added ::reset(), with code from ::extra(HA_EXTRA_RESET)
#   - Removed HA_EXTRA_RETRIVE_ALL_COLS and HA_EXTRA_RETRIEVE_PRIMARY_KEY as
#     the table->read_set and table->write_set bitmaps now are accurate

ChangeSet@2006/06/02 22:21:32+02:00 guilhem@mysql.com 
#   First push for WL#3146 "less locking in auto_increment". It is a
#   0-real-change patch.
#   New prototype for get_auto_increment() (but new arguments not yet used),
#   to be able to reserve a finite interval of auto_increment values from
#   cooperating engines.
#   A hint on how many values to reserve is found in
#   handler::estimation_rows_to_insert,
#   filled by ha_start_bulk_insert(), new wrapper around start_bulk_insert().
#   NOTE: this patch changes nothing, for all engines.
#   But it makes the API ready for those
#   engines which will want to do reservation.
#   More csets will come to complete WL#3146.
ha_innodb.h, ha_innodb.cc: update to new prototype of get_auto_increment

ChangeSet@2006/05/28 14:51:01+02:00 serg@sergbook.mysql.com 
#   handlerton cleanup:
#   duplicate fields removed, st_mysql_storage_engine added to support
#   run-time handlerton initialization (no compiler warnings), handler API
#   is now tied to MySQL version, handlerton->plugin mapping added
#   (slot-based), dummy default_hton removed, plugin-type-specific
#   initialization generalized, built-in plugins are now initialized too,
#   --default-storage-engine no longer needs a list of storage engines
#   in handle_options().
#   
# sql/ha_innodb.h
#   2006/05/28 14:50:53+02:00 serg@sergbook.mysql.com +1 -1
#   handlerton cleanup: remove duplicate fields, add st_mysql_storage_engine,
#   initialize handlerton run-time to avoid compiler warnings
# 
# sql/ha_innodb.cc
#   2006/05/28 14:50:53+02:00 serg@sergbook.mysql.com +37 -52
#   handlerton cleanup: remove duplicate fields, add st_mysql_storage_engine,
#   initialize handlerton run-time to avoid compiler warnings

ChangeSet@2006/06/01 23:59:34+02:00 serg@serg.mylan 
#   second patch for make distcheck
ha_innodb.cc: enclose in #ifdef WITH_INNOBASE_STORAGE_ENGINE / #endif
2006-06-13 12:50:11 +00:00
marko
b93fa6788e dtype_get_max_size(): Remove UNIV_INLINE qualifier, as the function is
defined inside a .c file rather than an .ic file.
2006-06-09 19:57:03 +00:00
marko
a3daffde6a btr_cur_search_to_nth_level(): Reacquire btr_search_latch after inserting
to the insert buffer.  This was noticed while analyzing Bug #19081, but
this should not fix Bug #19081, since according to Heikki, btr_search_latch
is not reserved during an insert.
2006-06-09 19:54:58 +00:00
marko
f944979170 rw_lock_s_unlock_func(): Change a debug assertion to a production assertion
in order to track down Bug #19081.
2006-06-09 10:14:20 +00:00
osku
fb6d2015dc Revert r622 (innodb_sql table) as it was decided it's not appropriate for
the GPL InnoDB version.
2006-06-09 06:37:41 +00:00