X-Git-Url: https://pd.if.org/git/?p=nbds;a=blobdiff_plain;f=include%2Ftxn.h;h=7cc40d0c42344f1a53aa003f79253ce5b1b0abfa;hp=635a3692d20fdb8c58bffbcf9715c27918167f7a;hb=c7c053b290f15b7c8ba4f7327ead5a6fe836ec80;hpb=d26bac75802a324ed98c8d3d88cfb9eb87b3b35a diff --git a/include/txn.h b/include/txn.h index 635a369..7cc40d0 100644 --- a/include/txn.h +++ b/include/txn.h @@ -7,16 +7,17 @@ #include "map.h" -typedef enum { TXN_REPEATABLE_READ, TXN_READ_COMMITTED, TXN_READ_ONLY } txn_type_e; typedef enum { TXN_RUNNING, TXN_VALIDATING, TXN_VALIDATED, TXN_ABORTED } txn_state_e; typedef struct txn txn_t; -txn_t * txn_begin (txn_type_e type, map_t *map); +void txn_init (void); + +txn_t * txn_begin (map_t *map); void txn_abort (txn_t *txn); txn_state_e txn_commit (txn_t *txn); -uint64_t tm_get (txn_t *txn, void *key); -void tm_set (txn_t *txn, void *key, uint64_t value); +map_val_t txn_map_get (txn_t *txn, map_key_t key); +void txn_map_set (txn_t *txn, map_key_t key, map_val_t value); #endif//TXN_H