Skip to content

Commit

Permalink
Add a fetchAll method to statement objects.
Browse files Browse the repository at this point in the history
Due to not having to bounce in and out of JavaScript, this should make
fetching results from SELECTs significantly faster than manually using step to
iterate over the results.
  • Loading branch information
orlandov committed Sep 5, 2010
1 parent a7f40ae commit 4d942bc
Show file tree
Hide file tree
Showing 14 changed files with 3,641 additions and 27 deletions.
5 changes: 5 additions & 0 deletions build.sh
@@ -0,0 +1,5 @@
cd deps/mpool-2.1.0/
make
cd ../..
node-waf clean
node-waf configure build
86 changes: 86 additions & 0 deletions deps/mpool-2.1.0/ChangeLog.1
@@ -0,0 +1,86 @@
2006-05-31 Gray Watson <>

* Version 2.1.0 released.

* Added MPOOL_ERROR_PNT_OVER to distinguish between pointer
overwrite and mpool structure overwrite.

2005-05-20 Gray Watson <>

* Version 2.0.0 released.

* First external publication of library.

Thu Mar 4 10:14:21 1999 Gray Watson <>

* Reworked the way the blocks were split up.

* Removed the round arguments. Not used.

Wed Mar 3 19:29:38 1999 Gray Watson <>

* Moved to random(). Fucking rand() was hiding a lot of problems
from me.

* Added some additional sanity checks in free().

* Added mpool_set_max_pages to the library.

Thu Feb 25 12:41:51 1999 Gray Watson <>

* Added log_function transaction callback.

Thu Feb 25 09:53:33 1999 Gray Watson <>

* Changed the default page size to 16 * getpagesize.

Wed Feb 24 17:52:52 1999 Gray Watson <>

* Major reworking of internals to simplify structures.

Fri Feb 19 12:52:55 1999 Gray Watson <>

* Made a number of changes to the internals which removed the
addr_to_block as a performance pig.

Tue Feb 16 21:11:23 1999 Gray Watson <>

* Added ability for free to look up in the free bit lists for
memory to use.

* Added mpool_clear. Good idea.

Thu Feb 11 02:53:45 1999 Gray Watson <>

* Finally a working version. Looks much better.

* Added rounding sizes so it will allocate aligned memory.

* Added minimum size to the mpool_free function to speed it up.

Wed Feb 10 23:30:48 1999 Gray Watson <>

* Version 1 with new fine grained memory resolution almost
working.

Fri May 2 02:26:28 1997 Gray Watson <>

* Moved to MAP_PRIVATE from MAP_SHARED.

* Fixed the min/max handling.

* Added additional info to mpool_stat.

Thu May 1 16:51:06 1997 Gray Watson <>

* Added page-size information request.

* Added better no-memory errors.

Thu Apr 24 01:58:41 1997 Gray Watson <>

* Added handling of null for debugging purposes.

Mon Apr 14 03:31:26 1997 Gray Watson <>

* Started the mpool routines.
56 changes: 56 additions & 0 deletions deps/mpool-2.1.0/Makefile
@@ -0,0 +1,56 @@
#
# $Id: Makefile.all,v 1.1.1.1 2005/05/20 19:58:29 gray Exp $
#

HFLS = mpool.h
OBJS = mpool.o

CC = gcc

CFLAGS = -g -I. $(DEFINES) -fPIC
#CFLAGS = -g -I.
LDFLAGS =
RANLIB = ranlib

DESTDIR = /usr/local
TEST = mpool_t
LIBRARY = libmpool.a

all : $(LIBRARY) $(UTIL)

clean :
rm -f a.out core *.o *.t
rm -f $(LIBRARY) $(TEST)

install : $(HFLS) $(LIBRARY)
install -c -m 444 $(HFLS) $(DESTDIR)/include
install -c -m 444 $(LIBRARY) $(DESTDIR)/lib
$(RANLIB) $(DESTDIR)/libo/$(LIBRARY)

$(LIBRARY) : $(OBJS)
ar cr $(LIBRARY) $?
$(RANLIB) $@

tests : $(TEST)

$(TEST) : $(TEST).o $(LIBRARY)
rm -f $@
$(CC) $(LDFLAGS) $(TEST).o $(LIBRARY)
mv a.out $@

$(UTIL) : $(UTIL).o $(LIBRARY)
rm -f $@
$(CC) $(LDFLAGS) $(UTIL).o $(LIBRARY)
mv a.out $@

.c.o :
rm -f $@
$(CC) $(CFLAGS) -c $< -o $@

#
# Below are dependencies that are automatically generated by make
# depend. Please do not edit by hand.
#

mpool.o: mpool.c mpool.h mpool_loc.h
mpool_t.o: mpool_t.c mpool.h
11 changes: 11 additions & 0 deletions deps/mpool-2.1.0/NEWS
@@ -0,0 +1,11 @@
-------------------------------------------------------------------------------
$Id: NEWS,v 1.2 2006/05/31 20:28:31 gray Exp $
-------------------------------------------------------------------------------

Version 2.1.0:

* Added MPOOL_ERROR_PNT_OVER to show pointer overwrites.

Version 2.0.0:

* Initial external release of library after use since 1996.
46 changes: 46 additions & 0 deletions deps/mpool-2.1.0/README
@@ -0,0 +1,46 @@
-------------------------------------------------------------------------------
$Id: README,v 1.2 2005/05/22 19:49:30 gray Exp $
-------------------------------------------------------------------------------

BACKGROUND:

This is a memory pool library which was written to allow a program to
have heaps that it could destroy without fragmenting memory. You can
have multiple heaps and reset them easily completely reclaiming the
memory (as opposed to standard heaps).

With it you can mpool_open() a new heap, then mpool_alloc(),
mpool_calloc(), mpool_realloc(), mpool_free() to your heart's content.
Once you are done with the memory-pool you can run mpool_clear() or
mpool_close() and completely remove the memory associated with the
pools. This is very handy if you are working with some large blocks
of memory and want to reset back to a clean state.

Check out the mpool.h file for more information. Sorry for minimal
docs.

-------------------------------------------------------------------------------

INSTALLATION:

1) Typing 'make' should be enough to build libskip.a.
2) Typing 'make tests' should make the mpool_t test program.

-------------------------------------------------------------------------------

REPOSITORY:

The newest versions of the library are available from:

http://256.com/sources/mpool/

-------------------------------------------------------------------------------

AUTHOR:

If you have any questions or problems feel free to send me mail.

Gray Watson
http://256.com/gray/

-------------------------------------------------------------------------------

0 comments on commit 4d942bc

Please sign in to comment.