mirror of
https://github.com/tursodatabase/libsql.git
synced 2024-11-23 15:36:17 +00:00
.. | ||
lsmtest1.c | ||
lsmtest2.c | ||
lsmtest3.c | ||
lsmtest4.c | ||
lsmtest5.c | ||
lsmtest6.c | ||
lsmtest7.c | ||
lsmtest8.c | ||
lsmtest9.c | ||
lsmtest_bt.c | ||
lsmtest_datasource.c | ||
lsmtest_func.c | ||
lsmtest_io.c | ||
lsmtest_main.c | ||
lsmtest_mem.c | ||
lsmtest_tdb2.cc | ||
lsmtest_tdb3.c | ||
lsmtest_tdb4.c | ||
lsmtest_tdb.c | ||
lsmtest_tdb.h | ||
lsmtest_util.c | ||
lsmtest_win32.c | ||
lsmtest.h | ||
README |
Organization of test case files: lsmtest1.c: Data tests. Tests that perform many inserts and deletes on a database file, then verify that the contents of the database can be queried. lsmtest2.c: Crash tests. Tests that attempt to verify that the database recovers correctly following an application or system crash. lsmtest3.c: Rollback tests. Tests that focus on the explicit rollback of transactions and sub-transactions. lsmtest4.c: Multi-client tests. lsmtest5.c: Multi-client tests with a different thread for each client. lsmtest6.c: OOM injection tests. lsmtest7.c: API tests. lsmtest8.c: Writer crash tests. Tests in this file attempt to verify that the system recovers and other clients proceed unaffected if a process fails in the middle of a write transaction. The difference from lsmtest2.c is that this file tests live-recovery (recovery from a failure that occurs while other clients are still running) whereas lsmtest2.c tests recovery from a system or power failure. lsmtest9.c: More data tests. These focus on testing that calling lsm_work(nMerge=1) to compact the database does not corrupt it. In other words, that databases containing block-redirects can be read and written.