Commit graph

40 commits

Author SHA1 Message Date
jimw@mysql.com
d6db387aea Merge mysql.com:/home/jimw/my/mysql-4.1-clean
into  mysql.com:/home/jimw/my/mysql-5.0-clean
2005-08-31 19:12:16 -07:00
jimw@mysql.com
37bf8394ab Add test for madvise() being declared in C++ code, because it is not
on Solaris even though it is available, and declare it ourselves in
that case. (Bug #7156)
2005-08-31 10:08:55 -07:00
ingo@mysql.com
ec15dda2bf Bug#10932 - Building server with key limit of 128, makes test cases fail
This patch allows to configure MyISAM for 128 indexes per table.
The main problem is the key_map, wich is implemented as an ulonglong.
To get rid of the limit and keep the efficient and flexible
implementation, the highest bit is now used for all upper keys.
This means that the lower keys can be disabled and enabled 
individually as usual and the high keys can only be disabled and
enabled as a block. That way the existing test suite is still
applicable, while more keys work, though slightly less efficient.
To really get more than 64 keys, some defines need to be changed.
Another patch will address this.
2005-07-19 14:13:56 +02:00
reggie@mdk10.(none)
2ffd3a3a61 Changes to allow 5.0.3 to compile on Windows after XA was pushed
logging_ok:
  Logging to logging@openlogging.org accepted
mi_packrec.c:
  Using HAVE_SYS_MMAN_H to protect include of sys/mman.h and replaced calls to mmap and munmap with my_mmap and my_munmap
mi_extra.c:
  Now using HAVE_SYS_MMAN_H to protect include of sys/mman.h
my_mmap.c:
  Changed how no mmap message is printed for Windows
sql_map.cc:
  Changed HAVE_MMAP to HAVE_SYS_MMAN_H and replaced calls to mmap and munmap with my_mmap and my_munmap
2005-02-23 16:29:03 -06:00
monty@mysql.com
5e03ebbcad After merge fixes
Cleanup of mi_print_error() handling
Deleted 'merge' directory
2004-12-31 03:47:56 +02:00
ingo@mysql.com
c39be2d0e7 WL#1895 - Print message to error log in case of detected MyISAM corruption
Changed my_error() to print error messages, which come from
arbitrary registered ranges of error messages. Messages can
be unregistered (and should be at end of the program).
Added registration of handler error messages.
Added a new mi_print_error() macro and a new 
mi_report_error() function, which supply error
messages with a table name.
Added calls to mi_print_error() or mi_report_error()
at all places in MyISAM, where table corruption is detected.
2004-12-23 20:11:38 +01:00
ingo@mysql.com
7216c3b272 WL#1648 - Start/Stop Inserting Duplicates Into a Table 2004-03-18 16:47:16 +01:00
monty@mysql.com
0eb6070068 Code cleanup
Fixed bug in optimizer where it didn't choose right table order in some cases
2004-01-19 23:51:17 +01:00
monty@mysql.com
b7de8a0bc6 Change to use real_sleep to make test work in build environment 2003-11-25 23:14:49 +02:00
monty@mysql.com
7c6113a39f Merge key cache structures to one
Fixed compiler warnings (IRIX C compiler and VC++)
2003-11-20 22:06:25 +02:00
monty@mashka.mysql.fi
cab1dc628c CLIENT_MULTI_QUERIES -> CLIENT_MULTI_STATEMENTS
New multi-key-cache handling. This was needed becasue the old one didn't work reliable with MERGE tables.
ALTER TABLE table_name ... CHARACTER SET  ... now changes all char/varchar/text columns to the given character set
(One must use ALTER TABLE ... DEFAULT CHARACTER SET ... to change the default character set)
Fixed that have_compress is detected properly (fixes problems with func_compress.test on platforms without zlib)
New syntax for CACHE INDEX ('keys' is optional if no index name is given and one mentions the key cache name only ones)
Removed compiler warnings
Added mysql_set_server_option() to allow clients like PHP to easaily set/reset the multi-statement flag.
2003-11-18 13:47:27 +02:00
monty@narttu.mysql.fi
4e4725377d Merge with 4.0 2003-11-04 09:40:36 +02:00
monty@mysql.com
4668b54837 Call my_sync() after all data is written to .frm file
Added my_sync() to mysys which will do fsync/fdatasync/_commit() on a file.
2003-11-02 15:55:02 +02:00
igor@rurik.mysql.com
40193a7fa5 Manual merge 2003-08-26 00:13:22 -07:00
monty@mashka.mysql.fi
2263e3e51f Merge with 4.0.14 2003-08-11 22:44:43 +03:00
igor@rurik.mysql.com
9306f55d8e Many files:
Added key cache assignment
mi_locking.c:
  Added key cache assignment: correction
my_sys.h:
  Added key cache variable structure
2003-08-02 02:43:18 -07:00
monty@mashka.mysql.fi
b2cbd83913 Fixed bug in ALTER TABLE ... DISABLE/ENABLE KEYS
Removed double my_thread_end() which caused fatal error on windows if mysqld died on startup
2003-07-08 23:58:04 +03:00
igor@rurik.mysql.com
10a8adc1b5 Many files:
Added multiple key cache
2003-06-30 09:41:41 -07:00
igor@rurik.mysql.com
f547f2769f Many files:
New feature: preload indexes into key cache.
mi_preload.c:
  new file
Many files:
  Added preload statement.
2003-06-12 04:29:02 -07:00
monty@mashka.mysql.fi
3c08da957e Don't count NULL values in cardinalty for MyISAM tables.
Free row buffer cache after each query for MyISAM tables.
Added table join option FORCE INDEX
Fixed core dump bug when connecting with hostname that could not be resolved.
2003-01-09 02:19:14 +02:00
serg@serg.mysql.com
b42eff16cb bulk insert code optimized 2002-12-07 22:40:20 +01:00
monty@mashka.mysql.fi
6603d75213 New multi-table-update code
New (simpler) internal timestamp handling.
More debuging to heap tables.
Small cleanups to multi-table-delete
false -> 0 and true -> 1  (We should use TRUE and FALSE)
2002-11-29 16:40:18 +02:00
monty@mashka.mysql.fi
f638ee6df9 Added code to flush a bulk_insert index.
This fixes a bug when doing multi-row inserts on table with an auto_increment key that is not in the first key segment.
2002-09-18 21:04:49 +03:00
serg@sergbook.mysql.com
43ef1198e9 MyISAM: always store alloced_rec_buff_length with the buffer itself 2002-07-26 14:42:51 +02:00
monty@mashka.mysql.fi
c702a1f8fd Removed wrong implementation of CUBE/ROLLUP
Fixed bugfix of INSERT ... SET db_name.table_name.column_name
Changed locking to external-locking
Fix client hangup for some invalid SQL queries.
2002-07-24 19:55:08 +03:00
monty@mashka.mysql.fi
dddc20d9d1 New SET syntax & system variables.
Made a some new buffers thread specific and changeable.
Resize of key_buffer.
AUTO_COMMIT -> AUTOCOMMIT
Fixed mutex bug in DROP DATABASE
Fixed bug when using auto_increment as second part of a key where first part could include NULL.
Split handler->extra() to extra() and extra_opt() to be able to support thread specific buffers.
Don't write message to error log when slave reconnects becasue of timeout.
Fixed possible update problem when using DELETE/UPDATE on small tables
(In some cases we used index even if table scanning would be better)
A lot of minior code cleanups
2002-07-23 18:31:22 +03:00
serg@sergbook.mysql.com
3f6491e3eb yet another generalization for rec_buff handling, MI_INFO doesn't need rec_alloc anymore 2002-07-14 13:51:03 +02:00
serg@sergbook.mysql.com
0ae810ae85 mi_fix_rec_buff_for_blob() generalized a bit 2002-07-09 22:42:44 +02:00
monty@hundin.mysql.fi
df5f8c18eb Move HA_EXTRA_NO_READCHECK to ha_open
Fixed bug in multi-table-delete
2002-01-16 23:02:26 +02:00
monty@hundin.mysql.fi
b658662ae4 Update copyright
Fixed memory leak on shutdown (Affects the embedded version & MyODBC)
2001-12-06 14:10:51 +02:00
monty@hundin.mysql.fi
bfc7394ec3 Fixed bug in UNION when doing UNION with the same tables 2001-09-17 22:44:51 +03:00
monty@hundin.mysql.fi
a1be2a894f Fix of UNION code
Added heap_delete_table
Added HA_EXTRA_PREPARE_FOR_DELETE
Added and use my_dup() for faster open of tables.
Removed not working no-mix-table-type
2001-08-19 14:43:51 +03:00
serg@serg.mysql.com
15b6738474 memory-limited tree
bulk inserts optimization: caching keys in binary tree
2001-07-02 21:18:57 +02:00
serg@serg.mysql.com
c3039e8005 ALTER TABLE ... DISABLE/ENABLE KEYS, code cleanup 2001-05-24 13:14:25 +02:00
monty@donna.mysql.fi
65822120f5 Fixed bug in ALTER TABLE
Removed _mi_rkey() function
New fork_big.pl multi-thread test
2001-04-01 13:45:48 +03:00
monty@donna.mysql.com
c1b5a5b00f Removed not used variable 'last_ref'
Fixed problem with negative DECIMAL() keys
Fixed some bugs with NULL keys in BDB
More mysql-test tests
2001-01-16 06:02:05 +02:00
monty@tik.mysql.com
9323e733ff Changed meaning of HA_EXTRA_RESET and start of hidden primary keys for BDB tables 2000-10-15 18:45:53 +03:00
monty@donna.mysql.com
a9e11f2378 Small fixes for release 2000-09-26 22:39:45 +03:00
monty@donna.mysql.com
a753a3a2ce Updated benchmark and results for PostgreSQL 7.0.2
Added more status to the MyISAM files to avoid checking files that
has already been checked.
2000-08-18 12:48:00 +03:00
bk@work.mysql.com
f4c589ff6c Import changeset 2000-07-31 21:29:14 +02:00