Commit graph

45 commits

Author SHA1 Message Date
Rich Prohaska
91fd3047d0 translate DB_LOCK_NOTGRANTED to ER_CANT_LOCK. addresses #624
git-svn-id: file:///svn/mysql/tokudb-engine/src@3233 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:39 -04:00
Rich Prohaska
c03700308e cleanup table files if a create fails. closes #624
git-svn-id: file:///svn/mysql/tokudb-engine/src@3216 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:39 -04:00
Rich Prohaska
f21910376c fix the EDOM errors by makeing the key compare function implement a total order on the key space (including key prefixes), and using DB_SET_RANGE in place of DB_SET for cursor operations. closes #576 closes #587
git-svn-id: file:///svn/mysql/tokudb-engine/src@3211 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:39 -04:00
Rich Prohaska
06e3b10a09 limit table create for auto increment keys. closes #539
git-svn-id: file:///svn/mysql/tokudb-engine/src@3202 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:39 -04:00
Rich Prohaska
2ee2ad741f fix the problem with mysql unpack_key implementation. closes #561
git-svn-id: file:///svn/mysql/tokudb-engine/src@3187 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:39 -04:00
Rich Prohaska
1e2322e7f6 add tracing at the mysql handler/ton interfaces
git-svn-id: file:///svn/mysql/tokudb-engine/src@3079 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:39 -04:00
Rich Prohaska
97a0e797b8 fix the DEBUG=0 build. addresses #317
git-svn-id: file:///svn/mysql/tokudb-engine/src@3072 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:39 -04:00
Rich Prohaska
8b2d9d763f add tokudb_version string derived from the build branch name. closes #597
git-svn-id: file:///svn/mysql/tokudb-engine/src@3070 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:39 -04:00
Rich Prohaska
9eca3c07be rearrange the debug tracing
git-svn-id: file:///svn/mysql/tokudb-engine/src@3068 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:39 -04:00
Rich Prohaska
90b526a5cd file->offset(addr) were assuming addr was within the field's record, which is not always the case. closes #592
git-svn-id: file:///svn/mysql/tokudb-engine/src@3058 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:39 -04:00
Rich Prohaska
cebc556c2a get_auto_increment consumes only the desired number of sequential numbers
from the last auto increment number.  this makes insertions of multiple rows
work.



git-svn-id: file:///svn/mysql/tokudb-engine/src@3049 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:39 -04:00
Rich Prohaska
b5ed627eba simplify the config and build. addresses #317
git-svn-id: file:///svn/mysql/tokudb-engine/src@3017 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:39 -04:00
Rich Prohaska
eb891d74ca add PREFIX_KEY_OR_PREV index match. closes #488
git-svn-id: file:///svn/mysql/tokudb-engine/src@3009 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:39 -04:00
Rich Prohaska
0a8c2c08bd add some debug tracing to the handlerton.
git-svn-id: file:///svn/mysql/tokudb-engine/src@2978 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:39 -04:00
Rich Prohaska
7cbe15cdaa add commit_sync thread variable. closes #525
git-svn-id: file:///svn/mysql/tokudb-engine/src@2957 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:39 -04:00
Rich Prohaska
197e8ffe49 implement auto increment for primary keys in which the first field is the auto increment field. addresses #541
git-svn-id: file:///svn/mysql/tokudb-engine/src@2928 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:39 -04:00
Rich Prohaska
81d56a515b fix the simple auto increment bug. close #531
git-svn-id: file:///svn/mysql/tokudb-engine/src@2801 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:39 -04:00
Rich Prohaska
44106094a8 debugging falcon_bug_22845 crash
git-svn-id: file:///svn/mysql/tokudb-engine/src@2785 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:39 -04:00
Rich Prohaska
475fa2358f tokudb does not implement the DB_RMW cursor get flag. updates were gettting EINVAL fromthe storage engine. tokudb turns read locks into write locks when required, to the flag is just an optimization. we plan on replacing the affected code with the tokudb delete both method in the future.
git-svn-id: file:///svn/mysql/tokudb-engine/src@2769 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:39 -04:00
Rich Prohaska
0aedad5d98 port to mysql-5.1.23. close #486
git-svn-id: file:///svn/mysql/tokudb-engine/src@2621 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:39 -04:00
Rich Prohaska
a631ac8747 fix the dump restore crash. close #474
git-svn-id: file:///svn/mysql/tokudb-engine/src@2590 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:39 -04:00
Rich Prohaska
bf82bd1707 read the status db with a cursor under a transaction. close #461
git-svn-id: file:///svn/mysql/tokudb-engine/src@2514 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:39 -04:00
Rich Prohaska
13945f1987 honor UNIQUE_CHECKS=0 in secondary index writes. close #462
git-svn-id: file:///svn/mysql/tokudb-engine/src@2513 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:39 -04:00
Rich Prohaska
1f97a790c0 add tokudb_data_dir system variable. close #458
git-svn-id: file:///svn/mysql/tokudb-engine/src@2510 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:39 -04:00
Rich Prohaska
2782323015 use DB_NEXT_NODUP to handle b > 10 expressions in which the index has duplicates
git-svn-id: file:///svn/mysql/tokudb-engine/src@2453 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:39 -04:00
Rich Prohaska
4f9dc23b1e add the tokudb_logdir variable. close #453
git-svn-id: file:///svn/mysql/tokudb-engine/src@2445 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:38 -04:00
Rich Prohaska
035e5ea706 fix the index_read method. close #449
git-svn-id: file:///svn/mysql/tokudb-engine/src@2444 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:38 -04:00
Rich Prohaska
453cfa4c62 implement ::index_read using BDB cursor ops. address #440
git-svn-id: file:///svn/mysql/tokudb-engine/src@2405 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:38 -04:00
Rich Prohaska
d09dc67696 build with gcc warnings on
git-svn-id: file:///svn/mysql/tokudb-engine/src@2403 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:38 -04:00
Rich Prohaska
25a4286b74 the key compare function should just compare 2 keys without any other context.
the old key compare function uses extra context: the bdb_return_if_eq and insert_or_update.  this will not work in tokudb as keys are compared after the insert has already completed.  

the bdb_return_if_eq will be replaced with some new cursor operations.  the insert_or_update feature applies to varchar keys (and is not compiled into the 5.1.22 code).



git-svn-id: file:///svn/mysql/tokudb-engine/src@2400 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:38 -04:00
Rich Prohaska
dc73aaa5fa implement UNIQUE_CHECKS=0 in the tokudb storage engine. close #428
git-svn-id: file:///svn/mysql/tokudb-engine/src@2369 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:38 -04:00
Rich Prohaska
0e3de4b409 first attempt at UNIQUE_CHECKS=0. address #309
git-svn-id: file:///svn/mysql/tokudb-engine/src@2361 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:38 -04:00
Rich Prohaska
5b9609ff73 put the status update cursor inside of a transaction. close #426
git-svn-id: file:///svn/mysql/tokudb-engine/src@2353 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:38 -04:00
Rich Prohaska
7c1b5cc90e use db->open DB_AUTO_COMMIT close #386
git-svn-id: file:///svn/mysql/tokudb-engine/src@2350 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:38 -04:00
Rich Prohaska
1c5092016b init the locks. close #382
git-svn-id: file:///svn/mysql/tokudb-engine/src@2344 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:38 -04:00
Rich Prohaska
7f9c7524d6 set the cachesize to 1/8 of memory. close #391
git-svn-id: file:///svn/mysql/tokudb-engine/src@2337 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:38 -04:00
Rich Prohaska
065ec3a317 use default implementation of ::check ::optimize ::analyze
remove savepoints



git-svn-id: file:///svn/mysql/tokudb-engine/src@2334 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:38 -04:00
Rich Prohaska
3b23425d35 work todo marked with QQQ in the code
git-svn-id: file:///svn/mysql/tokudb-engine/src@2269 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:38 -04:00
Rich Prohaska
6cd8a96b09 mark questionable code with QQQ addresses #317
git-svn-id: file:///svn/mysql/tokudb-engine-test4/src@2159 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:37 -04:00
Rich Prohaska
40eda9e9a6 get create index working again. addresses #345
git-svn-id: file:///svn/mysql/tokudb-engine-test3/src@2139 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:36 -04:00
Rich Prohaska
55d71516af add .tdb to the table dir name to get drop database to work when there still exists tables in it. closes #345
git-svn-id: file:///svn/mysql/tokudb-engine-test3/src@2137 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:36 -04:00
Rich Prohaska
b62bc567b6 create unique index now works.
tokudb does not correctly implement multiple databases per file as the database flags are not duplicated.  so we put all of the databases in a directory with the table name as the directory name.



git-svn-id: file:///svn/mysql/tokudb-engine-test3/src@2128 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:36 -04:00
Rich Prohaska
a26ce12978 fix the mysqld crash when a create index fails. closes #334
git-svn-id: file:///svn/mysql/tokudb-engine-test2/src@2100 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-05 20:02:26 +00:00
Rich Prohaska
d5802f4ba6 fix DBUG_RETURN in the ::create_key method. addresses #317
git-svn-id: file:///svn/mysql/tokudb-engine-test2/src@2096 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-05 16:23:26 +00:00
Rich Prohaska
77138002ca build the tokudb storage engine. addresses #317
git-svn-id: file:///svn/mysql/tokudb-engine-test2/src@2095 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-05 16:00:53 +00:00