MapScanCAS executes a lightweight transaction (i.e. an UPDATE or INSERT statement containing an IF clause). If the transaction fails because the existing values did not match, the previous values will be stored in dest map.
As for INSERT .. IF NOT EXISTS, previous values will be returned as if SELECT * FROM. So using ScanCAS with INSERT is inherently prone to column mismatching. MapScanCAS is added to capture them safely.
MapScanCAS is referenced in 4 repositoriesgithub.com/dessoya/space_craft
- 1 reference in src/sc/models/auth_session/Session.go
- 1 reference in src/sc/models/building/Building.go
- 1 reference in src/sc/models/live_planet/LivePlanet.go
- 1 reference in src/sc/models/player/Player.go
- 1 reference in src/sc/models2/auth_session/Session.go
- 1 reference in session.go
- 1 reference in cassandra/datastore.go