Sears Russell
|
a0f9a7bc81
|
Cleaned up page locking + a harmless memory bug. Add missing locks to page writeback.
|
2009-08-08 07:59:19 +00:00 |
|
Sears Russell
|
907a24b68e
|
dirty page table flush was pinning pages, then asserting they were not pinned; updated page writeback api to allow correct usage
|
2009-08-08 01:43:03 +00:00 |
|
Sears Russell
|
c92ee87c32
|
improved behavior for sequential I/O performance, fixed races during writeback
|
2009-08-07 18:27:52 +00:00 |
|
Sears Russell
|
68e947fb6d
|
added missing case to allocationPolicy
|
2009-08-07 17:26:40 +00:00 |
|
Sears Russell
|
a6aa8ed942
|
added method to access dirtyPageTable
|
2009-08-05 20:02:33 +00:00 |
|
Sears Russell
|
573cbaa98e
|
implemented missing api calls
|
2009-08-05 19:56:35 +00:00 |
|
Sears Russell
|
69490f1c98
|
implement convention that stop=0 means flush to EOF
|
2009-08-05 19:50:07 +00:00 |
|
Sears Russell
|
16c137aaf7
|
remove unnecessary checks
|
2009-08-05 19:48:59 +00:00 |
|
Sears Russell
|
5b10bcc63b
|
Reimplemented allocationPolicy.c; updated API + added more cases to the unit tests.
|
2009-08-05 06:35:11 +00:00 |
|
Sears Russell
|
c961b34903
|
forgot to commit b-tree source files
|
2009-07-29 21:04:08 +00:00 |
|
Sears Russell
|
ebd6b14dbf
|
single-page btrees are working
|
2009-07-29 21:03:16 +00:00 |
|
Sears Russell
|
0a308f035c
|
more header cleaning; updated INSTALL
|
2009-07-26 19:47:05 +00:00 |
|
Sears Russell
|
081c61b414
|
cleaned up includes, autoconf is now optional, since cmake now creates a config.h
|
2009-07-26 18:51:45 +00:00 |
|
Sears Russell
|
260310e151
|
Add page ops for tree implementations.
|
2009-07-26 06:18:54 +00:00 |
|
Sears Russell
|
5ca3a008fa
|
Code / whitespace cleanup (no logic changes)
|
2009-07-25 23:17:03 +00:00 |
|
Sears Russell
|
8c012bd1c8
|
Silence extraneous warning, add '--mode -1' to the slotted benchmark (-1 bypasses function dispatch when setting the records)
|
2009-07-25 23:02:27 +00:00 |
|
Sears Russell
|
7f2edd880d
|
New (more thorough, less frequent) tests for slotted pages. Renamed slotted methods, added microbenchmark for slotted pages.
|
2009-07-20 17:42:43 +00:00 |
|
Sears Russell
|
9ef3adf40c
|
- Fix compile warning + broken fcn pointer from last commit.
- Address crashes in Tupdate() and recovery caused by mixing segments and page oriented recovery (add loadPageForOperation() call)
|
2009-07-16 03:05:32 +00:00 |
|
Sears Russell
|
b44f8b17b3
|
Add getCachedPage() call. This allows dirtyPageTable to write back pages with out accidentally reading them back in from disk with loadPage(). This should improve performance and allow loadPageOfType() to be used safely.
|
2009-07-14 07:46:47 +00:00 |
|
Sears Russell
|
4493dbb88b
|
Added support for segment based recovery. For now, Stasis doesn't support hybrid recovery, so mixing page deallocation and segments will make recovery corrupt data / segfault.
|
2009-07-13 17:18:01 +00:00 |
|
Sears Russell
|
d6c91241d6
|
fixed bug that caused loadPageOfType to ignore type parameter. Recovery is still broken, since it calls loadPage, even when it can't
|
2009-07-10 01:19:44 +00:00 |
|
Sears Russell
|
eb0661ceeb
|
added segment.c
|
2009-07-09 21:09:36 +00:00 |
|
Sears Russell
|
ade1dc896e
|
Add loadPageOfType() call. (Untested for now)
|
2009-07-07 21:33:49 +00:00 |
|
Sears Russell
|
cf49c7dbf1
|
forgot to svn rm indirect's files
|
2009-07-07 20:05:15 +00:00 |
|
Sears Russell
|
397b0fa245
|
remove indirect page implementation
|
2009-07-07 20:03:52 +00:00 |
|
Sears Russell
|
2593de7a2c
|
Move page type to Page_s struct. This breaks indirect.c (which is poorly thought out, and will be removed shortly), and was the next step on the road to segment-based recovery
|
2009-07-07 19:20:22 +00:00 |
|
Sears Russell
|
b66328192c
|
in-memory group by implementation
|
2009-07-01 01:33:24 +00:00 |
|
Sears Russell
|
09af29abad
|
clean up iterator interface; remove Titerator_releaseLock()
|
2009-06-28 18:54:57 +00:00 |
|
Sears Russell
|
120665ae53
|
cleaned up arrayList. stasis_record_write no longer takes an LSN (it was ignoring it anyway). Added some missing calls to stasis_page_lsn_write (each time a page is written to, stasis_page_lsn_write should be called; this happens automatically for operations called via tupdate
|
2009-06-02 18:25:35 +00:00 |
|
Sears Russell
|
3cc48c4fc4
|
check for page leaks at shutdown; move myrandom() into check_includes.h, fix a number of page leaks / double frees
|
2009-05-30 02:23:17 +00:00 |
|
Sears Russell
|
25c6be64b4
|
add assertunlocked() call
|
2009-05-30 02:22:04 +00:00 |
|
Sears Russell
|
8a95f5859d
|
fixes Issue 8: When passed a prefix of an existing key, pageOrientedList will no longer treat the prefix and the existing key interchangably
|
2009-05-21 04:13:50 +00:00 |
|
Sears Russell
|
9de2e515f8
|
eclipse whitespacifaction
|
2009-05-21 04:10:41 +00:00 |
|
Sears Russell
|
7db06197ca
|
refactored truncation + dirty page table, fixed doxygen warnings.
|
2009-05-20 21:23:51 +00:00 |
|
Sears Russell
|
73c4b4fb71
|
Fix for Issue 1. Reworked log format so that nested top actions do not need to look up old entries during forward operation. This saves log bandwidth and avoids the bug that caused the performance regression
|
2009-05-14 21:28:09 +00:00 |
|
Sears Russell
|
3ff75ff568
|
made pass over log documentation
|
2009-05-13 22:06:58 +00:00 |
|
Sears Russell
|
87218ad929
|
yet another refactoring; broke groupForce into its own module, removed more static variables and namespace violations
|
2009-05-13 18:04:53 +00:00 |
|
Sears Russell
|
bc554efc85
|
renamed some functions to match naming convention
|
2009-05-08 06:53:30 +00:00 |
|
Sears Russell
|
651a1a22e5
|
more refactoring; removed static variables from pageHandle.c
|
2009-05-08 04:56:34 +00:00 |
|
Sears Russell
|
221b2e4acb
|
remove static variables, fix filehandle leak
|
2009-05-07 09:56:36 +00:00 |
|
Sears Russell
|
7b4cf40221
|
refactored/created stasis_buffer_manager_open and stasis_handle_open
|
2009-05-07 08:52:06 +00:00 |
|
Sears Russell
|
b5b414490a
|
fix config.h error for installed copies of stasis
|
2009-04-29 21:31:39 +00:00 |
|
Sears Russell
|
f947a2b417
|
add make install target
|
2009-04-29 20:22:41 +00:00 |
|
Sears Russell
|
55c43358b6
|
fix recovery bug due to interactions between truncation and the old CLR format. check_faultInjection should now pass.
|
2009-04-22 22:03:38 +00:00 |
|
Sears Russell
|
731da7456a
|
more eclipse refactoring; cleaned up some names, whitespace and documentation
|
2009-04-13 22:50:12 +00:00 |
|
Sears Russell
|
7db35ecd39
|
removed static variables from bufferPool.c; renamed methods, moved Page typedef to common.h
|
2009-04-13 21:55:08 +00:00 |
|
Sears Russell
|
4b07b538a6
|
Renamed some methods; fixed bug that caused recovery to create potentially unbounded numbers of concurrent, active transactions.
(Note: this commit contains quite a few instances of auto-cleaned whitespace....)
|
2009-04-11 17:17:42 +00:00 |
|
Sears Russell
|
dacc33642e
|
silence cast warnings on 32-bit linux
|
2009-04-09 15:17:38 +00:00 |
|
Sears Russell
|
05077b62fd
|
nested top action cleanup and bugfix; subsequent recovery calls could undo logical undos in some circumstances
|
2009-04-03 22:01:37 +00:00 |
|
Sears Russell
|
83a982d0bf
|
fail earlier if record_type and record_size apis are abused
|
2009-04-01 21:12:50 +00:00 |
|
Sears Russell
|
564dfe426b
|
Renamed / refactored operation implementation + registration functions. Added support for third party operations
|
2009-03-31 05:02:54 +00:00 |
|
Sears Russell
|
83ad15b6d0
|
more benchmarks; transactions can now be multithreaded
|
2009-03-20 11:36:27 +00:00 |
|
Sears Russell
|
d413bb27f3
|
support for lsn-free writeback; partial benchmark code for submission
|
2009-03-19 03:36:13 +00:00 |
|
Sears Russell
|
b1f44ab005
|
added simplistic support for log reordering
|
2009-03-16 08:11:49 +00:00 |
|
Sears Russell
|
45a2410a25
|
add support for lsn-free set (but not alloc, etc...)
|
2009-03-15 07:21:37 +00:00 |
|
Sears Russell
|
bd2015443f
|
expose nextAvailableLSN for lsn-free pages
|
2009-03-15 02:43:09 +00:00 |
|
Sears Russell
|
a69e61ed85
|
stop checking hash.size, which has changed
|
2009-03-15 02:11:01 +00:00 |
|
Sears Russell
|
9e54ad60d5
|
renamed hash() to avoid linker collisions; inlined some hash functions
|
2009-02-20 23:42:54 +00:00 |
|
Sears Russell
|
4ce4491097
|
avoid extra calls to gettimeofday() when the log is not durable; set group commit to wait for 10msec, not 100...
|
2009-02-03 05:36:33 +00:00 |
|
Sears Russell
|
95e9158847
|
checkin partially implemented log based on file pool so that svn will compile
|
2009-01-05 21:57:33 +00:00 |
|
Sears Russell
|
93885a3ab4
|
removed static variables from logWriter.c
|
2008-12-29 23:05:13 +00:00 |
|
Sears Russell
|
5ba41bb3cb
|
renamed logWriter.[ch] to safeWrites.[ch]
|
2008-12-29 20:01:37 +00:00 |
|
Sears Russell
|
6f809b00e2
|
renamed open/deleteLogWriter
|
2008-12-29 19:46:51 +00:00 |
|
Sears Russell
|
97ab7670db
|
fixes major correctness/performance regression; test for when to force log to maintain WAL was reversed
|
2008-12-12 00:05:42 +00:00 |
|
Sears Russell
|
32950b2b98
|
fixed memory leaks and pointer aliasing bugs in lsmTree_iterator.
|
2008-12-05 00:08:46 +00:00 |
|
Sears Russell
|
32fae6795b
|
Fix memory leak in lruFast.c during Tdeinit().
|
2008-12-04 23:07:07 +00:00 |
|
Sears Russell
|
79d1512a5e
|
fixed problem in lsm tree recovery; it was not updating the lsm tree header when passing C1 into C2's merger thread. Then C2 freed C1, and C1 pointed to uninitialized data.
|
2008-12-04 09:22:17 +00:00 |
|
Sears Russell
|
e4341e10b9
|
partially fixed rose recovery; clean shutdowns now work
|
2008-12-04 04:12:47 +00:00 |
|
Sears Russell
|
c6564e67c7
|
documentation update; eliminated some dead code
|
2008-12-02 19:39:20 +00:00 |
|
Sears Russell
|
1383a42206
|
documentation update; made slottedFlush, etc.. static
|
2008-12-02 19:38:49 +00:00 |
|
Sears Russell
|
78a72d81f3
|
build readonlyhash; fix compile error from nightly builds
|
2008-12-02 00:33:45 +00:00 |
|
Sears Russell
|
ddc93caeae
|
do not use group commit with non-durable transactions
|
2008-12-01 23:22:38 +00:00 |
|
Sears Russell
|
2dcc6598d2
|
added support for softcommit, and for compile / runtime configuration of stasis log + storefile locations
|
2008-12-01 22:45:32 +00:00 |
|
Sears Russell
|
17d4bb3ed4
|
log refactoring
|
2008-12-01 19:48:59 +00:00 |
|
Sears Russell
|
77b24a991d
|
- Arrange for buffer manager writback to use group commit
- Only call correct log force when log_to_mem is enabled.
|
2008-12-01 04:28:46 +00:00 |
|
Sears Russell
|
1cddd8ab8c
|
remove ancient obsolete file
|
2008-12-01 04:24:24 +00:00 |
|
Sears Russell
|
e22c35a1b5
|
fix lsm iterator data corruption bug
|
2008-11-26 22:39:48 +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
|
15a097a100
|
sort of compiles under macos now
|
2008-11-25 01:19:36 +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
|
09641257ad
|
fixed memory leak
|
2008-11-24 07:35:59 +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
|
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
|
9bf242f1a5
|
Add check for invalid transaction xids to Tupdate().
|
2008-11-12 19:00:09 +00:00 |
|
Sears Russell
|
484cd7fd38
|
fix new gcc compiler warnings
|
2008-11-11 01:15:25 +00:00 |
|
Sears Russell
|
8b0251ae4b
|
Fix conditional compilation for flex / bison
|
2008-11-07 08:18:46 +00:00 |
|
Sears Russell
|
fc5b5a2b29
|
do away with librw
|
2008-11-07 03:44:41 +00:00 |
|
Sears Russell
|
3c8f2caa10
|
added more fuse functions
|
2008-11-06 07:19:14 +00:00 |
|
Sears Russell
|
b01a053664
|
conditional compilation for fuse stuff; added readOnlyHash to cmake (and fixed automake build problem)
|
2008-11-05 22:33:09 +00:00 |
|
Sears Russell
|
c51c51dc13
|
Enable building fuse by default
|
2008-11-05 22:24:13 +00:00 |
|
Sears Russell
|
00f5037f79
|
first cut at fuse filesystem; files > 4K do not work yet; nor do deletion, and other things.
|
2008-11-05 22:18:11 +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
|
3c4c4f0916
|
Initial import of stiki, the STasis wIKI.
|
2008-10-28 04:34:05 +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
|
23548354a4
|
fixes over-zealous assert due to partial log read
|
2008-10-27 23:22:38 +00:00 |
|