Skip to content

sqlumdash/sqlumdash

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

93 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SQLumDash

SQLumDash is based on SQLite. Concurrency is improved by introducing the row lock feature.

The data lock specification is changed. SQLite's transaction isolation level is Serializable. That of SQLumDash is Read Committed. When user modifies record in a table, a record lock is acquired. If it cannot get a lock, the query fails.

You can use SQLumDash as same as SQLite. API is same.

Row lock information is shared with processes. If a process finished unexpectedly, unnecessary lock information might be stayed. In order to unlock them, please use sqlumdash_cleaner.exe which clears all record information. If there is a process which is in a transaction, sqlumdash_cleaner.exe should be called after end the transaction.

How to build SQLumDash

I. Generate SQLumDash source code.

  1. Apply patch
  $ patch -p1 -d sqlite < patch/sqlumdash.patch
  1. Copy new files
  $ cp src/* sqlite/src/
  $ cp -R tool/* sqlite/tool/
  $ cp test/* sqlite/test/

II. Build psmalloc module

  1. Goto sqlite directory

  2. Checkout the psmalloc repository

  $ git clone https://github.com/sqlumdash/psmalloc.git
  1. Goto psmalloc directory

  2. Build psmalloc library (see README file)

  3. Copy the generated psmalloc library to sqlite/psmalloc directory (see README file)

III. Build SQLumDash binary

  1. Execute VisualStudio Command Prompt

  2. Goto sqlite directory

  3. Use Makefile

  $ nmake /F Makefile.msc

Notices

Table locking

DELETE-ALL requires to get a table lock. If someone are modfying the table(INSERT, DELETE and UPDATE), the other user cannot execute DELETE-ALL, and vice versa.

Force-commit

If DDL is executed, a transaction is committeded forcibly automatically. As same as DDL, the following command is also force-commit.

  • PRAGMA incremental_vacuum

Lisence

This software excluding sqlite is released under the MIT License, see LICENSE file.

Copyright (c) 2018-2021 Toshiba Corporation

About

The database which extended SQLite.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published