Commit graph

68 commits

Author SHA1 Message Date
Yoni Fogel
83eee5663a Addresses #1396
Merge tokudb.1396 back into main

git-svn-id: file:///svn/toku/tokudb@9110 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:39 -04:00
Bradley C. Kuszmaul
14bdceffe6 Get rid of {{{DB_PREV_DUP}}} from the 4.6 version of {{{db.h}}}. Addresses #1412.
git-svn-id: file:///svn/toku/tokudb@9109 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:39 -04:00
Bradley C. Kuszmaul
85f355d631 Improve error messages and error handling when writes fail.
* Fixes #78 ({{{lg_bsize}}} works)
 * Fixes #1323 (write errors)
Did
{{{
svn merge -r8967:9031 https://svn.tokutek.com/tokudb/toku/tokudb.1323a
}}}

(And I'll delete the 1323 branches in a moment.)


git-svn-id: file:///svn/toku/tokudb@9032 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:38 -04:00
Bradley C. Kuszmaul
3c6cbdbf42 Create a test for #1389. Addresses #1389.
git-svn-id: file:///svn/toku/tokudb@8802 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:38 -04:00
Bradley C. Kuszmaul
1ea88e0c8a More hacking on dlmalloc. Addresses #1032, #1328, #1343.
git-svn-id: file:///svn/toku/tokudb.1032b+1343@8476 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:34 -04:00
Bradley C. Kuszmaul
316c7f118b Add {{{db_env_set_func_malloc}}}, {{{db_env_set_func_realloc}}}, and {{{db_env_set_func_free}}}. Addresses #1343, #1032, #1328. Tests don't pass
git-svn-id: file:///svn/toku/tokudb.1032b+1343@8474 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:34 -04:00
Rich Prohaska
63df00fc53 merge read uncommited changes to the dev branch. addresses #1201
git-svn-id: file:///svn/toku/tokudb.1195@7681 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:25 -04:00
Yoni Fogel
df75b272c5 Addresses #182
Add headers for DB->delboth

git-svn-id: file:///svn/tokudb@5700 c7de825b-a66e-492c-adef-691d508d4ae1
2008-08-18 03:27:56 +00:00
Yoni Fogel
18b35fc088 Addresses #993
Merge branch 993 back into main.

git-svn-id: file:///svn/tokudb@5141 c7de825b-a66e-492c-adef-691d508d4ae1
2008-07-16 22:23:29 +00:00
Bradley C. Kuszmaul
3381558927 Print all the extra functions when building the h files. Fixes #1005.
git-svn-id: file:///svn/tokudb@5012 c7de825b-a66e-492c-adef-691d508d4ae1
2008-07-09 16:55:59 +00:00
Yoni Fogel
83bd37f5bc Addresses #908
Add DB->pre_acquire_table_lock to headers

git-svn-id: file:///svn/tokudb@4479 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-11 19:38:51 +00:00
Yoni Fogel
5764fdef8e Addresses #904
Add DB_PRELOCKED_WRITE flag

git-svn-id: file:///svn/tokudb@4462 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-10 19:46:00 +00:00
Bradley C. Kuszmaul
750998c9da Implement {{{DBC->c_getf_next}}}, with a simple test. Addresses #902.
git-svn-id: file:///svn/tokudb@4452 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-10 15:39:31 +00:00
Yoni Fogel
d9e9792d8c Addresses #893
Parameters to pre_lock are supposed to be const DBT*'s instead of DBT*'s.

git-svn-id: file:///svn/tokudb@4403 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-06 18:09:04 +00:00
Yoni Fogel
e22d67bb8e Addresses #893
Implement db->pre_acquire_read_lock(), db->dbt_pos_infty(), and db->dbt_neg_infty()
functions.

Example usage to lock entire table:
db->pre_acquire_read_lock(db, txn, db->dbt_neg_infty(), NULL, db->dbt_pos_infty(), NULL);
(Above is for db with no duplicates, i.e. primary index).

For db with duplicates:
db->pre_acquire_read_lock(db, txn, db->dbt_neg_infty(), db->dbt_neg_infty(), db->dbt_pos_infty(), db->dbt_pos_infty());

Will return same lock error codes as db calls do (when locks fail).
0 = success
DB_LOCK_NOTGRANTED = failed to obtain the lock.
We can theoretically sleep and try again here.

If you want to grab from DBT* A to infinity..
db->pre_acquire_read_lock(db, txn, A, NULL, db->dbt_pos_infty(), NULL);


git-svn-id: file:///svn/tokudb@4402 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-06 17:50:38 +00:00
Yoni Fogel
f32fcb751b Closes #777
omt used to replaced libredblack


git-svn-id: file:///svn/tokudb@3986 c7de825b-a66e-492c-adef-691d508d4ae1
2008-05-16 20:09:13 +00:00
Bradley C. Kuszmaul
363b8d8dba Create the header needed for keyrange64. Addresses #90.
git-svn-id: file:///svn/tokudb@3934 c7de825b-a66e-492c-adef-691d508d4ae1
2008-05-13 13:07:25 +00:00
Bradley C. Kuszmaul
a636c8f7e3 Work on trace implementation. Addresses #701.
git-svn-id: file:///svn/tokudb@3437 c7de825b-a66e-492c-adef-691d508d4ae1
2008-04-12 09:12:22 +00:00
Zardosht Kasheff
6a3cabd62c add TOKUDB error
git-svn-id: file:///svn/tokudb@2942 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-19 14:33:39 +00:00
Bradley C. Kuszmaul
ff674a7fb9 Add {{{db_env_set_func_fsync}}}. Addresses #499.
git-svn-id: file:///svn/tokudb@2650 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-08 21:29:27 +00:00
Bradley C. Kuszmaul
4e04fed3e6 Reduce symbol visibility. Fixes #467.
git-svn-id: file:///svn/tokudb@2541 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-05 11:54:58 +00:00
Yoni Fogel
2d5e34efda Added DB_AUTO_COMMIT to header
git-svn-id: file:///svn/tokudb@2251 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-11 19:55:37 +00:00
Rich Prohaska
d6249b2679 implement DB_CURRENT_BINDING, an operation that returns the current cursor kv binding even if deleted. closes #274
git-svn-id: file:///svn/tokudb@2063 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-03 18:26:01 +00:00
Bradley C. Kuszmaul
9fe0391206 Add copyright 2008. Fixes #283.
git-svn-id: file:///svn/tokudb@1844 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-24 15:10:32 +00:00
Rich Prohaska
c319506339 add DB_TXN_NOWAIT to fix builds
git-svn-id: file:///svn/tokudb@1796 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-22 15:42:54 +00:00
Yoni Fogel
9858fb38ef Added DB_LOCK_NOTGRANTED
Addresses #290

git-svn-id: file:///svn/tokudb@1782 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-21 23:59:04 +00:00
Rich Prohaska
184c610dbb add cursor->c_count. addresses #258
git-svn-id: file:///svn/tokudb@1586 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-10 16:29:45 +00:00
Rich Prohaska
48d957cdc4 add some more cursor ops addresses #259
git-svn-id: file:///svn/tokudb@1583 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-10 12:51:09 +00:00
Rich Prohaska
22fae76068 add flags to db.h for amazon.com. closes #239
git-svn-id: file:///svn/tokudb@1466 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-02 15:54:00 +00:00
Bradley C. Kuszmaul
37b42e21ea Make db_create work under c++. Addresses #197.
git-svn-id: file:///svn/tokudb@1194 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-18 16:22:21 +00:00
Rich Prohaska
d984283041 implement and test cursor->get_both_range. addresses #187
git-svn-id: file:///svn/tokudb@1152 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-17 13:48:20 +00:00
Rich Prohaska
c380755d34 define DB_YESOVERWRITE. addresses #180
git-svn-id: file:///svn/tokudb@1133 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-14 14:26:22 +00:00
Yoni Fogel
9967b13ccc Added DB_KEYFIRST and DB_KEYLAST to db.h
git-svn-id: file:///svn/tokudb@1125 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-13 23:32:51 +00:00
Yoni Fogel
7331e46492 Added DB_UNKNOWN to db.h
You can use DB_UNKNOWN as a dbtype (as long as you don't use DB_EXCL) in dbopen,
and then it will load the flags from the file.

tokudb_dump
    Now supports duplicates/sorted duplicates.
tokudb_load will give a warning about any duplicate duplicate loads
    but will continue with the rest of the data.

Closes #148
Closes #166

git-svn-id: file:///svn/tokudb@1086 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-11 19:34:21 +00:00
Rich Prohaska
64cc1bceee get working with multiple BDB releases. addresses #133
git-svn-id: file:///svn/tokudb@1078 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-11 14:53:18 +00:00
Yoni Fogel
012f706b67 DB_DBT_(MALLOC|REALOC|USERMEM) now behave the same as BDB.
We never touch ulen.  If DB_DBT_USERMEM and ulen is too small, we set size, (do not write anything)
and return DB_BUFFER_SMALL.

This includes test_db_dbt_mem_behavior.c
Closes #146

git-svn-id: file:///svn/tokudb@1034 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-10 17:04:02 +00:00
Rich Prohaska
3258fa2ec1 define DB_NODUPDATA to get our bdb tests to compile. closes #142
git-svn-id: file:///svn/tokudb@999 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-07 14:57:13 +00:00
Rich Prohaska
8eb4977f44 add bdb-4.5. addresses #104
git-svn-id: file:///svn/tokudb@898 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-03 18:44:41 +00:00
Yoni Fogel
68e02ebb0c {{{
Added DB_SECONDARY_BAD to db.h
Added DB_CURRENT to db.h

    DB->get         (now returns DB_SECONDARY_BAD when appropriate)
    DB->pget        (now returns DB_SECONDARY_BAD when appropriate)
    ** DBC->c_get   (works with associate)
    ** DBC->c_pget  (added function, works with associate, but not in header yet)
    ** *DBC->c_del  (works with associate)
    *DB->del        (works with associate)

*   May not work properly with duplicates.
*   Question: Do I have to use
        search_val.flags = DB_DBT_MALLOC;
            and
        free(search_val.data);
**  Requires DB_CURRENT to be supported in toku_brt_cursor_get
}}}
addresses #48


git-svn-id: file:///svn/tokudb@890 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-03 05:01:43 +00:00
Bradley C. Kuszmaul
f44eebe2ae Make bdb 4.4 be the default for buildheader, and add DB_DBT_APPMALLOC and DB_DBT_MULITPLE. Fixes #96, #97.
git-svn-id: file:///svn/tokudb@846 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-30 05:04:06 +00:00
Bradley C. Kuszmaul
f57cad96ef Add copyrights using #ident in the buildheader and db-benchmark-test dirs. Addresses #54.
git-svn-id: file:///svn/tokudb@819 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-29 14:27:03 +00:00
Rich Prohaska
14bba37fdf add pget, TOKUDB to db.h. closes #69. closes #70
git-svn-id: file:///svn/tokudb@805 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-28 20:04:35 +00:00
Yoni Fogel
2f633ea10a Added DB_USE_ENVIRON and DB_USE_ENVIRON_ROOT
git-svn-id: file:///svn/tokudb@757 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-26 17:24:43 +00:00
Yoni Fogel
f978d2859e Modified tokudb to work with test_db_already_exists
git-svn-id: file:///svn/tokudb@643 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-19 16:30:50 +00:00
Rich Prohaska
0e463512cb add bdb 4.4 and 4.6
git-svn-id: file:///svn/tokudb@563 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-15 14:09:40 +00:00
Bradley C. Kuszmaul
fdafd9a864 up
git-svn-id: file:///svn/tokudb@515 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-14 17:50:28 +00:00
Bradley C. Kuszmaul
657c57b44a Do subtransactions properly (without an fsync)
git-svn-id: file:///svn/tokudb@499 c7de825b-a66e-492c-adef-691d508d4ae1
2007-10-19 17:05:10 +00:00
Bradley C. Kuszmaul
b9b6b279b3 Add stdio.h to db.h
git-svn-id: file:///svn/tokudb@461 c7de825b-a66e-492c-adef-691d508d4ae1
2007-10-15 02:08:49 +00:00
Bradley C. Kuszmaul
5a6ad716e0 add db_version
git-svn-id: file:///svn/tokudb@452 c7de825b-a66e-492c-adef-691d508d4ae1
2007-10-14 14:04:10 +00:00
Bradley C. Kuszmaul
2b1804bc3d Deal with version numbers
git-svn-id: file:///svn/tokudb@450 c7de825b-a66e-492c-adef-691d508d4ae1
2007-10-14 13:56:25 +00:00