Commit Graph

33 Commits

Author SHA1 Message Date
Keith Bostic
6063b1cc0e First version of the Levyx/Helium code, derived from the Memrata code.
It doesn't run yet, but it compiles and limps to a core dump.
2014-01-15 11:46:07 -05:00
Keith Bostic
5b509b7220 Update copyright notices for 2014.
Move lang/java and lang/python into the public domain.
2014-01-07 10:30:12 -05:00
Keith Bostic
9aa469e13e Better/fixed support for huge keys/values.
Change the WT_ITEM::size field from type uint32_t to size_t.

Change test/format configuration to support large key/value items.

Ref: #808 and #70.
2013-12-16 12:55:50 -05:00
Keith Bostic
6c9d61f771 Allow replay of threaded runs. 2013-12-07 10:48:52 -05:00
Keith Bostic
8f92bf34be shorten the line so we don't overflow when the numbers get large. 2013-12-06 14:57:56 -05:00
Keith Bostic
18328ef44a Make the case statement consistent with other use in this program. 2013-12-06 14:15:19 -05:00
Keith Bostic
256af27d57 Add a compaction option, set compaction 10% of the time.
Switch first-fit allocation set from 20% to 10% of the time.
2013-12-05 09:26:59 -05:00
Keith Bostic
6ad2068cb7 Create a single thread that occasionally compacts the object -- compaction
is a long-running operation and we don't want every worker thread doing it.
2013-11-25 10:09:22 -05:00
Keith Bostic
6d35ba46b2 Should never happen, but lint points out session can theoretically be
a NULL value at the end of this loop.
2013-11-16 11:02:37 -05:00
Keith Bostic
94fa3f7be1 CID 1129026 (#1 of 4): Dereference after null check (FORWARD_NULL)
191. var_deref_op: Dereferencing null pointer "cursor".

Coverity is concerned we're testing for cursor == NULL and subsequently
not testing, just indirecting through the cursor handle.  It can't
happen because there's only one case where it's interesting, when
session_op == cnt, and we catch that case by initializing session_op to 0.

Add some additional code just to ensure it can never happen.
2013-11-15 19:59:50 -05:00
Keith Bostic
19a75210e0 CID 1129078 (#3 of 3): Uninitialized scalar variable (UNINIT)
16. uninit_use: Using uninitialized value "total.commit".
2013-11-15 19:59:49 -05:00
Michael Cahill
25ad02da78 Have test/format reset its cursor before blocking operations like checkpoint. 2013-11-15 11:59:31 +11:00
Keith Bostic
9dc91f8ae4 shorter the output line so larger runs fit into 80 characters. 2013-10-07 12:32:24 -04:00
Keith Bostic
6aa57d7c9e Change the "always done" final search to increment the statistics; we
deliberately make "search" calls the least likely choice of operations,
and often the configuration implies no explicit searches are done, so
we end up with a count of 0 searches, which looks odd.
2013-09-14 13:36:52 -04:00
Michael Cahill
db2ac130dc Do update operations in test/format's col_update function so the position is preserved. 2013-09-11 12:48:58 +10:00
Keith Bostic
2bd115e757 Change WT_CURSOR::insert to not hold a position/resources in the tree on
success.

Add additional wording that WT_CURSOR::reset should be called after any
of the WT_CURSOR search, search-near, update or remove methods, once
the cursor is no longer being used to iterate or retrieve values.

Closes #587.
2013-09-10 12:26:37 -04:00
Keith Bostic
b738d785ba whitespace 2013-08-27 16:00:26 -04:00
Keith Bostic
d3cdd3cb75 We have to clean out the table of appended keys after each run, otherwise
it eventually fills up and we never insert another record.  Rework append
table processing to be more resiliant, ignore the append table entirely in
the case of row-store objects.
2013-08-27 09:45:36 -04:00
Keith Bostic
a43448932e Fix a bug in test/format that prevented us from ever extending the
table by more than a single row.

Increase the distance we will potentially extend the table.
2013-08-23 14:57:44 -04:00
Keith Bostic
4a1d255ae5 Rework the Memrata code to configure all of the KVS sources when the
shared library is loaded, rather than specifying a set of devices on
every call that takes a URI.
2013-08-10 09:23:58 -04:00
Keith Bostic
a1316ede5d Merge branch 'develop' into memrata 2013-08-06 12:47:23 -04:00
Keith Bostic
b7e0834c19 Handle deadlock returns from WiredTiger data operations. 2013-08-06 12:33:52 -04:00
Keith Bostic
4f36d1827f Merge branch 'develop' into memrata 2013-08-06 11:10:47 -04:00
Keith Bostic
3bd6465f3e Add simple transaction support to test/format. 2013-08-06 10:58:46 -04:00
Keith Bostic
54332f1f23 Add a WT_DATA_SOURCE method to support session.checkpoint, then drill
the necessary holes to make it work: this change supports checkpoints
of specific target objects (table:foo), but doesn't support generic
database checkpoints (they don't currently fail, but that's because
they don't do anything at all).

Turn off named checkpoints in test/format, when running with the
memrata device.
2013-07-31 13:54:04 -04:00
Keith Bostic
69a3a31f67 Document WT_ITEM structures don't need to be cleared before use, and
quit clearing them in the test/format and test/bloom programs.
2013-07-29 11:23:14 -04:00
Michael Cahill
ab8eba816d Generalize the cursor "overwrite" configuration to apply to insert, update and remove. Default to true, so LSM is no longer a special case.
refs #512
2013-06-18 17:21:15 +10:00
Michael Cahill
b4e20f1e19 Make closing and reopening the session much less common for single-threaded runs of test/format, where it involves closing and reopening the file, which makes some runs 100x slower than others. 2013-06-06 09:45:08 +10:00
Keith Bostic
af64467d36 Give up trying to create enough slots for extended records, don't let
the extended records get past 3 x the number of threads.
2013-06-03 22:39:11 -04:00
Keith Bostic
14d0eaaa79 If the record allocation code can race with other threads, we can't
just increment the total number of records when a record-allocating
cursor returns from the WiredTiger library, we have to do it one
record at a time.
2013-06-03 20:18:23 -04:00
Keith Bostic
66dbf8a575 Every WiredTiger API that takes a URI must now configure kvs_devices.
Specify kvs_open_o_truncate when opening the device, we're starting
fresh on every run.
2013-06-03 08:57:00 -04:00
Keith Bostic
46e0f7a723 Don't attempt hot backups on non-standard data types, that's an error now. 2013-05-25 16:32:48 -04:00
Keith Bostic
135524bd6a Add support for periodic hot backups to test/format. 2013-05-25 14:38:14 -04:00