Commit graph

1527 commits

Author SHA1 Message Date
Rusty Sears
ae086372dd fix regression in C build 2013-01-30 14:19:24 -08:00
Rusty Sears
11336cde4c add casts; change variable name from new to newval 2013-01-30 14:10:01 -08:00
Rusty Sears
e08d89e5d6 fix erroneous const declaration 2013-01-30 14:09:14 -08:00
Rusty Sears
b31fe84427 add casts 2013-01-30 14:08:42 -08:00
Rusty Sears
ed791137b1 fix INT64_MAX in C++; add some missing casts 2013-01-30 14:07:16 -08:00
Rusty Sears
b11d7fb4a7 change declartions of fcn() to fcn(void) 2012-12-04 18:17:23 -08:00
Rusty Sears
cafe26e728 get rid of variables named "new" 2012-12-04 16:22:08 -08:00
Rusty Sears
286370a3f1 realloc -> stasis_realloc 2012-11-30 19:15:18 -08:00
Rusty Sears
649f85d218 fix apparent arithmetic error in filePool; realloc->stasis_realloc for filePool 2012-11-30 18:50:51 -08:00
Rusty Sears
f72498969d calloc -> stasis_calloc 2012-11-30 18:29:28 -08:00
Rusty Sears
4d51fe2212 change more malloc calls to use stasis_malloc/stasis_alloc 2012-11-30 17:15:03 -08:00
Rusty Sears
0153160218 more malloc fixes; add stasis_alloc, stasis_malloc_trailing_array 2012-11-14 23:04:03 -08:00
Rusty Sears
8c2547974a replace malloc with stasis_malloc in many places 2012-11-14 18:35:45 -08:00
Rusty Sears
6c7d8d3968 updated eclipse project 2012-11-14 18:35:20 -08:00
Rusty Sears
523766f140 new malloc macros to facilitate compiling under both c99 and c++ 2012-11-14 18:34:23 -08:00
Gregory Burd
e215e5a1c9 OSDI 2006 paper 2012-06-12 10:52:02 +01:00
Gregory Burd
a564e8c220 Lecture notes and the PhD thesis related to stasis. 2012-05-23 14:30:23 +01:00
Gregory Burd
3a559a3b3c merge in changes from svn[r1572..r1601]
------------------------------------------------------------------------
r1601 | sears.russell@gmail.com | 2012-03-20 18:43:00 -0400 (Tue, 20
Mar 2012) | 1 line

commit bLSM bloom filter to stasis/util, which is where it really
belongs
------------------------------------------------------------------------
r1600 | sears.russell@gmail.com | 2012-03-04 01:58:38 -0500 (Sun, 04
Mar 2012) | 1 line

fix memory leak in skiplist unit test (now it is valgrind clean)
------------------------------------------------------------------------
r1599 | sears.russell@gmail.com | 2012-03-04 01:58:05 -0500 (Sun, 04
Mar 2012) | 1 line

fix typo in finalize type
------------------------------------------------------------------------
r1598 | sears.russell@gmail.com | 2012-03-04 00:59:59 -0500 (Sun, 04
Mar 2012) | 1 line

add comparator and finalizer parameters to skiplist constructor
------------------------------------------------------------------------
r1597 | sears.russell@gmail.com | 2012-03-03 18:23:16 -0500 (Sat, 03
Mar 2012) | 1 line

bugfixes for skiplist
------------------------------------------------------------------------
r1596 | sears.russell@gmail.com | 2012-03-02 15:05:07 -0500 (Fri, 02
Mar 2012) | 1 line

updated concurrentSkipList.  Seeing strange crashes
------------------------------------------------------------------------
r1595 | sears.russell@gmail.com | 2012-03-01 16:51:59 -0500 (Thu, 01
Mar 2012) | 1 line

add progress reports
------------------------------------------------------------------------
r1594 | sears.russell@gmail.com | 2012-02-28 13:17:05 -0500 (Tue, 28
Feb 2012) | 1 line

experimental support for automatic logfile preallocation
------------------------------------------------------------------------
r1593 | sears.russell@gmail.com | 2012-02-28 12:10:01 -0500 (Tue, 28
Feb 2012) | 1 line

add histogram reporting to rawIOPS benchmark
------------------------------------------------------------------------
r1592 | sears.russell@gmail.com | 2012-02-24 16:31:36 -0500 (Fri, 24
Feb 2012) | 1 line

userspace raid 0 implementation
------------------------------------------------------------------------
r1591 | sears.russell@gmail.com | 2012-02-12 01:47:25 -0500 (Sun, 12
Feb 2012) | 1 line

add skiplist unit test, fix compile warnings
------------------------------------------------------------------------
r1590 | sears.russell@gmail.com | 2012-02-12 00:52:52 -0500 (Sun, 12
Feb 2012) | 1 line

fix compile error
------------------------------------------------------------------------
r1589 | sears.russell@gmail.com | 2012-02-12 00:50:21 -0500 (Sun, 12
Feb 2012) | 1 line

fix some bugs in hazard.h surrounding thread list management and
overruns of R under high contention
------------------------------------------------------------------------
r1588 | sears.russell@gmail.com | 2012-02-11 14:23:10 -0500 (Sat, 11
Feb 2012) | 1 line

add hazard pointer for get_lock.  It was implicitly blowing away the
hazard pointer protecting y in the caller
------------------------------------------------------------------------
r1587 | sears.russell@gmail.com | 2012-02-10 18:51:25 -0500 (Fri, 10
Feb 2012) | 1 line

fix null pointer bug
------------------------------------------------------------------------
r1586 | sears.russell@gmail.com | 2012-02-10 18:03:39 -0500 (Fri, 10
Feb 2012) | 1 line

add simple refcounting scheme to concurrentSkipList.  This solves the
problem where a deleted node points to another deleted node, and we
only have a hazard pointer for the first node.
------------------------------------------------------------------------
r1585 | sears.russell@gmail.com | 2012-02-10 14:19:14 -0500 (Fri, 10
Feb 2012) | 1 line

add hazard pointers for update using the smallest free slot first.  The
old method left a race condition, since hazard_scan stops at the first
null pointer.
------------------------------------------------------------------------
r1584 | sears.russell@gmail.com | 2012-02-10 02:45:30 -0500 (Fri, 10
Feb 2012) | 1 line

add hazard pointers for update array
------------------------------------------------------------------------
r1583 | sears.russell@gmail.com | 2012-02-10 00:04:50 -0500 (Fri, 10
Feb 2012) | 1 line

skiplist update: concurrent, but broken
------------------------------------------------------------------------
r1582 | sears.russell@gmail.com | 2012-02-09 17:44:27 -0500 (Thu, 09
Feb 2012) | 1 line

skip list implementation.  Not concurrent yet.
------------------------------------------------------------------------
r1581 | sears.russell@gmail.com | 2012-02-08 13:33:29 -0500 (Wed, 08
Feb 2012) | 1 line

Commit of a bunch of new, unused code: KISS random number generator,
Hazard Pointers, SUX latches (untested) and bit twiddling for
concurrent b-tree
------------------------------------------------------------------------
r1580 | sears.russell@gmail.com | 2012-01-17 19:17:37 -0500 (Tue, 17
Jan 2012) | 1 line

fix typo
------------------------------------------------------------------------
r1579 | sears.russell@gmail.com | 2012-01-11 18:33:31 -0500 (Wed, 11
Jan 2012) | 1 line

static build fixes for linux.  hopefully these do not break macos...
------------------------------------------------------------------------
r1578 | sears.russell@gmail.com | 2012-01-09 19:13:34 -0500 (Mon, 09
Jan 2012) | 1 line

fix cmake under linux
------------------------------------------------------------------------
r1577 | sears.russell@gmail.com | 2012-01-09 18:37:15 -0500 (Mon, 09
Jan 2012) | 1 line

fix linux static binary compilation bugs
------------------------------------------------------------------------
r1576 | sears.russell | 2012-01-09 18:00:08 -0500 (Mon, 09 Jan 2012) |
1 line

port to macos x
------------------------------------------------------------------------
r1575 | sears.russell | 2012-01-09 17:39:43 -0500 (Mon, 09 Jan 2012) |
1 line

add missing _ from sync call name
------------------------------------------------------------------------
r1574 | sears.russell@gmail.com | 2012-01-09 14:26:31 -0500 (Mon, 09
Jan 2012) | 1 line

add -rt flag to static builds
------------------------------------------------------------------------
r1573 | sears.russell@gmail.com | 2011-12-20 23:38:29 -0500 (Tue, 20
Dec 2011) | 1 line

Simple makefile geared toward building libstasis.so and libstasis.a
(and nothing else)
------------------------------------------------------------------------
r1572 | sears.russell@gmail.com | 2011-12-20 22:37:54 -0500 (Tue, 20
Dec 2011) | 1 line

add some missing #include<config.h> lines
2012-04-21 12:52:31 -04:00
Gregory Burd
01f57a1be3 Updated README 2012-04-18 18:18:23 -03:00
Sears Russell
7660467f8e Refactor page implementation to use multiple include trick (so the backing representation can be changed).
Also, fix apparent bug in stasis_page_fixed_set_record_type().

Otherwise, this change should not make any semantic changes.
2011-11-09 21:37:38 +00:00
Sears Russell
913f0a4401 fix compiler warning 2011-11-08 02:05:38 +00:00
Sears Russell
0058042987 test + fix allocation of zero byte records 2011-11-07 22:53:55 +00:00
Sears Russell
cb97772aa6 experimental java language bindings 2011-11-07 22:46:32 +00:00
Sears Russell
7650e5ab53 add a number of low-level disk bencmarks 2011-11-07 22:41:01 +00:00
Sears Russell
b39403ea02 remove dead "raw" page format 2011-11-07 22:38:23 +00:00
Sears Russell
20d2196040 printf -> DEBUG for ringbuffer 2011-11-06 15:49:33 +00:00
Sears Russell
4b300dda7a printf -> DEBUG for filePool 2011-11-06 15:48:50 +00:00
Sears Russell
682a6a20f2 move asyncForce outside of conditional to better bound number of dirty pages in os cache 2011-11-04 20:45:55 +00:00
Sears Russell
e081793f32 increase log file chunk size to avoid running out of file descriptors 2011-11-04 20:45:06 +00:00
Sears Russell
650e8ed7e1 tweak flags for better support for multiple concurrent sequential writes 2011-10-10 05:14:19 +00:00
Sears Russell
b126b45bcc Improve sequential write performance of buffer manager.
This patch adds support for "asyncForce" which forces all pages to disk that
were dirtied before the *previous* call call to asyncForce.  This method
only applies to dirty pages in the Linux file cache (not in the Stasis buffer
pool), and is used by new writeback logic that bounds the amount of such
backlog that exists at any given time.

This patch also changes writeback behavior; the dirty page table now sorts
pages by pageid instead of LSN when it is invoked by writeback.  When it is
invoked by log truncation, it still sorts by LSN.
2011-10-08 22:01:04 +00:00
Sears Russell
64653e3cbe fix some obscure rose bugs detected by static analysis 2011-10-06 17:12:38 +00:00
Sears Russell
557c63a0f3 remove duplicated implementations of log2 2011-10-06 17:11:22 +00:00
Sears Russell
d6763bc57b remove dead (not even compiled) unit test 2011-10-06 17:10:22 +00:00
Sears Russell
9b9b3b5d03 fix broken assert in unit test 2011-10-06 17:08:45 +00:00
Sears Russell
f89bb28543 make test now automatically runs the ruby unit tests (forgot to commit new CMakeLists) 2011-09-26 04:20:33 +00:00
Sears Russell
98375ec945 make test now automatically runs the ruby unit tests 2011-09-26 04:20:07 +00:00
Sears Russell
402dc71fa0 update perl unit test to remove stasis_log as well as logfile.txt 2011-09-26 00:47:56 +00:00
Sears Russell
6ebc39e54a run hash benchmarks on various array sizes 2011-09-26 00:34:33 +00:00
Sears Russell
e801554d5f get rid of strange "1" in doxygen output 2011-09-26 00:20:07 +00:00
Sears Russell
efbb07867a add defaults for some of the rawIOPS.pl command line options 2011-09-06 19:58:30 +00:00
Sears Russell
a101e90be7 fix warning 2011-09-06 19:56:39 +00:00
Sears Russell
e874a36aca add driver script for rawIOPS 2011-08-31 20:25:45 +00:00
Sears Russell
bff907ff7a added rawIOPS benchmark 2011-08-31 19:26:33 +00:00
Sears Russell
52cd86f7f6 move myrandom into stasis/util, rename it stasis_util_random64 2011-08-31 19:25:09 +00:00
Sears Russell
e966327112 add benchmark of CRC32 throughput vs. memory bandwidth 2011-08-31 18:07:38 +00:00
Sears Russell
e5826302a3 add seekMap benchmark utility 2011-08-31 15:50:21 +00:00
Sears Russell
08c8be07b1 add support for fallocate(); enable it by default if it is available at build time. 2011-08-25 21:29:51 +00:00
Sears Russell
9083bca1c3 Implement CLOCK replacement policy, and set it to be the default. Add flags to configure the default replacement policy. 2011-08-23 18:25:26 +00:00
Sears Russell
c79f22a277 remove an unnecessary (and contended) latch acquisition from dirty page table 2011-08-19 22:43:28 +00:00