Chapter 15
Ruby API

15.1 Client Library

HyperDex provides ruby bindings under the module HyperDex::Client. This library wraps the HyperDex C Client library and enables use of native Ruby data types.

This library was brought up-to-date following the 1.0.rc5 release.

15.1.1 Building the HyperDex Ruby Binding

The HyperDex Ruby Binding must be requested at configure time as it is not automatically built. You can ensure that the Ruby bindings are always built by providing the --enable-ruby-bindings option to ./configure like so:

  % ./configure --enable-client --enable-ruby-bindings

15.1.2 Using Ruby Within Your Application

All client operation are defined in the HyperDex::Ruby module. You can access this in your program with:

  require ’hyperdex’

15.1.3 Hello World

The following is a minimal application that stores the value ”Hello World” and then immediately retrieves the value:

  require "hyperdex"
  c = HyperDex::Client::Client.new("127.0.0.1"1982)

  c.put(:kv"some key", {:v => "Hello World!"})
  puts ’put "Hello World!"’
  puts ’got:’, c.get(:kv"some key")

You can run this example with:

  % ruby hello-world.rb
  put "Hello World!"
  got:
  {:v=>"Hello World!"}

Right away, there are several points worth noting in this example:

15.1.4 Asynchronous Operations

For convenience, the Ruby bindings treat every operation as synchronous. This enables you to write short scripts without concern for asynchronous operations. Most operations come with an asynchronous form, denoted by the async_ prefix. For example, the above Hello World example could be rewritten in asynchronous fashion as such:

  require "hyperdex"
  c = HyperDex::Client::Client.new("127.0.0.1"1982)

  p = c.async_put(:kv"some key", {:v => "Hello World!"})
  p.wait()
  puts ’put "Hello World!"’

  g = c.async_get(:kv"some key")
  puts ’got:’, g.wait()

This enables applications to issue multiple requests simultaneously and wait for their completion in an application-specific order. It’s also possible to use the loop method on the client object to wait for the next request to complete:

  require "hyperdex"
  c = HyperDex::Client::Client.new("127.0.0.1"1982)

  p = c.async_put(:kv"some key", {:v => "Hello World!"})
  p1 = c.loop()

  puts ’put objects are the same:’, (p.equal? p1)
  p.wait()
  puts ’put "Hello World!"’
  g = c.async_get(:kv"some key")

  g1 = c.loop()
  puts ’get objects are the same:’, (g.equal? g1)
  puts ’got:’, g.wait()

15.1.5 Data Structures

The Ruby bindings automatically manage conversion of data types from Ruby to HyperDex types, enabling applications to be written in idiomatic Ruby.

15.1.5.1 Examples

This section shows examples of Ruby data structures that are recognized by HyperDex. The examples here are for illustration purposes and are not exhaustive. Strings  The HyperDex client recognizes Ruby’s strings and symbols and automatically converts them to HyperDex strings. For example, the following two calls are equivalent and have the same effect:

  c.put("kv""somekey", {"v" => "somevalue"})
  c.put(:kv:somekey, {:v => :somevalue})
The recommended convention is to use symbols for space and attribute names, and strings for keys and values like so:
  c.put(:kv"somekey", {:v => "somevalue"})
Integers  The HyperDex client recognizes Ruby’s integers, longs, and fixnums and automatically converts them to HyperDex integers. For example:
  c.put(:kv"somekey", {:v => 42})
Floats  The HyperDex client recognizes Ruby’s floating point numbers and automatically converts them to HyperDex floats. For example:
  c.put(:kv"somekey", {:v => 3.1415})
Lists  The HyperDex client recognizes Ruby lists and automatically converts them to HyperDex lists. For example:
  c.put(:kv"somekey", {:v1 => ["a""b""c"]})
  c.put(:kv"somekey", {:v2 => [123]})
  c.put(:kv"somekey", {:v3 => [1.00.50.25]})
Sets  The HyperDex client recognizes Ruby sets and automaticaly converts them to HyperDex sets. For example:
  require ’set’
  c.put(:kv"somekey", {:v1 => (Set.new ["a""b""c"])})
  c.put(:kv"somekey", {:v2 => (Set.new [123])})
  c.put(:kv"somekey", {:v3 => (Set.new [1.00.50.25])})
Note that you’ll have to include the set module from the standard library. Maps  The HyperDex client recognizes Ruby hashes and automatically converts them to HyperDex maps. For example:
  c.put(:kv"somekey", {:v1 => {"k" => "v"}})
  c.put(:kv"somekey", {:v2 => {1 => 2}})
  c.put(:kv"somekey", {:v3 => {3.14 => 0.125}})
  c.put(:kv"somekey", {:v3 => {"a" => 1}})

15.1.6 Attributes

Attributes in Ruby are specified in the form of a hash from attribute names to their values. As you can see in the examples above, attributes are specified in the form:

  {:name => "value"}

15.1.7 Map Attributes

Map attributes in Ruby are specified in the form of a nested hash. The outer hash key specifies the name, while the inner hash key-value pair specifies the key-value pair of the map. For example:

  {:name => {"key" => "value"}}

15.1.8 Predicates

Predicates in Ruby are specified in the form of a hash from attribute names to their predicates. In the simple case, the predicate is just a value to be compared against:

  {:v => "value"}

This is the same as saying:

  {:v => HyperDex::Client::Equals.new(’value’)}

The Ruby bindings support the full range of predicates supported by HyperDex itself. For example:

  {:v => HyperDex::Client::LessEqual.new(5)}
  {:v => HyperDex::Client::GreaterEqual.new(5)}
  {:v => HyperDex::Client::Range.new(510)}
  {:v => HyperDex::Client::Regex.new(’^s.*’)}
  {:v => HyperDex::Client::LengthEquals.new(5)}
  {:v => HyperDex::Client::LengthLessEqual.new(5)}
  {:v => HyperDex::Client::LengthGreaterEqual.new(5)}
  {:v => HyperDex::Client::Contains.new(’value’)}

15.1.9 Error Handling

All error handling within the Ruby bindings is done via the begin/rescue mechanism of Ruby. Errors will be raised by the library and should be handled by your application. For example, if we were trying to store an integer (5) as attribute :v, where :v is actually a string, we’d generate an error.

  begin
      puts c.put(:kv:my_key, {:v => 5})
  rescue HyperDex::Client::HyperDexClientException => e
      puts e.status
      puts e.symbol
      puts e
  end

Errors of type HyperDexClientException will contain both a message indicating what went wrong, as well as the underlying enum hyperdex_client_returncode. The member status indicates the numeric value of this enum, while symbol returns the enum as a string. The above code will fail with the following output:

8525  
HYPERDEX_CLIENT_WRONGTYPE  
invalid attribute "v": attribute has the wrong type

15.1.10 Operations

15.1.10.1 get

Get an object by key.

Behavior:  Definition: 
  get(spacename, key)
Parameters:  Returns:  Object if found, nil if not found. Raises exception on error.
15.1.10.2 async_get

Get an object by key.

Behavior:  Definition: 
  async_get(spacename, key)
Parameters:  Returns:  A Deferred object with a wait method that returns the object if found, nil if not found. Raises exception on error. See also:  This is the asynchronous form of get.
15.1.10.3 get_partial

Get part of an object by key. This will return only the listed attribute names.

Behavior:  Definition: 
  get_partial(spacename, key, attributenames)
Parameters:  Returns:  Object if found, nil if not found. Raises exception on error.
15.1.10.4 async_get_partial

Get part of an object by key. This will return only the listed attribute names.

Behavior:  Definition: 
  async_get_partial(spacename, key, attributenames)
Parameters:  Returns:  A Deferred object with a wait method that returns the object if found, nil if not found. Raises exception on error. See also:  This is the asynchronous form of get_partial.
15.1.10.5 put

Store or update an object by key. Existing values will be overwritten with the values specified by attrs. Values not specified by attrs will be preserved.

Behavior:  Definition: 
  put(spacename, key, attributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.6 async_put

Store or update an object by key. Existing values will be overwritten with the values specified by attrs. Values not specified by attrs will be preserved.

Behavior:  Definition: 
  async_put(spacename, key, attributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of put.
15.1.10.7 cond_put

Conditionally store or update an object by key. Existing values will be overwritten with the values specified by attrs. Values not specified by attrs will be preserved.

Behavior:  Definition: 
  cond_put(spacename, key, predicates, attributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.8 async_cond_put

Conditionally store or update an object by key. Existing values will be overwritten with the values specified by attrs. Values not specified by attrs will be preserved.

Behavior:  Definition: 
  async_cond_put(spacename, key, predicates, attributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of cond_put.
15.1.10.9 put_if_not_exist

Store a new object by key. Values not specified by attrs will be initialized to their defaults.

Behavior:  Definition: 
  put_if_not_exist(spacename, key, attributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.10 async_put_if_not_exist

Store a new object by key. Values not specified by attrs will be initialized to their defaults.

Behavior:  Definition: 
  async_put_if_not_exist(spacename, key, attributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of put_if_not_exist.
15.1.10.11 del

Delete an object by key.

Behavior:  Definition: 
  del(spacename, key)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.12 async_del

Delete an object by key.

Behavior:  Definition: 
  async_del(spacename, key)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of del.
15.1.10.13 cond_del

Conditionally delete an object by key.

Behavior:  Definition: 
  cond_del(spacename, key, predicates)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.14 async_cond_del

Conditionally delete an object by key.

Behavior:  Definition: 
  async_cond_del(spacename, key, predicates)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of cond_del.
15.1.10.15 atomic_add

Add the specified number to the existing value for each attribute.

Behavior:  Definition: 
  atomic_add(spacename, key, attributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.16 async_atomic_add

Add the specified number to the existing value for each attribute.

Behavior:  Definition: 
  async_atomic_add(spacename, key, attributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of atomic_add.
15.1.10.17 cond_atomic_add

Conditionally add the specified number to the existing value for each attribute.

Behavior:  Definition: 
  cond_atomic_add(spacename, key, predicates, attributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.18 async_cond_atomic_add

Conditionally add the specified number to the existing value for each attribute.

Behavior:  Definition: 
  async_cond_atomic_add(spacename, key, predicates, attributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of cond_atomic_add.
15.1.10.19 atomic_sub

Subtract the specified number from the existing value for each attribute.

Behavior:  Definition: 
  atomic_sub(spacename, key, attributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.20 async_atomic_sub

Subtract the specified number from the existing value for each attribute.

Behavior:  Definition: 
  async_atomic_sub(spacename, key, attributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of atomic_sub.
15.1.10.21 cond_atomic_sub

Conditionally subtract the specified number from the existing value for each attribute.

Behavior:  Definition: 
  cond_atomic_sub(spacename, key, predicates, attributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.22 async_cond_atomic_sub

Conditionally subtract the specified number from the existing value for each attribute.

Behavior:  Definition: 
  async_cond_atomic_sub(spacename, key, predicates, attributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of cond_atomic_sub.
15.1.10.23 atomic_mul

Multiply the existing value by the specified number for each attribute.

Behavior:  Definition: 
  atomic_mul(spacename, key, attributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.24 async_atomic_mul

Multiply the existing value by the specified number for each attribute.

Behavior:  Definition: 
  async_atomic_mul(spacename, key, attributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of atomic_mul.
15.1.10.25 cond_atomic_mul

Conditionally multiply the existing value by the specified number for each attribute.

Behavior:  Definition: 
  cond_atomic_mul(spacename, key, predicates, attributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.26 async_cond_atomic_mul

Conditionally multiply the existing value by the specified number for each attribute.

Behavior:  Definition: 
  async_cond_atomic_mul(spacename, key, predicates, attributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of cond_atomic_mul.
15.1.10.27 atomic_div

Divide the existing value by the specified number for each attribute.

Behavior:  Definition: 
  atomic_div(spacename, key, attributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.28 async_atomic_div

Divide the existing value by the specified number for each attribute.

Behavior:  Definition: 
  async_atomic_div(spacename, key, attributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of atomic_div.
15.1.10.29 cond_atomic_div

Conditionally divide the existing value by the specified number for each attribute.

Behavior:  Definition: 
  cond_atomic_div(spacename, key, predicates, attributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.30 async_cond_atomic_div

Conditionally divide the existing value by the specified number for each attribute.

Behavior:  Definition: 
  async_cond_atomic_div(spacename, key, predicates, attributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of cond_atomic_div.
15.1.10.31 atomic_mod

Store the existing value modulo the specified number for each attribute.

Behavior:  Definition: 
  atomic_mod(spacename, key, attributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.32 async_atomic_mod

Store the existing value modulo the specified number for each attribute.

Behavior:  Definition: 
  async_atomic_mod(spacename, key, attributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of atomic_mod.
15.1.10.33 cond_atomic_mod

Conditionally store the existing value modulo the specified number for each attribute.

Behavior:  Definition: 
  cond_atomic_mod(spacename, key, predicates, attributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.34 async_cond_atomic_mod

Conditionally store the existing value modulo the specified number for each attribute.

Behavior:  Definition: 
  async_cond_atomic_mod(spacename, key, predicates, attributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of cond_atomic_mod.
15.1.10.35 atomic_and

Store the bitwise AND of the existing value and the specified number for each attribute.

Behavior:  Definition: 
  atomic_and(spacename, key, attributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.36 async_atomic_and

Store the bitwise AND of the existing value and the specified number for each attribute.

Behavior:  Definition: 
  async_atomic_and(spacename, key, attributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of atomic_and.
15.1.10.37 cond_atomic_and

Conditionally store the bitwise AND of the existing value and the specified number for each attribute.

Behavior:  Definition: 
  cond_atomic_and(spacename, key, predicates, attributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.38 async_cond_atomic_and

Conditionally store the bitwise AND of the existing value and the specified number for each attribute.

Behavior:  Definition: 
  async_cond_atomic_and(spacename, key, predicates, attributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of cond_atomic_and.
15.1.10.39 atomic_or

Store the bitwise OR of the existing value and the specified number for each attribute.

Behavior:  Definition: 
  atomic_or(spacename, key, attributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.40 async_atomic_or

Store the bitwise OR of the existing value and the specified number for each attribute.

Behavior:  Definition: 
  async_atomic_or(spacename, key, attributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of atomic_or.
15.1.10.41 cond_atomic_or

Conditionally store the bitwise OR of the existing value and the specified number for each attribute.

Behavior:  Definition: 
  cond_atomic_or(spacename, key, predicates, attributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.42 async_cond_atomic_or

Conditionally store the bitwise OR of the existing value and the specified number for each attribute.

Behavior:  Definition: 
  async_cond_atomic_or(spacename, key, predicates, attributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of cond_atomic_or.
15.1.10.43 atomic_xor

Store the bitwise XOR of the existing value and the specified number for each attribute.

Behavior:  Definition: 
  atomic_xor(spacename, key, attributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.44 async_atomic_xor

Store the bitwise XOR of the existing value and the specified number for each attribute.

Behavior:  Definition: 
  async_atomic_xor(spacename, key, attributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of atomic_xor.
15.1.10.45 cond_atomic_xor

Conditionally store the bitwise XOR of the existing value and the specified number for each attribute.

Behavior:  Definition: 
  cond_atomic_xor(spacename, key, predicates, attributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.46 async_cond_atomic_xor

Conditionally store the bitwise XOR of the existing value and the specified number for each attribute.

Behavior:  Definition: 
  async_cond_atomic_xor(spacename, key, predicates, attributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of cond_atomic_xor.
15.1.10.47 string_prepend

Prepend the specified string to the existing value for each attribute.

Behavior:  Definition: 
  string_prepend(spacename, key, attributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.48 async_string_prepend

Prepend the specified string to the existing value for each attribute.

Behavior:  Definition: 
  async_string_prepend(spacename, key, attributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of string_prepend.
15.1.10.49 cond_string_prepend

Conditionally prepend the specified string to the existing value for each attribute.

Behavior:  Definition: 
  cond_string_prepend(spacename, key, predicates, attributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.50 async_cond_string_prepend

Conditionally prepend the specified string to the existing value for each attribute.

Behavior:  Definition: 
  async_cond_string_prepend(spacename, key, predicates, attributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of cond_string_prepend.
15.1.10.51 string_append

Append the specified string to the existing value for each attribute.

Behavior:  Definition: 
  string_append(spacename, key, attributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.52 async_string_append

Append the specified string to the existing value for each attribute.

Behavior:  Definition: 
  async_string_append(spacename, key, attributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of string_append.
15.1.10.53 cond_string_append

Conditionally append the specified string to the existing value for each attribute.

Behavior:  Definition: 
  cond_string_append(spacename, key, predicates, attributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.54 async_cond_string_append

Conditionally append the specified string to the existing value for each attribute.

Behavior:  Definition: 
  async_cond_string_append(spacename, key, predicates, attributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of cond_string_append.
15.1.10.55 list_lpush

Push the specified value onto the front of the list for each attribute.

Behavior:  Definition: 
  list_lpush(spacename, key, attributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.56 async_list_lpush

Push the specified value onto the front of the list for each attribute.

Behavior:  Definition: 
  async_list_lpush(spacename, key, attributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of list_lpush.
15.1.10.57 cond_list_lpush

Condtitionally push the specified value onto the front of the list for each attribute.

Behavior:  Definition: 
  cond_list_lpush(spacename, key, predicates, attributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.58 async_cond_list_lpush

Condtitionally push the specified value onto the front of the list for each attribute.

Behavior:  Definition: 
  async_cond_list_lpush(spacename, key, predicates, attributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of cond_list_lpush.
15.1.10.59 list_rpush

Push the specified value onto the back of the list for each attribute.

Behavior:  Definition: 
  list_rpush(spacename, key, attributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.60 async_list_rpush

Push the specified value onto the back of the list for each attribute.

Behavior:  Definition: 
  async_list_rpush(spacename, key, attributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of list_rpush.
15.1.10.61 cond_list_rpush

Conditionally push the specified value onto the back of the list for each attribute.

Behavior:  Definition: 
  cond_list_rpush(spacename, key, predicates, attributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.62 async_cond_list_rpush

Conditionally push the specified value onto the back of the list for each attribute.

Behavior:  Definition: 
  async_cond_list_rpush(spacename, key, predicates, attributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of cond_list_rpush.
15.1.10.63 set_add

Add the specified value to the set for each attribute.

Behavior:  Definition: 
  set_add(spacename, key, attributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.64 async_set_add

Add the specified value to the set for each attribute.

Behavior:  Definition: 
  async_set_add(spacename, key, attributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of set_add.
15.1.10.65 cond_set_add

Conditionally add the specified value to the set for each attribute.

Behavior:  Definition: 
  cond_set_add(spacename, key, predicates, attributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.66 async_cond_set_add

Conditionally add the specified value to the set for each attribute.

Behavior:  Definition: 
  async_cond_set_add(spacename, key, predicates, attributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of cond_set_add.
15.1.10.67 set_remove

Remove the specified value from the set. If the value is not contained within the set, this operation will do nothing.

Behavior:  Definition: 
  set_remove(spacename, key, attributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.68 async_set_remove

Remove the specified value from the set. If the value is not contained within the set, this operation will do nothing.

Behavior:  Definition: 
  async_set_remove(spacename, key, attributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of set_remove.
15.1.10.69 cond_set_remove

Conditionally remove the specified value from the set. If the value is not contained within the set, this operation will do nothing.

Behavior:  Definition: 
  cond_set_remove(spacename, key, predicates, attributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.70 async_cond_set_remove

Conditionally remove the specified value from the set. If the value is not contained within the set, this operation will do nothing.

Behavior:  Definition: 
  async_cond_set_remove(spacename, key, predicates, attributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of cond_set_remove.
15.1.10.71 set_intersect

Store the intersection of the specified set and the existing value for each attribute.

Behavior:  Definition: 
  set_intersect(spacename, key, attributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.72 async_set_intersect

Store the intersection of the specified set and the existing value for each attribute.

Behavior:  Definition: 
  async_set_intersect(spacename, key, attributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of set_intersect.
15.1.10.73 cond_set_intersect

Conditionally store the intersection of the specified set and the existing value for each attribute.

Behavior:  Definition: 
  cond_set_intersect(spacename, key, predicates, attributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.74 async_cond_set_intersect

Conditionally store the intersection of the specified set and the existing value for each attribute.

Behavior:  Definition: 
  async_cond_set_intersect(spacename, key, predicates, attributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of cond_set_intersect.
15.1.10.75 set_union

Store the union of the specified set and the existing value for each attribute.

Behavior:  Definition: 
  set_union(spacename, key, attributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.76 async_set_union

Store the union of the specified set and the existing value for each attribute.

Behavior:  Definition: 
  async_set_union(spacename, key, attributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of set_union.
15.1.10.77 cond_set_union

Conditionally store the union of the specified set and the existing value for each attribute.

Behavior:  Definition: 
  cond_set_union(spacename, key, predicates, attributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.78 async_cond_set_union

Conditionally store the union of the specified set and the existing value for each attribute.

Behavior:  Definition: 
  async_cond_set_union(spacename, key, predicates, attributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of cond_set_union.
15.1.10.79 map_add

Insert a key-value pair into the map specified by each map-attribute.

Behavior:  Definition: 
  map_add(spacename, key, mapattributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.80 async_map_add

Insert a key-value pair into the map specified by each map-attribute.

Behavior:  Definition: 
  async_map_add(spacename, key, mapattributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of map_add.
15.1.10.81 cond_map_add

Conditionally insert a key-value pair into the map specified by each map-attribute.

Behavior:  Definition: 
  cond_map_add(spacename, key, predicates, mapattributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.82 async_cond_map_add

Conditionally insert a key-value pair into the map specified by each map-attribute.

Behavior:  Definition: 
  async_cond_map_add(spacename, key, predicates, mapattributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of cond_map_add.
15.1.10.83 map_remove

Remove a key-value pair from the map specified by each attribute. If there is no pair with the specified key within the map, this operation will do nothing.

Behavior:  Definition: 
  map_remove(spacename, key, attributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.84 async_map_remove

Remove a key-value pair from the map specified by each attribute. If there is no pair with the specified key within the map, this operation will do nothing.

Behavior:  Definition: 
  async_map_remove(spacename, key, attributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of map_remove.
15.1.10.85 cond_map_remove

Conditionally remove a key-value pair from the map specified by each attribute.

Behavior:  Definition: 
  cond_map_remove(spacename, key, predicates, attributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.86 async_cond_map_remove

Conditionally remove a key-value pair from the map specified by each attribute.

Behavior:  Definition: 
  async_cond_map_remove(spacename, key, predicates, attributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of cond_map_remove.
15.1.10.87 map_atomic_add

Add the specified number to the value of a key-value pair within each map.

Behavior:  Definition: 
  map_atomic_add(spacename, key, mapattributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.88 async_map_atomic_add

Add the specified number to the value of a key-value pair within each map.

Behavior:  Definition: 
  async_map_atomic_add(spacename, key, mapattributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of map_atomic_add.
15.1.10.89 cond_map_atomic_add

Conditionally add the specified number to the value of a key-value pair within each map.

Behavior:  Definition: 
  cond_map_atomic_add(spacename, key, predicates, mapattributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.90 async_cond_map_atomic_add

Conditionally add the specified number to the value of a key-value pair within each map.

Behavior:  Definition: 
  async_cond_map_atomic_add(spacename, key, predicates, mapattributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of cond_map_atomic_add.
15.1.10.91 map_atomic_sub

Subtract the specified number from the value of a key-value pair within each map.

Behavior:  Definition: 
  map_atomic_sub(spacename, key, mapattributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.92 async_map_atomic_sub

Subtract the specified number from the value of a key-value pair within each map.

Behavior:  Definition: 
  async_map_atomic_sub(spacename, key, mapattributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of map_atomic_sub.
15.1.10.93 cond_map_atomic_sub

Subtract the specified number from the value of a key-value pair within each map.

Behavior:  Definition: 
  cond_map_atomic_sub(spacename, key, predicates, mapattributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.94 async_cond_map_atomic_sub

Subtract the specified number from the value of a key-value pair within each map.

Behavior:  Definition: 
  async_cond_map_atomic_sub(spacename, key, predicates, mapattributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of cond_map_atomic_sub.
15.1.10.95 map_atomic_mul

Multiply the value of each key-value pair by the specified number for each map.

Behavior:  Definition: 
  map_atomic_mul(spacename, key, mapattributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.96 async_map_atomic_mul

Multiply the value of each key-value pair by the specified number for each map.

Behavior:  Definition: 
  async_map_atomic_mul(spacename, key, mapattributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of map_atomic_mul.
15.1.10.97 cond_map_atomic_mul

Conditionally multiply the value of each key-value pair by the specified number for each map.

Behavior:  Definition: 
  cond_map_atomic_mul(spacename, key, predicates, mapattributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.98 async_cond_map_atomic_mul

Conditionally multiply the value of each key-value pair by the specified number for each map.

Behavior:  Definition: 
  async_cond_map_atomic_mul(spacename, key, predicates, mapattributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of cond_map_atomic_mul.
15.1.10.99 map_atomic_div

Divide the value of each key-value pair by the specified number for each map.

Behavior:  Definition: 
  map_atomic_div(spacename, key, mapattributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.100 async_map_atomic_div

Divide the value of each key-value pair by the specified number for each map.

Behavior:  Definition: 
  async_map_atomic_div(spacename, key, mapattributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of map_atomic_div.
15.1.10.101 cond_map_atomic_div

Conditionally divide the value of each key-value pair by the specified number for each map.

Behavior:  Definition: 
  cond_map_atomic_div(spacename, key, predicates, mapattributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.102 async_cond_map_atomic_div

Conditionally divide the value of each key-value pair by the specified number for each map.

Behavior:  Definition: 
  async_cond_map_atomic_div(spacename, key, predicates, mapattributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of cond_map_atomic_div.
15.1.10.103 map_atomic_mod

Store the value of the key-value pair modulo the specified number for each map.

Behavior:  Definition: 
  map_atomic_mod(spacename, key, mapattributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.104 async_map_atomic_mod

Store the value of the key-value pair modulo the specified number for each map.

Behavior:  Definition: 
  async_map_atomic_mod(spacename, key, mapattributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of map_atomic_mod.
15.1.10.105 cond_map_atomic_mod

Conditionally store the value of the key-value pair modulo the specified number for each map.

Behavior:  Definition: 
  cond_map_atomic_mod(spacename, key, predicates, mapattributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.106 async_cond_map_atomic_mod

Conditionally store the value of the key-value pair modulo the specified number for each map.

Behavior:  Definition: 
  async_cond_map_atomic_mod(spacename, key, predicates, mapattributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of cond_map_atomic_mod.
15.1.10.107 map_atomic_and

Store the bitwise AND of the value of the key-value pair and the specified number for each map.

Behavior:  Definition: 
  map_atomic_and(spacename, key, mapattributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.108 async_map_atomic_and

Store the bitwise AND of the value of the key-value pair and the specified number for each map.

Behavior:  Definition: 
  async_map_atomic_and(spacename, key, mapattributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of map_atomic_and.
15.1.10.109 cond_map_atomic_and

Conditionally store the bitwise AND of the value of the key-value pair and the specified number for each map.

Behavior:  Definition: 
  cond_map_atomic_and(spacename, key, predicates, mapattributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.110 async_cond_map_atomic_and

Conditionally store the bitwise AND of the value of the key-value pair and the specified number for each map.

Behavior:  Definition: 
  async_cond_map_atomic_and(spacename, key, predicates, mapattributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of cond_map_atomic_and.
15.1.10.111 map_atomic_or

Store the bitwise OR of the value of the key-value pair and the specified number for each map.

Behavior:  Definition: 
  map_atomic_or(spacename, key, mapattributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.112 async_map_atomic_or

Store the bitwise OR of the value of the key-value pair and the specified number for each map.

Behavior:  Definition: 
  async_map_atomic_or(spacename, key, mapattributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of map_atomic_or.
15.1.10.113 cond_map_atomic_or

Conditionally store the bitwise OR of the value of the key-value pair and the specified number for each map.

Behavior:  Definition: 
  cond_map_atomic_or(spacename, key, predicates, mapattributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.114 async_cond_map_atomic_or

Conditionally store the bitwise OR of the value of the key-value pair and the specified number for each map.

Behavior:  Definition: 
  async_cond_map_atomic_or(spacename, key, predicates, mapattributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of cond_map_atomic_or.
15.1.10.115 map_atomic_xor

Store the bitwise XOR of the value of the key-value pair and the specified number for each map.

Behavior:  Definition: 
  map_atomic_xor(spacename, key, mapattributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.116 async_map_atomic_xor

Store the bitwise XOR of the value of the key-value pair and the specified number for each map.

Behavior:  Definition: 
  async_map_atomic_xor(spacename, key, mapattributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of map_atomic_xor.
15.1.10.117 cond_map_atomic_xor

Conditionally store the bitwise XOR of the value of the key-value pair and the specified number for each map.

Behavior:  Definition: 
  cond_map_atomic_xor(spacename, key, predicates, mapattributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.118 async_cond_map_atomic_xor

Conditionally store the bitwise XOR of the value of the key-value pair and the specified number for each map.

Behavior:  Definition: 
  async_cond_map_atomic_xor(spacename, key, predicates, mapattributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of cond_map_atomic_xor.
15.1.10.119 map_string_prepend

Prepend the specified string to the value of the key-value pair for each map.

Behavior:  Definition: 
  map_string_prepend(spacename, key, mapattributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.120 async_map_string_prepend

Prepend the specified string to the value of the key-value pair for each map.

Behavior:  Definition: 
  async_map_string_prepend(spacename, key, mapattributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of map_string_prepend.
15.1.10.121 cond_map_string_prepend

Conditionally prepend the specified string to the value of the key-value pair for each map.

Behavior:  Definition: 
  cond_map_string_prepend(spacename, key, predicates, mapattributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.122 async_cond_map_string_prepend

Conditionally prepend the specified string to the value of the key-value pair for each map.

Behavior:  Definition: 
  async_cond_map_string_prepend(spacename, key, predicates, mapattributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of cond_map_string_prepend.
15.1.10.123 map_string_append

Append the specified string to the value of the key-value pair for each map.

Behavior:  Definition: 
  map_string_append(spacename, key, mapattributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.124 async_map_string_append

Append the specified string to the value of the key-value pair for each map.

Behavior:  Definition: 
  async_map_string_append(spacename, key, mapattributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of map_string_append.
15.1.10.125 cond_map_string_append

Conditionally append the specified string to the value of the key-value pair for each map.

Behavior:  Definition: 
  cond_map_string_append(spacename, key, predicates, mapattributes)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.126 async_cond_map_string_append

Conditionally append the specified string to the value of the key-value pair for each map.

Behavior:  Definition: 
  async_cond_map_string_append(spacename, key, predicates, mapattributes)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of cond_map_string_append.
15.1.10.127 search

Return all objects that match the specified checks.

Behavior:  Definition: 
  search(spacename, predicates)
Parameters:  Returns:  An iterator that returns objects one at a time. Excpetions will be returned via the same path to enable applications to retrieve partial results in the face of errors.
15.1.10.128 search_describe

Return a human-readable string suitable for debugging search internals. This API is only really relevant for debugging the internals of search. Definition: 

  search_describe(spacename, predicates)
Parameters:  Returns:  Description of search. Raises exception on error.
15.1.10.129 async_search_describe

Return a human-readable string suitable for debugging search internals. This API is only really relevant for debugging the internals of search. Definition: 

  async_search_describe(spacename, predicates)
Parameters:  Returns:  A Deferred object with a wait method that returns a description of the search. Raises exception on error. See also:  This is the asynchronous form of search_describe.
15.1.10.130 sorted_search

Return all objects that match the specified checks, sorted according to attr.

Behavior:  Definition: 
  sorted_search(spacename, predicates, sortby, limit, maxmin)
Parameters:  Returns:  An iterator that returns objects one at a time. Excpetions will be returned via the same path to enable applications to retrieve partial results in the face of errors.
15.1.10.131 group_del

Asynchronously delete all objects that match the specified checks.

Behavior:  Definition: 
  group_del(spacename, predicates)
Parameters:  Returns:  True if the operation succeeded. False if any provided predicates failed. Raises an exception on error.
15.1.10.132 async_group_del

Asynchronously delete all objects that match the specified checks.

Behavior:  Definition: 
  async_group_del(spacename, predicates)
Parameters:  Returns:  A Deferred object with a wait method that returns True if the operation succeeded or False if any provided predicates failed. Raises an exception on error. See also:  This is the asynchronous form of group_del.
15.1.10.133 count

Count the number of objects that match the specified checks.

Behavior:  Definition: 
  count(spacename, predicates)
Parameters:  Returns:  Number of objects found. Raises exception on error.
15.1.10.134 async_count

Count the number of objects that match the specified checks.

Behavior:  Definition: 
  async_count(spacename, predicates)
Parameters:  Returns:  A Deferred object with a wait method that returns the number of objects found. Raises exception on error. See also:  This is the asynchronous form of count.

15.1.11 Working with Signals

The HyperDex client library is signal-safe. Should a signal interrupt the client during a blocking operation, it will raise a HyperDexClientException with status HYPERDEX_CLIENT_INTERRUPTED.

15.1.12 Working with Threads

The Ruby module is fully reentrant. Instances of HyperDex::Client::Client and their associated state may be accessed from multiple threads, provided that the application employs its own synchronization that provides mutual exclusion.

Put simply, a multi-threaded application should protect each Client instance with a mutex or lock to ensure correct operation.