TCache: A Transactional cache with user-defined persistence

[ bsd3, data, database, library ] [ Propose Tags ]

TCache is a transactional cache with configurable persitence. It allows conventional STM transactions for objects that syncronize with their user-defined storages. State in memory and into permanent storage is transactionally coherent.

It has interface defined for Amazon WS and Yesod Persistent backends defined in tcache-backend packages. Persistent is a multi-backend interface for SQL and non SQL databases such in Mongo-db

The package implements serializable STM references, access by key and by record field value, triggers, full text and field indexation, default serialization and a query language based on record fields

Since the STM references can be included in data structures and serialized, this is right for graph databases and other NoSQL databases.

  1. 12.0 space in index data in indexQuery.hs and IndexText.hs triggered errors in the AWS backend. The space has been changed by -. So rename the "index *" files in the TCache folder in order to be recognized.

  2. 11.0.0 added setIndexParsist to define persistence for indexes by type. started the addition of readDBRefs, readResources and so on for simultaneous read, writes and deletes of objects of the same type.

  3. 10.2.0 Added setDefaultPersist and modified the signature of setPersist in Data.TCache.DefaultPersistence. Fixed issues with ghc 7.6.3

  4. 10 version add memoization and a persistent and transactional collection/queue.

  5. 10.0.8 subversion add cachedByKeySTM

  6. 10.0.9 fixed an error in clearSyncChacheProc and SynWrite Asyncronous that checked the cache continuously

See Data.TCache for details

In this release:

Dropped Data.Hashtable (deprecated). Now it uses the package hashtables


Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


Versions [RSS] 0.5, 0.5.1, 0.5.2, 0.5.3, 0.5.4, 0.5.5, 0.6.4, 0.6.5, 0.8.0,,, 0.9,,,,,,,,,,,,,,,,,,,,,,,, 0.12.0, 0.12.1
Dependencies base (>=4 && <5), bytestring, containers (>=, directory (>=1.0), hashtables, mtl, old-time (>=1.0), RefSerialize (>=0.4.0), stm, text [details]
License BSD-3-Clause
Author Alberto Gómez Corona
Category Data, Database
Source repo head: git clone
Uploaded by AlbertoCorona at 2017-02-11T21:56:51Z
Distributions NixOS:0.12.1
Reverse Dependencies 6 direct, 3 indirect [details]
Downloads 35412 total (133 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2017-02-11 [all 1 reports]