Sears Russell
d9b00d457d
Remove old comment.
2008-12-01 04:29:42 +00:00
Sears Russell
41460d041a
did away with memoization for rle_ (cost of mutex was too high). pthread_[get|set]specific does not provide enough keys to make sense as an alternative
2008-11-27 00:08:59 +00:00
Sears Russell
fe6c865737
support multiple include
2008-11-26 22:37:49 +00:00
Sears Russell
549f97d297
rewrote mergeThread, added ability to start iterators mid lsmTable
2008-11-26 07:14:23 +00:00
Sears Russell
1985ec6424
defensively check that caller locked pages as appropriate
2008-11-26 07:12:51 +00:00
Sears Russell
b8624d09b1
obtain readlocks on lsm tree pages while iterating over them
2008-11-26 07:05:22 +00:00
Sears Russell
6a5e7f5589
Fix two problems in lsmTree:
...
- rewrite lookup() to be simpler, and fixed a few bugs
- was keeping node records around after pages were released
2008-11-26 07:01:43 +00:00
Sears Russell
9012bef5fc
Fixes nasty concurrency bug; rle's readRecord() was not reentrant(!)
2008-11-26 06:58:22 +00:00
Sears Russell
11082997d8
revert accidentally committed files
2008-11-24 23:43:26 +00:00
Sears Russell
a321ba6e4e
handle null lsmIiterator_ gracefully
2008-11-24 23:41:11 +00:00
Sears Russell
2b63991014
preliminary (and largely untested) support for opening LSM-tree iterators starting at a given tuple
2008-11-24 01:32:35 +00:00
Sears Russell
cafd05f9bd
moved legacy buffer manager into its own directory
2008-11-13 20:08:37 +00:00
Sears Russell
53a7982f47
fixes numerous blob bugs, allowing linearHashNTA to store arbitrary length key,value pairs.
2008-11-13 04:18:50 +00:00
Sears Russell
46fbfa3c35
Implement blob deallocation; add test case
2008-11-13 00:13:11 +00:00
Sears Russell
e2f604175b
move hash iterator code around, update documentation
2008-11-13 00:12:19 +00:00
Sears Russell
dcf07c1d4c
Remove obsolete #include
2008-11-13 00:08:27 +00:00
Sears Russell
f5d1229941
Recovery now maintains XactionTable's state in the same way as forward operation.
...
Internal transactional2.c state is now declared static.
2008-11-13 00:06:35 +00:00
Sears Russell
fc5b5a2b29
do away with librw
2008-11-07 03:44:41 +00:00
Sears Russell
eb6ade59e4
fix doxygen warning
2008-11-06 21:06:55 +00:00
Sears Russell
794edb07d5
updated documentation
2008-11-06 07:19:02 +00:00
Sears Russell
2c2c603dd2
all naive linear hash methods now start with TnaiveHash; removed references to ThashAlloc from documentation
2008-11-03 21:42:42 +00:00
Sears Russell
0a551720c8
added optional template arguments to FOR and RLE to let callers specify the size of delta_t and copy_count_t, resepectively.
2008-10-27 23:35:51 +00:00
Sears Russell
0ff6196776
documentation fix
2008-10-27 23:33:22 +00:00
Sears Russell
a639d461b8
fail a bit earlier on error
2008-10-27 23:32:45 +00:00
Sears Russell
c7ba4dfb62
forgot to commit header for new allocation policy function
2008-10-27 23:30:53 +00:00
Sears Russell
470c52c9cc
add compile time PACK_STATS option that displays statistics about the number of bytes used per column
2008-10-27 23:27:48 +00:00
Sears Russell
a2a8c73cb5
prevent rose from initiating lots of small merges when the writer process is slow
2008-10-27 23:26:16 +00:00
Sears Russell
5c5b6d0c67
allow callers to truncateNow() to (safely) override normal truncation policy
2008-10-27 23:24:21 +00:00
Sears Russell
108d40ec16
fix warnings on 32-bit platforms
2008-10-09 19:00:17 +00:00
Sears Russell
132a567533
removed dead/unnecessary code; private methods are now static
2008-10-04 07:08:35 +00:00
Sears Russell
c8d368f4b1
Don't include btree header...
2008-10-04 01:37:31 +00:00
Sears Russell
ef487c4dc8
remove btree stub files
2008-10-04 00:53:11 +00:00
Sears Russell
aee7e00c99
Fixed doxygen warning
2008-10-03 17:10:54 +00:00
Sears Russell
6354fe8a2f
use pageid instead of int; Tupdate now takes a pageid instead of a recordid
2008-10-03 02:42:25 +00:00
Sears Russell
cf8eb2ca15
fix doxygen warnings
2008-10-01 20:32:02 +00:00
Sears Russell
db1d79efcd
Removed Tinstant* and broken logical hash stuff
2008-09-30 15:34:42 +00:00
Sears Russell
ff0887624c
Simplified the page locking conventions.
...
Added paranoid calls to assertlock() to page.c
Fixed race in abort():
- pick CLR LSN
- release page lock
- someone else updates page
- lock page
- apply undo
2008-09-28 05:50:59 +00:00
Sears Russell
6d17442380
Major refactoring:
...
- Changed operations to take only two arguments
- No more hacks regarding log argument sizes
- Set pageid = INVALID_PAGE if you want a logical operation
- Ported operation implementations to new api; exposed + fixed a number of concurrency bugs
- More fixes to prepare
- Fixed to nested top actions
- More coherent operations api / recovery implmentation
- TnaiveHash* and Tinstant* are (and were already) broken, and are set for removal
- Removed some instances of fail_unless
- Fixed design flaws in blob implementation.
- New naming convention for operation callback functions.
2008-09-28 03:11:24 +00:00
Sears Russell
41cd975e91
fixed new const warnings from gcc
2008-09-24 06:40:34 +00:00
Sears Russell
944c7e984f
fixes / cleanups of Tprepare()
2008-09-24 03:08:32 +00:00
Sears Russell
fb4e91debe
removed deferred operation stubs
2008-09-12 23:08:41 +00:00
Sears Russell
e6ec2cb9fc
Added "loadUninitializedPage()", which returns an uninitialized page instead of reading preimages from disk.
2008-06-09 01:13:02 +00:00
Sears Russell
aaf2f8bc39
Binary search implementations
2008-06-08 20:45:04 +00:00
Sears Russell
75f857bc26
Added supoort for binary search to page lookups
2008-06-08 20:28:53 +00:00
Sears Russell
651299716e
Fixed bugs in gc iterator.
2008-06-08 20:28:23 +00:00
Sears Russell
690ebdea9a
Mess with some of the typedefs for better code clarity, and (hopefully) better real-world compression.
2008-05-27 07:33:35 +00:00
Sears Russell
a4c29b95a2
Fix bug due to over-zealous optimization. It was accidentally skipping the max slot id check in some cases.
2008-05-27 07:32:37 +00:00
Sears Russell
decc2f7dfb
Port to centos 4.2
2008-05-21 21:15:11 +00:00
Sears Russell
2863487991
Documentation update; added more sections under modules, reduced amount of cruft generated by doxygen.
2008-04-23 01:41:57 +00:00
Sears Russell
2929394b31
Fixed some documentation warnings, and clarified a few points.
2008-04-17 06:29:34 +00:00
Sears Russell
afbd89e3ff
All headers now live in the header directory. (stasis/, not src/stasis)
2008-04-13 04:02:57 +00:00
Sears Russell
b1bfe7979f
Questionable attempts to appease valgrind.
2008-03-14 03:09:29 +00:00
Sears Russell
ba986bfb02
Fix spurious 'error' in flamebox report.
2008-03-03 06:41:25 +00:00
Sears Russell
e49d51cb7e
Clean up includes for new cmake build system.
2008-03-02 23:21:39 +00:00
Sears Russell
146563ca45
Allow third parties to register new iterator types. (made iterator registration non-static; moved constants into constants.h)
2008-03-01 19:34:12 +00:00
Sears Russell
f05b0233a3
Fixed memory leaks on iterator open/close Also zero out some memory defensively.
2008-03-01 19:32:34 +00:00
Sears Russell
673f6b55d3
Allocation bugfixes
2008-02-29 18:03:32 +00:00
Sears Russell
752606ad3b
Region tags are 1 offest (not zero), remove allocation manager id collision)
2008-02-20 22:49:24 +00:00
Sears Russell
a823255227
Added interface to let other stasis modules find regions' boundary tags
2008-02-19 22:07:13 +00:00
Sears Russell
af149cdad1
remove old comment.
2008-02-19 21:17:38 +00:00
Sears Russell
ab4fb0df6c
Fix linker namespace collision with libz
2007-12-06 21:52:37 +00:00
Sears Russell
5ad137164f
Fixed compiler warnings.
2007-11-12 16:40:50 +00:00
Sears Russell
9bb6984c23
force_range is now being called after compressData()
2007-11-12 00:49:00 +00:00
Sears Russell
87a70f29bc
Preliminary force_range implementation; lsmTable leaks significantly less space now.
2007-11-11 23:22:21 +00:00
Sears Russell
95d7d3cd5f
oops, broke the build (rose's c++ stuff #includes this, but it was missing BEGIN_C_DECLS...
2007-11-11 18:01:26 +00:00
Sears Russell
f2df518338
Implemented TlsmTableFind(); fixed quite a few bugs in merge, comparators, etc...
2007-11-06 02:27:04 +00:00
Sears Russell
7e2c37534e
Partial implementation of a collection oriented interface for ROSE. (Checking in to create version to diff against.)
2007-11-01 20:09:55 +00:00
Sears Russell
b167b98085
* Remove spurious warnings messages from tests that intentionally crash stasis.
...
* Move and rename lladd_autoTruncation flag to stasis_truncation_automatic in flags.c
2007-10-23 23:16:58 +00:00
Sears Russell
9b8fefe68d
Added force() to the handle API. It is now called from tests, and by the buffer manager
2007-10-23 01:51:03 +00:00
Sears Russell
d7e56fc96f
Added more buffer manager flags (allow programs to bypass non_blocking).
2007-10-22 20:50:00 +00:00
Sears Russell
1fa05b7aa5
Documentation fix
2007-10-22 20:46:31 +00:00
Sears Russell
ebc6258fea
Fixed DEBUGGING flag (compensations.h wasn't be included when DEBUGGING was defined...)
2007-10-22 20:31:16 +00:00
Sears Russell
c9bbf3af94
Converted page.h to follow new naming convention; documented new page api; begun stasis documentation cleanup.
2007-10-02 00:18:33 +00:00
Sears Russell
4c06c172e0
Final submit from google
2007-08-24 23:35:04 +00:00
Sears Russell
5f954eb239
Final commit from google.
2007-08-24 23:01:08 +00:00
Sears Russell
5bd2138a8b
Fixes a number of memory leaks; adds pageCleanup() callback, and allows callers to use custom allocators with LSM trees
2007-08-20 21:58:20 +00:00
Sears Russell
9c1c284406
Implemented range scans; lsmTree now supports keys that are stored as fixed length byte arrays.
2007-08-20 16:53:16 +00:00
Sears Russell
519bd515f4
New access method for the buffer manager; write coalescing; runtime bufferManager selection and a few bufferManager bugfixes.
2007-08-20 16:25:08 +00:00
Sears Russell
90f011b049
New access method for the buffer manager; write coalescing; runtime bufferManager selection and a few bufferManager bugfixes.
2007-08-20 16:23:57 +00:00
Sears Russell
8367dfe9a3
releasePage() is now a function, not a function pointer. releasePageImpl is the name of the new function pointer.
2007-08-14 01:20:08 +00:00
Sears Russell
9745d62887
Preliminary LSM tree implementation (hardcodes keys as ints for now)
2007-08-14 01:17:31 +00:00
Sears Russell
c3181675db
Wrote documentation covering page type implementations; fixed doxygen config.
2007-07-20 23:21:13 +00:00
Sears Russell
a773c4d8b7
Bugfixes and improved error handling for recovery tests and registerPageType()
2007-07-19 23:47:06 +00:00
Sears Russell
9fd91cffb8
Updated page api to handle page types that need to grab resources on record read/ write, or that perform callbacks when read / written to disk.
2007-07-18 20:09:14 +00:00
Sears Russell
356387eafe
support "make install", and use libtool to generate .so, .a files.
2007-06-25 15:47:28 +00:00
no author
d0274c3304
Renamed 'lladd' directories and python module to 'stasis'
2007-06-11 21:36:57 +00:00