summaryrefslogtreecommitdiff
path: root/sql/handler.h
Commit message (Collapse)AuthorAgeFilesLines
* Merge baker@bk-internal.mysql.com:/home/bk/mysql-4.1brian@avenger.(none)2004-08-131-1/+1
|\ | | | | | | into avenger.(none):/export/brian/tina-4.1
| * This is the addition of the CSV engine "aka tina". Its an example engine ↵brian@avenger.(none)2004-08-121-1/+1
| | | | | | | | that works as a plain text file.
* | BUG#4892 TRUNCATE TABLE returns error 156magnus@neptunus.(none)2004-08-041-1/+2
|/ | | | | Added NDBCLUSTER to table types which does not support generate. Added test case for truncate.
* New handler::index_flags() definition to make it easy to check the full used ↵monty@mysql.com2004-07-081-1/+1
| | | | | | | key and a specific key part. Added key part to optimize_range() to fix problems when using fields in key parts.
* Merge bk-internal.mysql.com:/home/bk/mysql-4.1/serg@serg.mylan2004-06-301-1/+1
|\ | | | | | | into serg.mylan:/usr/home/serg/Abk/mysql-4.1
| * fowwlowup fixes for index_flags()serg@serg.mylan2004-06-301-1/+1
| |
* | Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.1ram@gw.mysql.r18.ru2004-06-291-1/+2
|\ \ | |/ |/| | | into gw.mysql.r18.ru:/usr/home/ram/work/4.1.b4089
| * a fix (bug #4304: TRUNCATE <table of type BDB> , wrong result).ram@gw.mysql.r18.ru2004-06-291-1/+2
| |
* | Added missing root user to mysql.user on windows. (Bug #4242)monty@mysql.com2004-06-251-2/+2
|/ | | | | | | Set default max_allowed_packet to be able to read help tables even if an my.cnf file with this option is present. (Bug #3938) Don't use default arguments for ha_rnd_init() Simple code cleanups since last pull
* One more const method.konstantin@mysql.com2004-06-251-1/+1
|
* Followup to cleanup in handler interface.konstantin@mysql.com2004-06-251-2/+2
|
* Final part of WL#1717 "innodb/binlog consistency". This is to resolveguilhem@mysql.com2004-06-241-1/+1
| | | | | | | | | | a limitation of yesterday's implementation: if there was an unfinished transaction (COMMIT not typed), and some MyISAM tables were then updated, and then mysqld crashes, then at restart the server would use the too old binlog offset known by InnoDB to cut the binlog, thus cutting the successful MyISAM updates. We fix this by reporting the binlog offset into InnoDB even if InnoDB was not affected at all by the update. But the feature is still disabled until we decide if it can go into 4.1.3.
* mergedserg@serg.mylan2004-06-231-99/+161
|\
| * handler interface cleanups:serg@serg.mylan2004-06-231-99/+161
| | | | | | | | | | | | | | | | more logical table/index_flags return HA_ERR_WRONG_COMMAND instead of abstract methods where appropriate max_keys and other limits renamed to max_supported_keys/etc max_keys/etc are now wrappers to max_supported_keys/etc ha_index_init/ha_rnd_init/ha_index_end/ha_rnd_end are now wrappers to real {index,rnd}_{init,end} to enforce strict pairing
* | WL#1689 "Map OPTIMIZE TABLE to ALTER TABLE for InnoDB"guilhem@mysql.com2004-06-101-0/+1
| | | | | | | | exactly it's mapped to "ALTER TABLE t; ANALYZE TABLE t;"
* | Merge baker@bk-internal.mysql.com:/home/bk/mysql-4.1brian@brian-akers-computer.local2004-06-051-1/+1
|\ \ | |/ |/| | | into brian-akers-computer.local:/Users/brian/mysql/mysql-4.1
| * Added tests for archive. Cleaned up a merge mistake and added some ↵brian@avenger.(none)2004-05-251-1/+1
| | | | | | | | information on how well archive compresses.
| * Archive mergebrian@brian-akers-computer.local2004-05-221-33/+43
| |
| * First commit of archive example. Archive is a simple storage engine that ↵brian@avenger.(none)2004-05-201-1/+1
| | | | | | | | handles inserts and selects.
* | New patch to ensure that InnoDB gets values for CFLAGS and CXXFLAGSmonty@mysql.com2004-05-281-2/+2
| |
* | Fixed prototype of get_error_message to use String to return error messagemagnus@neptunus.(none)2004-05-241-1/+1
| | | | | | | | WL#1747 and #1746 allow user to decide if ordered index should be created or not
* | Mergemagnus@neptunus.(none)2004-05-171-17/+8
|\ \
| * | key_cmp -> key_cmp_if_samemonty@mishka.local2004-05-161-17/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | New records_in_range() interface (similar to read_range()) Macros for faster bitmap handling Simplify read_range() code (#WL1786) New general key_cmp() function to compare keys
* | | WL #1729 Handler: error text for NDB errorsmagnus@neptunus.(none)2004-05-131-0/+1
|/ / | | | | | | | | | | - New solution after discussions with Sergei, no handler specific code or error messages should be in sql layer. next_result, only check for error if check is -1 Improved index_read
* | Merge mysql.com:/home/mydev/mysql-4.1ingo@mysql.com2004-05-071-3/+11
|\ \ | | | | | | | | | into mysql.com:/home/mydev/mysql-4.1-wl1687
| * | WL#1687 - Optimize UNION DISTINCT ... UNION ALL (again).ingo@mysql.com2004-05-061-3/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | HEAP: Copies the key count to a backup variable and sets the key count to zero. That way, no HEAP function will ever try to touch any index. Re-enabling is done by copying back the backup variable. To avoid memory leak at table close, disable deletes all index trees. Re-enabling must be done with empty indexes and data anyway. Otherwise, the indexes would need to be repaired, wich HEAP is not capable of. MyISAM: Only the key_map is cleared and set. Re-enabling must be done with empty indexes and data. Otherwise, repair needs to be done which will enable all keys persistently. The former implementation disabled only non-unique keys and maked this persistent. The new implementation additionally can disable all keys, but only without making this persistent. Re-enabling all keys can be done without repair, if data file and indexes are empty.
* | | Fixed (portability) bug in handler.h, and tried to silence cast warnings on ↵pem@mysql.comhem.se2004-05-061-3/+3
| | | | | | | | | | | | some platforms.
* | | avoid using ndb tables in query cachebell@sanja.is.com.ua2004-05-051-2/+4
|/ /
* | Merge conflicts with EXAMPLE handlermagnus@neptunus.(none)2004-04-151-8/+17
|\ \ | |/ |/|
| * Added NDB storage enginemagnus@neptunus.(none)2004-04-151-8/+16
| |
* | Merge baker@bk-internal.mysql.com:/home/bk/mysql-4.1brian@brian-akers-computer.local2004-04-141-1/+1
|\ \ | |/ |/| | | into brian-akers-computer.local:/Users/brian/mysql/mysql-4.1-examples
| * All changes are to allow someone to compile the example storage engine and ↵brian@brian-akers-computer.local2004-04-121-1/+1
| | | | | | | | use it.
* | Don't enable HA_EXTRA_WRITE_CACHE if too few rowsmonty@mysql.com2004-04-081-4/+4
| | | | | | | | | | Revert main parts of patch for online index builds. Should be done differently Added support for %lx in my_snprintf()
* | Merge bk-internal.mysql.com:/home/bk/mysql-4.1monty@mysql.com2004-04-081-0/+20
|\ \ | | | | | | | | | into mysql.com:/home/my/mysql-4.1
| * | Moved reading of ranges from opt_range.cc to handler.ccmonty@mysql.com2004-04-081-0/+20
| |/ | | | | | | | | This gives the handler more optimization possiblities and is needed for NDB cluster Fixed not-initialized memory error detected by valgrind
* | mergedserg@serg.mylan2004-04-071-5/+6
|\ \
| * | ::reset(), HA_FAST_KEY_READ, disable_indexes(), enable_indexes(), ↵serg@serg.mylan2004-04-061-5/+6
| |/ | | | | | | | | | | start_bulk_insert(), end_bulk_insert() Field::val_str simplification, comment
* | Hand-resolved auto mergeingo@mysql.com2004-04-071-0/+28
|\ \ | |/ |/|
| * Worklog#1563 - Support of on-line CREATE/DROP INDEX.ingo@mysql.com2004-03-301-0/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is to enable table handlers to implement online create/drop index. It consists of some parts: - New default handler methods in handler.h - Split of mysql_alter_table. It decides if only one kind of alteration is to be done (e.g. only create indexes or only drop indexes etc.) It then calls the specialized new handler method if the handler implements it. Otherwise it calls real_alter_table. - The parser sets flags for each alter operation detected in a command. These are used by mysql_alter_table for the decision. - mysql_prepare_table is pulled out of mysql_create_table. This is also used by mysql_create_index to prepare the key structure array for the handler. It is also used by mysql_create_index and mysql_drop_index to prepare a call to mysql_create_frm. - mysql_create_frm is pulled out of rea_create_table for use by mysql_create_index and mysql_drop_index after the index is created/dropped. Thanks to Antony who supplied most of the changes.
* | fixed bug #2342 vva@eagle.mysql.r18.ru2004-03-271-0/+1
|/ | | | "Running ANALYZE TABLE on bdb table inside a transaction hangs server thread"
* Merge with 4.0.18monty@mysql.com2004-02-111-5/+11
|\
| * Code cleanupsmonty@mysql.com2004-02-101-2/+3
| |
| * row0mysql.c:heikki@hundin.mysql.fi2004-02-091-0/+2
| | | | | | | | | | | | Allow always DROPping of a table which is only referenced by FOREIGN KEY constraints from the same table Many files: Do not let REPLACE to perform internally an UPDATE if the table is referenced by a FOREIGN KEY: the manual says that REPLACE must resolve a duplicate key error semantically with DELETE(s) + INSERT, and not by an UPDATE; the internal update caused foreign key checks and cascaded operations to behave in a semantically wrong way
| * Fix for BUG#2477 "Slave stop with error after master reboot if use HEAP tables":guilhem@mysql.com2004-01-301-1/+2
| | | | | | | | | | | | | | | | | | | | | | when we open the HEAP table for the first time since server restart, in hp_open(), we set a flag to propagate this info to the handler level which then writes a DELETE FROM this_heap_table to the binlog. It is not a perfect solution for the bug, because between the server start and the first open of the table, the slave still had old data in his table so a SELECT on the slave may show wrong content. But if there is a --init-file to populate the HEAP table on master as startup, then this is a safe fix (I'll put a note about init-file in the HEAP section of the manual).
| * Some small portability fixes.monty@mysql.com2003-12-301-3/+6
| | | | | | | | | | Added support for lower_case_table_names=2, which is to be used on case insensitive file systems. This tells MySQL to preserve the used case of filenames and database names to make it esier to move files between cases sensitive can case insensitive file systems (like Windows and Linux)
* | WorkLog #1323 (part 2)antony@ltantony.rdg.cyberkinetica.homeunix.net2003-12-171-1/+1
| | | | | | | | | | | | New Statement: SHOW [STORAGE] ENGINES New System Variable: storage_engine New mysqld Argument: --default-storage-engine=
* | WorkLog#1280 - Remove fixed table handler from lex/yaccantony@ltantony.rdg.cyberkinetica.homeunix.net2003-12-021-1/+11
| |
* | Merge key cache structures to onemonty@mysql.com2003-11-201-8/+8
| | | | | | | | Fixed compiler warnings (IRIX C compiler and VC++)
* | CLIENT_MULTI_QUERIES -> CLIENT_MULTI_STATEMENTSmonty@mashka.mysql.fi2003-11-181-2/+8
| | | | | | | | | | | | | | | | | | | | 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.
* | Merge bk-internal:/home/bk/mysql-4.1/serg@serg.mylan2003-10-311-2/+5
|\ \ | | | | | | | | | into serg.mylan:/usr/home/serg/Abk/mysql-4.1