Class: Aerospike::BatchUDFPolicy

Inherits:
Object
  • Object
show all
Defined in:
lib/aerospike/policy/batch_udf_policy.rb

Overview

Policy attributes used in batch UDF execute commands.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(opt = {}) ⇒ BatchUDFPolicy

Returns a new instance of BatchUDFPolicy.



28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
# File 'lib/aerospike/policy/batch_udf_policy.rb', line 28

def initialize(opt={})
  # Optional expression filter. If filter_exp exists and evaluates to false, the specific batch key
  # request is not performed and {BatchRecord#resultCode} is set to
  # {ResultCode#FILTERED_OUT}.
  #
  # If exists, this filter overrides the batch parent filter {Policy#filter_exp}
  # for the specific key in batch commands that allow a different policy per key.
  # Otherwise, this filter is ignored.
  #
  # Default: nil
  @filter_exp = opt[:filter_exp]

  # Desired consistency guarantee when committing a transaction on the server. The default
  # (COMMIT_ALL) indicates that the server should wait for master and all replica commits to
  # be successful before returning success to the client.
  #
  # Default: CommitLevel::COMMIT_ALL
  @commit_level = opt.fetch(:commit_level, CommitLevel::COMMIT_ALL)

  # Record expiration; also known as time-to-live (TTL).
  # Seconds record will live before being removed by the server.
  #
  # Supported values:
  # - `Aerospike::TTL::NEVER_EXPIRE`: Never expire record; requires Aerospike 2
  #    server versions >= 2.7.2 or Aerospike 3 server versions >= 3.1.4. Do
  #    not use for older servers.
  # - `Aerospike::TTL::NAMESPACE_DEFAULT`: Default to namespace configuration
  #    variable "default-ttl" on the server.
  # - `Aerospike::TTL::DONT_UPDATE`: Do not change a record's expiration date
  #   when updating the record. Requires Aerospike server v3.10.1 or later.
  # - Any value > 0: Actual time-to-live in seconds.
  @ttl = opt[:ttl] || opt[:expiration] || 0

  # If the transaction results in a record deletion, leave a tombstone for the record.
  # This prevents deleted records from reappearing after node failures.
  # Valid for Aerospike Server Enterprise Edition only.
  #
  # Default: false (do not tombstone deleted records).
  @durable_delete = opt.fetch(:durable_delete, false)

  # Send user defined key in addition to hash digest.
  # If true, the key will be stored with the record on the server.
  #
  # Default: false (do not send the user defined key)
  @send_key = opt.fetch(:send_key, false)
end

Instance Attribute Details

#commit_levelObject

Returns the value of attribute commit_level.



23
24
25
# File 'lib/aerospike/policy/batch_udf_policy.rb', line 23

def commit_level
  @commit_level
end

#durable_deleteObject

Returns the value of attribute durable_delete.



23
24
25
# File 'lib/aerospike/policy/batch_udf_policy.rb', line 23

def durable_delete
  @durable_delete
end

#filter_expObject

Returns the value of attribute filter_exp.



23
24
25
# File 'lib/aerospike/policy/batch_udf_policy.rb', line 23

def filter_exp
  @filter_exp
end

#send_keyObject

Returns the value of attribute send_key.



23
24
25
# File 'lib/aerospike/policy/batch_udf_policy.rb', line 23

def send_key
  @send_key
end

#ttlObject Also known as: expiration

Returns the value of attribute ttl.



23
24
25
# File 'lib/aerospike/policy/batch_udf_policy.rb', line 23

def ttl
  @ttl
end