Module txid_on_cseq

txid store based on rbrcseq.

Copyright © 2012-2015 Zuse Institute Berlin,

Version: $Id:$

Authors: Florian Schintke (schintke@zib.de).

Description

txid store based on rbrcseq.

Data Types

client_key()

client_key() = [unicode_char()]

erlang_timestamp()

erlang_timestamp() = 
    {MegaSecs :: non_neg_integer(),
     Secs :: 0..999999,
     MicroSecs :: 0..999999}

txid()

txid() = rt_chord:key()

txid_entry()

txid_entry() = 
    {txid(),
     comm:mypid(),
     [client_key()],
     erlang_timestamp(),
     open | commit | abort}

unicode_char()

unicode_char() = 0..55295 | 57344..65533 | 65536..1114111

Function Index

decide/5
delete/2
is_valid_decide/3
is_valid_delete/3
is_valid_new/3
new/3
read/2
wf_decide/3

Function Details

read/2

read(Key :: txid(), ReplyTo :: comm:erl_local_pid()) -> ok

new/3

new(Key :: txid(),
    InvolvedKeys :: [client_key()],
    ReplyTo :: comm:erl_local_pid()) ->
       ok

decide/5

decide(Key :: txid(),
       Decision :: commit | abort,
       ReplyTo :: comm:erl_local_pid(),
       Round :: pr:pr(),
       OldVal :: any()) ->
          ok

delete/2

delete(Key :: txid(), ReplyTo :: comm:erl_local_pid()) -> ok

is_valid_new/3

is_valid_new(ExistingEntry :: prbr_bottom | txid_entry(),
             WriteFilter :: prbr:write_filter(),
             New :: txid_entry()) ->
                {boolean(), null}

is_valid_decide/3

is_valid_decide(ExistingEntry :: prbr_bottom | txid_entry(),
                WriteFilter :: prbr:write_filter(),
                Decision :: commit | abort) ->
                   {boolean(), null}

is_valid_delete/3

is_valid_delete(ExistingEntry :: prbr_bottom | txid_entry(),
                WriteFilter :: prbr:write_filter(),
                New :: prbr_bottom) ->
                   {boolean(), null}

wf_decide/3

wf_decide(Old :: txid_entry(),
          X2 :: null,
          Decision :: commit | abort) ->
             {txid_entry(), none}


Generated by EDoc, Sep 11 2020, 15:25:59.