Skip to content
Snippets Groups Projects
Commit d1de5a54 authored by keleher's avatar keleher
Browse files

auto

parent 55bb4f26
No related branches found
No related tags found
No related merge requests found
......@@ -64,12 +64,15 @@ added to `ClientReply`.
### The Log
The log will be a totally ordered list of strings, each in one of the following three formats:
```
string = <rep id>,<transaction id>,w,<key>,<value>
string = <rep id>,<transaction id>,r,<key>
string = <rep id>,<transaction id>,commit
string = <rep id>,<transaction id>,abort
string = <client id>,<transaction id>,w,<key>,<value>
string = <client id>,<transaction id>,r,<key>
string = <client id>,<transaction id>,commit
string = <client id>,<transaction id>,abort
```
The first two define reads and writes in the log, while the last is a commit record.
A "client id" is something you make up in your input strings. For instance, you can be
running two instances of `transactionalClient.go` at the same time (both talking to
replica 0). The strings you type into each of the clients should have different client ids.
The first two record formats define reads and writes in the log, while the last is a commit record.
## Part 1: Serializable Transactions
......@@ -106,7 +109,7 @@ log abstraction in `replica.go`
## Use of the `transactionalClient`
`transactionalClient.go` differs from `client.go` in that it reads commands
interactively. Once started, it reads commands (arbitrary strings) from STDIN
and sends them to replica 0. The sole exceptions is:
and sends them to replica 0. The sole exception is:
- `pause <n>` is interpreted as a command to pause for `n` seconds.
All other strings are sent to the replica.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment