Class: Google::Apis::SpannerV1::ReadOnly
- Inherits:
-
Object
- Object
- Google::Apis::SpannerV1::ReadOnly
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/spanner_v1/classes.rb,
lib/google/apis/spanner_v1/representations.rb,
lib/google/apis/spanner_v1/representations.rb
Overview
Message type to initiate a read-only transaction.
Instance Attribute Summary collapse
-
#exact_staleness ⇒ String
Executes all reads at a timestamp that is
exact_stalenessold. -
#max_staleness ⇒ String
Read data at a timestamp >=
NOW - max_stalenessseconds. -
#min_read_timestamp ⇒ String
Executes all reads at a timestamp >=
min_read_timestamp. -
#read_timestamp ⇒ String
Executes all reads at the given timestamp.
-
#return_read_timestamp ⇒ Boolean
(also: #return_read_timestamp?)
If true, the Cloud Spanner-selected read timestamp is included in the Transaction message that describes the transaction.
-
#strong ⇒ Boolean
(also: #strong?)
Read at a timestamp where all previously committed transactions are visible.
Instance Method Summary collapse
-
#initialize(**args) ⇒ ReadOnly
constructor
A new instance of ReadOnly.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ ReadOnly
Returns a new instance of ReadOnly.
2517 2518 2519 |
# File 'lib/google/apis/spanner_v1/classes.rb', line 2517 def initialize(**args) update!(**args) end |
Instance Attribute Details
#exact_staleness ⇒ String
Executes all reads at a timestamp that is exact_staleness old. The timestamp
is chosen soon after the read is started. Guarantees that all writes that have
committed more than the specified number of seconds ago are visible. Because
Cloud Spanner chooses the exact timestamp, this mode works even if the client'
s local clock is substantially skewed from Cloud Spanner commit timestamps.
Useful for reading at nearby replicas without the distributed timestamp
negotiation overhead of max_staleness.
Corresponds to the JSON property exactStaleness
2470 2471 2472 |
# File 'lib/google/apis/spanner_v1/classes.rb', line 2470 def exact_staleness @exact_staleness end |
#max_staleness ⇒ String
Read data at a timestamp >= NOW - max_staleness seconds. Guarantees that all
writes that have committed more than the specified number of seconds ago are
visible. Because Cloud Spanner chooses the exact timestamp, this mode works
even if the client's local clock is substantially skewed from Cloud Spanner
commit timestamps. Useful for reading the freshest data available at a nearby
replica, while bounding the possible staleness if the local replica has fallen
behind. Note that this option can only be used in single-use transactions.
Corresponds to the JSON property maxStaleness
2481 2482 2483 |
# File 'lib/google/apis/spanner_v1/classes.rb', line 2481 def max_staleness @max_staleness end |
#min_read_timestamp ⇒ String
Executes all reads at a timestamp >= min_read_timestamp. This is useful for
requesting fresher data than some previous read, or data that is fresh enough
to observe the effects of some previously committed transaction whose
timestamp is known. Note that this option can only be used in single-use
transactions. A timestamp in RFC3339 UTC \"Zulu\" format, accurate to
nanoseconds. Example: "2014-10-02T15:01:23.045123456Z".
Corresponds to the JSON property minReadTimestamp
2491 2492 2493 |
# File 'lib/google/apis/spanner_v1/classes.rb', line 2491 def @min_read_timestamp end |
#read_timestamp ⇒ String
Executes all reads at the given timestamp. Unlike other modes, reads at a
specific timestamp are repeatable; the same read at the same timestamp always
returns the same data. If the timestamp is in the future, the read will block
until the specified timestamp, modulo the read's deadline. Useful for large
scale consistent reads such as mapreduces, or for coordinating many reads
against a consistent snapshot of the data. A timestamp in RFC3339 UTC \"Zulu\"
format, accurate to nanoseconds. Example: "2014-10-02T15:01:23.045123456Z".
Corresponds to the JSON property readTimestamp
2502 2503 2504 |
# File 'lib/google/apis/spanner_v1/classes.rb', line 2502 def @read_timestamp end |
#return_read_timestamp ⇒ Boolean Also known as: return_read_timestamp?
If true, the Cloud Spanner-selected read timestamp is included in the
Transaction message that describes the transaction.
Corresponds to the JSON property returnReadTimestamp
2508 2509 2510 |
# File 'lib/google/apis/spanner_v1/classes.rb', line 2508 def @return_read_timestamp end |
#strong ⇒ Boolean Also known as: strong?
Read at a timestamp where all previously committed transactions are visible.
Corresponds to the JSON property strong
2514 2515 2516 |
# File 'lib/google/apis/spanner_v1/classes.rb', line 2514 def strong @strong end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
2522 2523 2524 2525 2526 2527 2528 2529 |
# File 'lib/google/apis/spanner_v1/classes.rb', line 2522 def update!(**args) @exact_staleness = args[:exact_staleness] if args.key?(:exact_staleness) @max_staleness = args[:max_staleness] if args.key?(:max_staleness) @min_read_timestamp = args[:min_read_timestamp] if args.key?(:min_read_timestamp) @read_timestamp = args[:read_timestamp] if args.key?(:read_timestamp) @return_read_timestamp = args[:return_read_timestamp] if args.key?(:return_read_timestamp) @strong = args[:strong] if args.key?(:strong) end |