Tree [r93] /

File Date Author Commit
CLI 2011-02-03 knizhnik [r2] cleanup
CSharp 2012-08-10 knizhnik [r53] Fix bug in setting error handler in C# local CLI
CSharpRemoteCLI 2011-02-03 knizhnik [r2] cleanup
GiST 2011-02-03 knizhnik [r2] cleanup
SubSQLPrj 2011-02-03 knizhnik [r2] cleanup
config 2011-02-03 knizhnik [r2] cleanup
docs 2011-02-03 knizhnik [r2] cleanup
examples 2014-02-07 knizhnik [r85] Add cli_open_force_read and cli_open_no_sync flags
fastdb4ce 2011-02-03 knizhnik [r2] cleanup
inc 2014-07-27 knizhnik [r93] Correctly handle pointer to rectangle parameter
javacli 2011-02-03 knizhnik [r2] cleanup
jnicli 2011-02-03 knizhnik [r2] cleanup
ruby 2011-02-03 knizhnik [r2] cleanup
src 2014-06-18 knizhnik [r91] Optimized version of memory allocator recursion...
subsql4ce 2011-02-03 knizhnik [r2] cleanup
AUTHORS 2011-02-03 knizhnik [r1]
CHANGES 2014-05-04 knizhnik [r89] Release 3.76
COPYING 2011-02-03 knizhnik [r1]
FastDB.bpg 2011-02-03 knizhnik [r1]
FastDB.htm 2013-02-17 knizhnik [r60] Revision 3.74
INSTALL 2011-02-03 knizhnik [r1] 2011-02-03 knizhnik [r1] 2011-02-03 knizhnik [r1]
README 2013-02-21 knizhnik [r64] Update build instructions
aclocal.m4 2011-02-03 knizhnik [r1]
buglogin.htm 2011-02-03 knizhnik [r1]
clilogin.htm 2011-02-03 knizhnik [r1]
clitest.sql 2011-02-03 knizhnik [r1]
configure 2013-02-20 knizhnik [r63] Add configure script with -x permissions 2012-06-01 knizhnik [r45] Fix problem with autoconfig
doxygen.cfg 2011-02-03 knizhnik [r1]
fastdb.dsp 2011-02-03 knizhnik [r1]
fastdb.dsw 2011-02-03 knizhnik [r1]
fastdb.sln 2011-02-03 knizhnik [r1]
fastdb.spec 2011-02-03 knizhnik [r1]
fastdb.vcproj 2011-02-03 knizhnik [r1] 2011-02-03 knizhnik [r1]
javacli.jar 2011-02-03 knizhnik [r1]
jnicli.jar 2011-02-03 knizhnik [r1]
make.bat 2011-02-03 knizhnik [r1]
makefile 2013-02-20 knizhnik [r61] Copy acconfig.h in make install
makefile.acc 2011-02-03 knizhnik [r1]
makefile.bcc 2011-02-03 knizhnik [r1]
makefile.icl 2011-02-03 knizhnik [r1]
makefile.mingw 2011-02-03 knizhnik [r1]
makefile.mvc 2011-02-03 knizhnik [r1]
makefile.osx 2011-02-03 knizhnik [r1]
makefile.sun 2011-02-03 knizhnik [r1]
makefile.suncc 2011-02-03 knizhnik [r1]
makefile.vxworks 2011-02-03 knizhnik [r1]
runtests.bat 2011-02-03 knizhnik [r1] 2011-02-03 knizhnik [r1]
testddl.sql 2011-02-03 knizhnik [r1]

Read Me

FastDB is embedded main memory database.
It is intended to be used in your C/C++ application to provide 
fast access to persistent data. 

As far as FastDB is embedded database, there is need to start some server which
will handle client's requests. FastDB is just an library which is linked in client 
application and provide access to the persistent objects.

To build FastDB library you will need use the proper makefile.
At Linux and most of other popular Unixes with GCC it is enough to 
do "make". You can also use standard way for most of unix systems: ./condifure ; make ; sudo make install.
Alternatively you can look for specialized versions of makefile 
included in distributive (like makefile.sun), write you own makefile based
on standard FastDB makefile or customize some existed makefile.

At Windows with Microsoft Visual C++ you can just execute "make.bat" command.
If error message is printed that "nmake" or "cl" command is not recognized, then
MS Visual Studio environment variables are not properly set.
There are two ways to solve the problem:
1. Run from "Microsoft Visual Studio" menu in start panel, choose "Microsoft Visual Studio Tools", 
and in it - "Microsoft Visual Studio Command Prompt". The in this window change directory to FastDB home
and do "make.bat"
2. In "C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\bin" directory there is vcvars32.bat file
(this is the path for VS 2003, but Visual C++ 6.0 has the similar file). Run it to setup environment in current 

You can also use Microsoft Visual Studio project file (fastdb.sln or fastdb.dsw) and open it with Visual Studio.

In config.h you will find various options for choosing yet or another configuration of FastDB.
The preferable way of changing configuration is to edit this file (instead of specifying correspondent 
macros in compiler command line, because in last case there is a risk that you forget to specify somewhere this
option which cause inconsistency between different modules of your applications and/or FastDB library).

You can use SubSQL utility to inspect content of the database as well as for administration of database.
SubSQL can be started concurrently with you application. But please notice, that FastDB uses 
single-writer-multiple-readers database level locking, so if you have performed some modification in SubSQL 
and did perform commit after it, then application may be blocked until you release (commit or abort) transaction
in SubSQL.

FastDB distribution also includes a lot of examples and tests located in examples directory. 
Them are also build by make. These tests are used for three different purposes:
1. Illustrate FastDB programming approach.
2. Regression tests
3. Performance measurement

More information about FastDB can be found in FastDB.htm file which is located in this directory.