diff options
author | Amitay Isaacs <amitay@gmail.com> | 2013-06-06 16:12:07 +1000 |
---|---|---|
committer | Amitay Isaacs <amitay@gmail.com> | 2013-07-10 14:33:19 +1000 |
commit | 557b92fc88eedca5307523389d47f96c742f8d7c (patch) | |
tree | 820bcf2c6eecbeac735f0b35eb6e5d1c799a0755 /ctdb/server | |
parent | 3dcdd39801be3008adf15f36130773b5f342bee8 (diff) | |
download | samba-557b92fc88eedca5307523389d47f96c742f8d7c.tar.gz |
traverse: Pass reqid and srcnode information to local database traverse
So that traverse child process can directly send the TRAVERSE_DATA control to
the srcnode without first sending it to local node.
Signed-off-by: Amitay Isaacs <amitay@gmail.com>
(This used to be ctdb commit faabce1b99fb3de9ff03bf54d303e7656538fee3)
Diffstat (limited to 'ctdb/server')
-rw-r--r-- | ctdb/server/ctdb_traverse.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/ctdb/server/ctdb_traverse.c b/ctdb/server/ctdb_traverse.c index 8d8a51776a1..b5dd82227a9 100644 --- a/ctdb/server/ctdb_traverse.c +++ b/ctdb/server/ctdb_traverse.c @@ -38,6 +38,8 @@ struct ctdb_traverse_local_handle { pid_t child; uint64_t srvid; uint32_t client_reqid; + uint32_t reqid; + int srcnode; void *private_data; ctdb_traverse_fn_t callback; struct timeval start_time; @@ -169,7 +171,9 @@ static struct ctdb_traverse_local_handle *ctdb_traverse_local(struct ctdb_db_con h->private_data = all_state; h->ctdb_db = ctdb_db; h->client_reqid = all_state->client_reqid; + h->reqid = all_state->reqid; h->srvid = all_state->srvid; + h->srcnode = all_state->srcnode; h->withemptyrecords = all_state->withemptyrecords; if (h->child == 0) { |