TSK Schema Versioning

From SleuthKitWiki
Revision as of 06:52, 19 July 2019 by Carrier (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Autopsy uses the database schema that TSK creates (which is also created by tsk_loaddb).

Each database has a schema version to help applications determine which tables should exist.

Prior to Autopsy 2.9 (Schema 7.0), the version was a single number. It is now a two part number that aligns with Semantic Versioning so that backward incompatible changes are easier to detect. There is no patch in the number (i.e. the 3rd number in semantic versions).

   MAJOR.MINOR

The Major number is incremented when backward incompatible changes are made. Examples include:

  • Removing a table or column (expected data is missing)
  • Adding a uniqueness constraint (can no longer add data)
  • New enum value in an existing column (unexpected results - may cause some clients to throw errors because it doesn't know what to do with it).

The Minor number is incremented when backward compatible changes are made. Examples include:

  • New table is added.
  • New column is added.
  • An index is added.

Example Schemas: