mirror of
https://github.com/etcd-io/etcd.git
synced 2024-09-27 06:25:44 +00:00
*: rename Snapshot STM isolation to SerializableSnapshot
Pure Snapshot isolation would permit read conflicts. Change the name from Snapshot to SerializableSnapshot to reflect that it will also reject read conflicts.
This commit is contained in:
parent
216a6347b2
commit
4f9aa276bd
@ -43,8 +43,9 @@ type STM interface {
|
||||
type Isolation int
|
||||
|
||||
const (
|
||||
// Snapshot is serializable but also checks writes for conflicts.
|
||||
Snapshot Isolation = iota
|
||||
// SerializableSnapshot provides serializable isolation and also checks
|
||||
// for write conflicts.
|
||||
SerializableSnapshot Isolation = iota
|
||||
// Serializable reads within the same transactiona attempt return data
|
||||
// from the at the revision of the first read.
|
||||
Serializable
|
||||
@ -102,7 +103,7 @@ func NewSTM(c *v3.Client, apply func(STM) error, so ...stmOption) (*v3.TxnRespon
|
||||
|
||||
func mkSTM(c *v3.Client, opts *stmOptions) STM {
|
||||
switch opts.iso {
|
||||
case Snapshot:
|
||||
case SerializableSnapshot:
|
||||
s := &stmSerializable{
|
||||
stm: stm{client: c, ctx: opts.ctx},
|
||||
prefetch: make(map[string]*v3.GetResponse),
|
||||
|
@ -88,7 +88,7 @@ func stmFunc(cmd *cobra.Command, args []string) {
|
||||
case "s":
|
||||
stmIso = v3sync.Serializable
|
||||
case "ss":
|
||||
stmIso = v3sync.Snapshot
|
||||
stmIso = v3sync.SerializableSnapshot
|
||||
default:
|
||||
fmt.Fprintln(os.Stderr, cmd.Usage())
|
||||
os.Exit(1)
|
||||
|
Loading…
x
Reference in New Issue
Block a user