mirror of
https://github.com/vale981/ray
synced 2025-03-13 14:46:38 -04:00

* Clean up plasma subscribers on EPIPE First pass at a monitoring script - monitor can detect local scheduler death Clean up task table upon local scheduler death in monitoring script Don't schedule to dead local schedulers in global scheduler Have global scheduler update the db clients table, monitor script cleans up state Documentation Monitor script should scan tables before beginning to read from subscription channel Fix for python3 Redirect monitor output to redis logs, fix hanging in multinode tests * Publish auxiliary addresses as part of db_client deletion notifications * Fix test case? * Small changes. * Use SCAN instead of KEYS * Address comments * Address more comments * Free redis module strings
68 lines
2.4 KiB
C
68 lines
2.4 KiB
C
#ifndef DB_CLIENT_TABLE_H
|
|
#define DB_CLIENT_TABLE_H
|
|
|
|
#include "db.h"
|
|
#include "table.h"
|
|
|
|
typedef void (*db_client_table_done_callback)(DBClientID db_client_id,
|
|
void *user_context);
|
|
|
|
/**
|
|
* Remove a client from the db clients table.
|
|
*
|
|
* @param db_handle Database handle.
|
|
* @param db_client_id The database client ID to remove.
|
|
* @param retry Information about retrying the request to the database.
|
|
* @param done_callback Function to be called when database returns result.
|
|
* @param user_context Data that will be passed to done_callback and
|
|
* fail_callback.
|
|
* @return Void.
|
|
*
|
|
*/
|
|
void db_client_table_remove(DBHandle *db_handle,
|
|
DBClientID db_client_id,
|
|
RetryInfo *retry,
|
|
db_client_table_done_callback done_callback,
|
|
void *user_context);
|
|
|
|
/*
|
|
* ==== Subscribing to the db client table ====
|
|
*/
|
|
|
|
/* Callback for subscribing to the db client table. */
|
|
typedef void (*db_client_table_subscribe_callback)(DBClientID db_client_id,
|
|
const char *client_type,
|
|
const char *aux_address,
|
|
bool is_insertion,
|
|
void *user_context);
|
|
|
|
/**
|
|
* Register a callback for a db client table event.
|
|
*
|
|
* @param db_handle Database handle.
|
|
* @param subscribe_callback Callback that will be called when the db client
|
|
* table is updated.
|
|
* @param subscribe_context Context that will be passed into the
|
|
* subscribe_callback.
|
|
* @param retry Information about retrying the request to the database.
|
|
* @param done_callback Function to be called when database returns result.
|
|
* @param user_context Data that will be passed to done_callback and
|
|
* fail_callback.
|
|
* @return Void.
|
|
*/
|
|
void db_client_table_subscribe(
|
|
DBHandle *db_handle,
|
|
db_client_table_subscribe_callback subscribe_callback,
|
|
void *subscribe_context,
|
|
RetryInfo *retry,
|
|
db_client_table_done_callback done_callback,
|
|
void *user_context);
|
|
|
|
/* Data that is needed to register db client table subscribe callbacks with the
|
|
* state database. */
|
|
typedef struct {
|
|
db_client_table_subscribe_callback subscribe_callback;
|
|
void *subscribe_context;
|
|
} DBClientTableSubscribeData;
|
|
|
|
#endif /* DB_CLIENT_TABLE_H */
|