Stasis is a flexible transactional storage library for high-performance applications and system developers. It supports concurrent transactional storage and no-FORCE/STEAL buffer management.
Find a file
Sears Russell 5dcf3bd1a4 check_bufferManager should pass now(!!!) bufferManager was crashing with "assert(victim)
failed" if the application pinned so many pages that the writeback tasks could not write back 
pages in order to maintain the free page list.

 - Instead of crashing, issue warning the first time this happens.

 - Add diagnostic message explaining that all pages have been pinned before crashing 
   due to a failed loadPage() request.
2008-09-29 04:35:08 +00:00
benchmarks Added line to compile sequential throughput test. 2008-06-11 00:52:22 +00:00
blast forgot to save it the last time... 2005-05-01 22:36:08 +00:00
cmake cmake files for lex and yacc 2008-09-28 06:42:53 +00:00
doc Improved graph printability, fixed remaining todo's in rose.tex. 2008-06-17 04:09:14 +00:00
examples support "make install", and use libtool to generate .so, .a files. 2007-06-25 15:47:28 +00:00
libdfa Fixed compile error in old code. 2008-04-14 18:14:05 +00:00
m4 Removed inapprorpiate "ERROR" from message, provides debian/ubuntu help. 2007-12-19 03:21:49 +00:00
pbl Removed pbl header; fixed makefile bugs and the compilation warnings 2006-06-20 22:05:45 +00:00
pobj Fixed a bunch of 'easy' warnings 2006-05-25 00:02:46 +00:00
src check_bufferManager should pass now(!!!) bufferManager was crashing with "assert(victim) 2008-09-29 04:35:08 +00:00
stasis Simplified the page locking conventions. 2008-09-28 05:50:59 +00:00
test fixed locking bugs, cleanup, added diagnostic messages 2008-09-29 04:30:21 +00:00
utilities Remove hardcoded path from parser; tell automake not to bother with swig or parser 2008-09-28 07:35:20 +00:00
.cvsignore Updated svn:ignore. 2007-10-03 01:52:41 +00:00
AUTHORS Fixed typos; updated list. 2007-10-04 17:42:54 +00:00
bootstrap Initial revision 2004-06-24 21:10:31 +00:00
ChangeLog Benchmark debugging output / scalability fixes. 2005-03-21 08:03:45 +00:00
clean.sh 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
CMakeLists.txt check in lex/yacc based relational algebra primitives 2008-09-28 06:39:45 +00:00
configure.in Remove hardcoded path from parser; tell automake not to bother with swig or parser 2008-09-28 07:35:20 +00:00
COPYING Initial revision 2004-06-24 21:10:31 +00:00
CTestConfig.cmake Questionable attempts to appease valgrind. 2008-03-14 03:09:29 +00:00
cvs-branch-info Addid information about the blast branch. 2005-05-02 01:32:47 +00:00
lladd.prj Support for nested top actions, with simple unit test. (Haven't tested for thread safety yet.) 2004-11-29 21:28:13 +00:00
lladd.pws Implemented pageOrientedList, also did some bug fixing, and added some support functions to alloc.c 2005-01-28 03:32:17 +00:00
Makefile.am Documentation update; added more sections under modules, reduced amount of cruft generated by doxygen. 2008-04-23 01:41:57 +00:00
mkinstalldirs Initial revision 2004-06-24 21:10:31 +00:00
NEWS Initial revision 2004-06-24 21:10:31 +00:00
NOTES Initial revision 2004-06-24 21:10:31 +00:00
README Added pointer to web page. 2006-11-09 22:58:58 +00:00
reconf Don't warn about automake 1.10 being unsupported 2007-12-19 03:22:20 +00:00
reconf-1.8 Added warning to reconf-1.8. Created reconf-1.9 2008-04-13 04:22:48 +00:00
reconf-1.9 Added warning to reconf-1.8. Created reconf-1.9 2008-04-13 04:22:48 +00:00
stamp-h.in Initial revision 2004-06-24 21:10:31 +00:00

Stasis is an experimental flexible transactional storage library.

Please see the COPYING file for licensing information.  

More information about installation, a tutorial and API documentation
are available at:

http://lladd.sourceforge.net/developers/html/

First, make sure you have the appropriate dependencies:

'make check' requires the GNU check library, 'make doc' requires Doxygen.

You'll need Berkeley DB to build; it isn't actually used by Stasis, but 
I haven't gotten around to making it optional.

You also need libconfuse; it is used by some of the programs that ship 
with Stasis.


To build, do:

./reconf

or 

./reconf-1.8

You'll need to have a version of automake >= 1.7 for ./reconf to work,
or have automake 1.8 for ./reconf-1.8 to work.  Different packages of
automake should be able to coexist on the same system, and probably
ship with your distribution.

./configure
make
make check
make install

To build the API and internals documentation, run:

make docs

after configure.

We don't support "make install". ;)

For up-to date coverage reports and unit test pass rates, see 
http://www.cs.berkeley.edu/~sears/stasis/

The unit test logs for lcov describe how the coverage report was 
generated.