Skip to content


Subversion checkout URL

You can clone with
Download ZIP
100644 38 lines (30 sloc) 1.587 kB
fccc685 Initial open-source release
MLstate authored
1 (*
2 Copyright © 2011 MLstate
4 This file is part of OPA.
6 OPA is free software: you can redistribute it and/or modify it under the
7 terms of the GNU Affero General Public License, version 3, as published by
8 the Free Software Foundation.
10 OPA is distributed in the hope that it will be useful, but WITHOUT ANY
11 WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
12 FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for
13 more details.
15 You should have received a copy of the GNU Affero General Public License
16 along with OPA. If not, see <>.
17 *)
18 (** A layer than adds transaction support. Designed to work with a stack
19 with the Badop_sync layer (which has only primitive transaction support)
20 at the bottom, possibly with a clien-server link in-between.
21 Should not be used on top of expensive transactions, such as those
22 in Badop_local. Otherwise it's inefficient, because the transactions
23 of the lower layers are aggregated in large numbers within the higher
24 level transactions, just as primitive DB write operations.
26 This is WIP. For now we know and subvert the structure of the lower layer.
27 *)
29 (* Not implemented yet
30 module F : functor (Backend: Badop.S
31 (* TODO: remove all these constraints, one by one. *)
32 with type database = Badop_sync.database
33 and type transaction = Badop_sync.transaction
34 and type revision = Badop_sync.revision
35 ) -> Badop.S
37 *)
Something went wrong with that request. Please try again.