passing object info information with redis module (#138)

* adding object broadcast channel; published on each object table add

* publishing data size to the bcast channel

* bug fix: objectkey

* update object tests to test for data size: C + py

* remove debug

* clang format

* Minor changes.

* Fix error.

* merging with Robert's comments

* clang format for the object table test upgrade
This commit is contained in:
Alexey Tumanov
2016-12-19 21:07:25 -08:00
committed by Robert Nishihara
parent 269f37e26f
commit cb3e6cde9e
7 changed files with 221 additions and 45 deletions
+10 -4
View File
@@ -19,6 +19,14 @@ typedef void (*object_table_lookup_done_callback)(
OWNER const char *manager_vector[],
void *user_context);
/* Callback called when object object_id is available. */
typedef void (*object_table_object_available_callback)(
object_id object_id,
int64_t data_size,
int manager_count,
OWNER const char *manager_vector[],
void *user_context);
/**
* Return the list of nodes storing object_id in their plasma stores.
*
@@ -97,10 +105,6 @@ void object_table_remove(db_handle *db,
* ==== Subscribe to be announced when new object available ====
*/
/* Callback called when object object_id is available. */
typedef object_table_lookup_done_callback
object_table_object_available_callback;
/**
* Set up a client-specific channel for receiving notifications about available
* objects from the object table. The callback will be called once per
@@ -120,6 +124,7 @@ typedef object_table_lookup_done_callback
*/
void object_table_subscribe_to_notifications(
db_handle *db_handle,
bool subscribe_all,
object_table_object_available_callback object_available_callback,
void *subscribe_context,
retry_info *retry,
@@ -153,6 +158,7 @@ typedef struct {
/** Data that is needed to register new object available callbacks with the
* state database. */
typedef struct {
bool subscribe_all;
object_table_object_available_callback object_available_callback;
void *subscribe_context;
} object_table_subscribe_data;