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

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

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.8.0.1, 0.8.0.2, 0.9, 0.9.0.1, 0.9.0.2, 0.9.0.3, 0.9.0.4, 0.10.0.0, 0.10.0.1, 0.10.0.2, 0.10.0.3, 0.10.0.4, 0.10.0.5, 0.10.0.6, 0.10.0.8, 0.10.0.9, 0.10.0.10, 0.10.0.11, 0.10.0.12, 0.10.1.0, 0.10.2.0, 0.10.2.1, 0.10.2.2, 0.10.2.3, 0.10.2.4, 0.11.0.0, 0.12.0, 0.12.1, 0.13.3
Dependencies base (>=4 && <5), bytestring, containers (>=0.1.0.1), directory (>=1.0), hashtables, mtl, old-time (>=1.0), RefSerialize, stm, text [details]
License BSD-3-Clause
Author Alberto Gómez Corona
Maintainer agocorona@gmail.com
Category Data, Database
Source repo head: git clone https://github.com/agocorona/TCache
Uploaded by AlbertoCorona at 2014-06-03T09:02:19Z
Distributions LTSHaskell:0.13.3, NixOS:0.13.3
Reverse Dependencies 6 direct, 3 indirect [details]
Downloads 36188 total (95 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Successful builds reported [all 1 reports]