Commit graph

333 commits

Author SHA1 Message Date
Sears Russell
9aa1d9d652 pull memcpy out of allocUpdateEntry() 2009-12-31 19:30:40 +00:00
Sears Russell
2ff421bff0 initial opensolaris port 2009-11-29 03:22:36 +00:00
Sears Russell
675bdce24a wrote some wrappers that emulate redblack; default to stl tree for now 2009-11-24 00:24:18 +00:00
Sears Russell
07053987ef speed up test a bit 2009-11-09 22:58:55 +00:00
Sears Russell
8bd0616f97 new concurrent buffer manager 2009-11-09 19:50:00 +00:00
Sears Russell
f5e3ab2d91 concurrent hashtable seems to be working; still need to work out atomicity primitives (eg; options to leave the bucket locked on success) 2009-10-19 21:55:25 +00:00
Sears Russell
1cf16f62f2 add optional support for gcc atomics to transaction table 2009-10-15 22:46:25 +00:00
Sears Russell
5df5512d91 fixed unit test bug; logWriters may now return NULL when readers attempt to read before the beginning of the log 2009-10-15 18:48:58 +00:00
Sears Russell
4b2cfb2b23 fix latching bug in unit test 2009-10-15 17:45:43 +00:00
Sears Russell
331f680c09 partial rewrite of transaction table to reduce thread contention 2009-10-15 02:33:08 +00:00
Sears Russell
4565aff9de more refactoring; no more globals in transactionTable.c 2009-10-14 21:22:50 +00:00
Sears Russell
20a3fe9df5 add support for soft commits, and making prior soft commits durable 2009-10-12 19:16:41 +00:00
Sears Russell
942ba7fffc bugfixes + support for hard limits on log size 2009-10-08 22:48:58 +00:00
Sears Russell
6a02f2f159 buffer manager implementation is now determined by an overridable factory method 2009-10-05 22:39:09 +00:00
Sears Russell
0a1ca5e1cc make compilation succeed on macosx; this will still run macs out of disk space. Also, it disables a number of binaries that probably should be supported on macs. 2009-10-02 00:45:10 +00:00
Sears Russell
4689582cb5 improve log performance by disabling O_SYNC by default (and use fdatasync instead) 2009-09-12 16:20:13 +00:00
Sears Russell
1ce1496226 dependency cleanups; removed compenastions from alloc.c 2009-08-22 00:01:02 +00:00
Sears Russell
3760fd1fea Add missing page lock acquisition to unit test. 2009-08-08 07:52:02 +00:00
Sears Russell
4d2e70f9f3 Set appropriate timeout. 2009-08-08 07:50:06 +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
3243396cb4 add dirtyPageTable unit test 2009-08-05 19:51:46 +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
beb14ec917 implemented timeouts 2009-07-30 23:16:15 +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
260310e151 Add page ops for tree implementations. 2009-07-26 06:18:54 +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
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
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
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
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
7db06197ca refactored truncation + dirty page table, fixed doxygen warnings. 2009-05-20 21:23:51 +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
7b4cf40221 refactored/created stasis_buffer_manager_open and stasis_handle_open 2009-05-07 08:52:06 +00:00
Sears Russell
b2ff81fc8e build / test fault_injection by default 2009-04-21 19:03:50 +00:00
Ashok Sudarsanam
2533dd921b fault injection tool for stasis 2009-04-21 18:34:46 +00:00
Sears Russell
434a5fdb55 build unit tests even if check is not installed 2009-04-18 04:57:07 +00:00
Sears Russell
02469fb735 remove dependency on the check unit test suite 2009-04-14 21:55:47 +00:00
Sears Russell
5bb8dbc2b9 centralized #include <check.h>, removed obsolete (uncompiled) unit test. 2009-04-14 20:21:05 +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
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
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