Commit graph

1063 commits

Author SHA1 Message Date
Rich Prohaska
f50ca6bed4 fix the ATIS test SELECT failure by adding a dup compare function for the primary key. closes #637
git-svn-id: file:///svn/mysql/tokudb-engine/src@3491 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:40 -04:00
Rich Prohaska
ccd4a0b09a dont delete an uninitialized pointer. closes #707
git-svn-id: file:///svn/mysql/tokudb-engine/src@3485 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:40 -04:00
Yoni Fogel
761bef7880 Addresses #701
Save comparison function in handlerton
Currently supports all pure integer types



git-svn-id: file:///svn/mysql/tokudb-engine/src@3476 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:40 -04:00
Rich Prohaska
a1049ccc47 remove the subdatabase names from the tokudb databases. addresses #703
git-svn-id: file:///svn/mysql/tokudb-engine/src@3460 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:40 -04:00
Rich Prohaska
510a82718f cleanup the cleanup log files function. addresses #702
git-svn-id: file:///svn/mysql/tokudb-engine/src@3455 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:40 -04:00
Rich Prohaska
d98d0ca86a show engine tokudb logs always reports nothing. the tokudb log_archhive function always returns EINVAL since it does not support flags!=0. set log_archive flags=0 for tokudb to avoid EINVAL return. addresses #697
git-svn-id: file:///svn/mysql/tokudb-engine/src@3450 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:40 -04:00
Rich Prohaska
4cd5722177 cleanup the ::get_status function. closes #657
git-svn-id: file:///svn/mysql/tokudb-engine/src@3313 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:40 -04:00
Rich Prohaska
257c7b13c5 remove ha_tokudb::index_read_last and use the default implementation. closes #645
git-svn-id: file:///svn/mysql/tokudb-engine/src@3287 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:40 -04:00
Vincenzo Liberatore
dc4573802f Addresses #629 Remove some tracking code
git-svn-id: file:///svn/mysql/tokudb-engine/src@3282 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:40 -04:00
Zardosht Kasheff
968b3369cf addresses #648
dereferencing value in debug statement that could be NULL
this fixes it.

git-svn-id: file:///svn/mysql/tokudb-engine/src@3276 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:40 -04:00
Yoni Fogel
e32ce57034 Addresses #648
Updated ha_tokudb::index_read and comparison functions based on code review.
Also put in some (very informal) comments about how index_read is supposed to work.

git-svn-id: file:///svn/mysql/tokudb-engine/src@3275 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:40 -04:00
Vincenzo Liberatore
62a3b58ba1 Addresses #629 Some changes to the handlerton to track down the error
git-svn-id: file:///svn/mysql/tokudb-engine/src@3274 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:40 -04:00
Vincenzo Liberatore
0f527440cf Addresses #628 See mysql/doc/deadlock.txt and change history in this ticket for further comments
git-svn-id: file:///svn/mysql/tokudb-engine/src@3243 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:40 -04:00
Rich Prohaska
afb13965f3 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
4da98dadd6 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
97bb315848 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
e34a3e7851 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
Zardosht Kasheff
9d9b533fed added executebit for configure
git-svn-id: file:///svn/mysql/tokudb-engine/src@3190 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:39 -04:00
Rich Prohaska
2eda3c1080 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
e492a3cfe0 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
1bf8b92f91 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
f84d63089e 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
15f55a7d09 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
ba1cb2251f 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
36b52aef6c 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
1bad2b1ffd add build variables to control DEBUG and GCOV builds. addresses #317
git-svn-id: file:///svn/mysql/tokudb-engine/src@3021 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:39 -04:00
Rich Prohaska
13b679ae5a the -nostdlib prohibits coverage compiles to work. addresses #363
git-svn-id: file:///svn/mysql/tokudb-engine/src@3020 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:39 -04:00
Rich Prohaska
12d7fdbbb7 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
1e0b6b3210 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
253344a05b 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
f67069417f 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
25bba8f296 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
17562ace58 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
39f2ee5709 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
6eb3ef8469 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
c7b0b5f904 fix the tokudb engine build library path
git-svn-id: file:///svn/mysql/tokudb-engine/src@2676 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:39 -04:00
Rich Prohaska
711ade7407 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
e0ffaea6e6 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
f0ecfc630c 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
deba4ef131 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
49a4083877 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
5f796a9568 add --with-tokudb to the configure script. address #390
git-svn-id: file:///svn/mysql/tokudb-engine/src@2467 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:39 -04:00
Rich Prohaska
c0ed61202e 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
f3652fc599 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
5cad5897fc 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
65e13739a8 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
21ff0ca031 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
732bc55f03 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
8cff28773a 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
6c6123fbc2 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
0b1ccfc197 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
4dfbf2055d 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
aafd884cd5 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
fc732b061c 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
8dcbbdda3e 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
1cff4dacc4 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
ae86fa427c 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
d92e043147 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
d7f0a226cf 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
76ae9404bc 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
0cdcce9c27 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
5aee624950 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
9e4247cc87 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