xref: /dflybsd-src/lib/libc/db/test/README (revision 86d7f5d305c6adaa56ff4582ece9859d73106103)
186d7f5d3SJohn Marino#	@(#)README	8.8 (Berkeley) 7/31/94
286d7f5d3SJohn Marino
386d7f5d3SJohn MarinoTo build this portably, try something like:
486d7f5d3SJohn Marino
586d7f5d3SJohn Marino    make PORTDIR="../PORT/MACH"
686d7f5d3SJohn Marino
786d7f5d3SJohn Marinowhere MACH is the machine, i.e. "sunos.4.1.1".
886d7f5d3SJohn Marino
986d7f5d3SJohn MarinoTo run the tests, enter "sh run.test".  If your system dictionary isn't
1086d7f5d3SJohn Marinoin /usr/share/dict/words, edit run.test to reflect the correct place.
1186d7f5d3SJohn Marino
1286d7f5d3SJohn MarinoFairly large files (the command files) are built in this directory during
1386d7f5d3SJohn Marinothe test runs, and even larger files (the database files) are created in
1486d7f5d3SJohn Marino"/var/tmp".  If the latter directory doesn't exist, set the environmental
1586d7f5d3SJohn Marinovariable TMPDIR to a directory where the files can be built.
1686d7f5d3SJohn Marino
1786d7f5d3SJohn Marino=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
1886d7f5d3SJohn MarinoThe script file consists of lines with an initial character which is
1986d7f5d3SJohn Marinothe command for that line, or an initial character indicating a key
2086d7f5d3SJohn Marinoor data entry for a previous command.
2186d7f5d3SJohn Marino
2286d7f5d3SJohn MarinoLegal command characters are as follows:
2386d7f5d3SJohn Marino
2486d7f5d3SJohn Marinoc: compare a record
2586d7f5d3SJohn Marino	+ must be followed by [kK][dD]; the data value in the database
2686d7f5d3SJohn Marino	  associated with the specified key is compared to the specified
2786d7f5d3SJohn Marino	  data value.
2886d7f5d3SJohn Marinoe: echo a string
2986d7f5d3SJohn Marino	+ writes out the rest of the line into the output file; if the
3086d7f5d3SJohn Marino	  last character is not a carriage-return, a newline is appended.
3186d7f5d3SJohn Marinof: set the flags for the next command
3286d7f5d3SJohn Marino	+ no value zero's the flags
3386d7f5d3SJohn Marinog: do a get command
3486d7f5d3SJohn Marino	+ must be followed by [kK]
3586d7f5d3SJohn Marino	+ writes out the retrieved data DBT.
3686d7f5d3SJohn Marinoo [r]: dump [reverse]
3786d7f5d3SJohn Marino	+ dump the database out, if 'r' is set, in reverse order.
3886d7f5d3SJohn Marinop: do a put command
3986d7f5d3SJohn Marino	+ must be followed by [kK][dD]
4086d7f5d3SJohn Marinor: do a del command
4186d7f5d3SJohn Marino	+ must be followed by [kK] unless R_CURSOR flag set.
4286d7f5d3SJohn MarinoS: sync the database
4386d7f5d3SJohn Marinos: do a seq command
4486d7f5d3SJohn Marino	+ must be followed by [kK] if R_CURSOR flag set.
4586d7f5d3SJohn Marino	+ writes out the retrieved data DBT.
4686d7f5d3SJohn Marino
4786d7f5d3SJohn MarinoLegal key/data characters are as follows:
4886d7f5d3SJohn Marino
4986d7f5d3SJohn MarinoD [file]: data file
5086d7f5d3SJohn Marino	+ set the current data value to the contents of the file
5186d7f5d3SJohn Marinod [data]:
5286d7f5d3SJohn Marino	+ set the current key value to the contents of the line.
5386d7f5d3SJohn MarinoK [file]: key file
5486d7f5d3SJohn Marino	+ set the current key value to the contents of the file
5586d7f5d3SJohn Marinok [data]:
5686d7f5d3SJohn Marino	+ set the current key value to the contents of the line.
5786d7f5d3SJohn Marino
5886d7f5d3SJohn MarinoBlank lines, lines with leading white space, and lines with leading
5986d7f5d3SJohn Marinohash marks (#) are ignored.
6086d7f5d3SJohn Marino
6186d7f5d3SJohn MarinoOptions to dbtest are as follows:
6286d7f5d3SJohn Marino
6386d7f5d3SJohn Marino	-d: Set the DB_LOCK flag.
6486d7f5d3SJohn Marino	-f: Use the file argument as the database file.
6586d7f5d3SJohn Marino	-i: Use the rest of the argument to set elements in the info
6686d7f5d3SJohn Marino	    structure.  If the type is btree, then "-i cachesize=10240"
6786d7f5d3SJohn Marino	    will set BTREEINFO.cachesize to 10240.
6886d7f5d3SJohn Marino	-o: The rest of the argument is the output file instead of
6986d7f5d3SJohn Marino	    using stdout.
7086d7f5d3SJohn Marino	-s: Don't delete the database file before opening it, i.e.
7186d7f5d3SJohn Marino	    use the database file from a previous run.
7286d7f5d3SJohn Marino
7386d7f5d3SJohn MarinoDbtest requires two arguments, the type of access "hash", "recno"
7486d7f5d3SJohn Marinoor "btree", and the script name or "-" to indicate stdin.
75