Welcome To TINTIN

A Tool for INcremental INTegrity checking of Assertions in SQL Server


Do you want to ensure some assertions in your DB?

Bring your DB and SQL assertions into TINTIN


... and TINTIN creates the safecommit() procedure

Call the safecommit() at the end of your transactions to efficiently check your assertions

Description



Define your SQL assertions

Up to the current version, TINTIN deals with the fragment of SQL equivalent to relational algebra, so, you can use selection, projection, join, subselect, negation, and union freely. Functions (e.g. aggregates) will be available in next releases.

TINTIN creates the code

TINTIN creates the necessary SQL code to efficiently check your assertions. Efficiency is achieved by its incremental behaviour. When a user applies some update into the DB, only the potentially violated assertions are checked, and only for the data related to the update.

Call safecommit()

To check the assertions, call the automatically generated safecommit() procedure at the end of your transactions. If no assertion violation is found, safecommit() commits the update in the DB, otherwise, it shows the conflictive data/assertion.



Download



First release is now available. Download it here

You can execute TINTIN running the "run-TINTIN.bat" file. If you want to try TINTIN with the DEMO given below, you will find the necessary SQL statements in the "example" folder, just make sure to create the example database executing "example/0.CreateMoviesDB.sql" before starting TINTIN.

This first release has been tested using Windows 8, Java (x64) and a local SQLExpress Server. We are currently working to address compatibility issues with Java (x32).



DEMO


TINTIN Demo

A demo of the tool TINTIN, a Tool for INcremental INTegrity checking of SQL assertions in SQLServer

We have performed some experiments using the TPC-H benchmark. We will publish the experiments and results here shortly



Publications



List of publications of the TINTIN background



Authors

Xavier Oriol - Universitat Politècnica de Catalunya
Ernest Teniente - Universitat Politècnica de Catalunya
Guillem Rull - Universitat de Barcelona

Theme created by BLACKTIE.CO