Author: tridge Date: 2007-08-24 02:38:09 +0000 (Fri, 24 Aug 2007) New Revision: 24643
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=24643 Log: add a ctdb_fetch() function to the ctdb client code Modified: branches/SAMBA_4_0/source/cluster/ctdb/client/ctdb_client.c Changeset: Modified: branches/SAMBA_4_0/source/cluster/ctdb/client/ctdb_client.c =================================================================== --- branches/SAMBA_4_0/source/cluster/ctdb/client/ctdb_client.c 2007-08-24 02:37:38 UTC (rev 24642) +++ branches/SAMBA_4_0/source/cluster/ctdb/client/ctdb_client.c 2007-08-24 02:38:09 UTC (rev 24643) @@ -637,6 +637,30 @@ return ctdb_ltdb_store(h->ctdb_db, h->key, &h->header, data); } +/* + non-locking fetch of a record + */ +int ctdb_fetch(struct ctdb_db_context *ctdb_db, TALLOC_CTX *mem_ctx, + TDB_DATA key, TDB_DATA *data) +{ + struct ctdb_call call; + int ret; + + call.call_id = CTDB_FETCH_FUNC; + call.call_data.dptr = NULL; + call.call_data.dsize = 0; + + ret = ctdb_call(ctdb_db, &call); + + if (ret == 0) { + *data = call.reply_data; + talloc_steal(mem_ctx, data->dptr); + } + + return ret; +} + + struct ctdb_client_control_state { struct ctdb_context *ctdb; uint32_t reqid;
