mirror of
https://github.com/samba-team/samba.git
synced 2025-07-16 20:59:12 +03:00
ctdb-daemon: Remove ctdb from traverse_callback
Signed-off-by: Amitay Isaacs <amitay@gmail.com> Reviewed-by: Martin Schwenke <martin@meltin.net>
This commit is contained in:
committed by
Amitay Isaacs
parent
3f287ec479
commit
ba56d852cb
@ -2213,7 +2213,7 @@ static void traverse_handler(struct ctdb_context *ctdb, uint64_t srvid, TDB_DATA
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (state->fn(ctdb, key, data, state->private_data) != 0) {
|
if (state->fn(key, data, state->private_data) != 0) {
|
||||||
state->done = true;
|
state->done = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2296,7 +2296,7 @@ int ctdb_traverse(struct ctdb_db_context *ctdb_db, ctdb_traverse_func fn, void *
|
|||||||
/*
|
/*
|
||||||
called on each key during a catdb
|
called on each key during a catdb
|
||||||
*/
|
*/
|
||||||
int ctdb_dumpdb_record(struct ctdb_context *ctdb, TDB_DATA key, TDB_DATA data, void *p)
|
int ctdb_dumpdb_record(TDB_DATA key, TDB_DATA data, void *p)
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
struct ctdb_dump_db_context *c = (struct ctdb_dump_db_context *)p;
|
struct ctdb_dump_db_context *c = (struct ctdb_dump_db_context *)p;
|
||||||
@ -2316,8 +2316,8 @@ int ctdb_dumpdb_record(struct ctdb_context *ctdb, TDB_DATA key, TDB_DATA data, v
|
|||||||
fprintf(f, "dmaster: %u\n", h->dmaster);
|
fprintf(f, "dmaster: %u\n", h->dmaster);
|
||||||
fprintf(f, "rsn: %llu\n", (unsigned long long)h->rsn);
|
fprintf(f, "rsn: %llu\n", (unsigned long long)h->rsn);
|
||||||
|
|
||||||
if (c->printlmaster && ctdb->vnn_map != NULL) {
|
if (c->printlmaster && c->ctdb->vnn_map != NULL) {
|
||||||
fprintf(f, "lmaster: %u\n", ctdb_lmaster(ctdb, &key));
|
fprintf(f, "lmaster: %u\n", ctdb_lmaster(c->ctdb, &key));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (c->printhash) {
|
if (c->printhash) {
|
||||||
|
@ -324,10 +324,11 @@ uint32_t *ctdb_get_connected_nodes(struct ctdb_context *ctdb,
|
|||||||
|
|
||||||
int ctdb_statistics_reset(struct ctdb_context *ctdb, uint32_t destnode);
|
int ctdb_statistics_reset(struct ctdb_context *ctdb, uint32_t destnode);
|
||||||
|
|
||||||
typedef int (*ctdb_traverse_func)(struct ctdb_context *, TDB_DATA, TDB_DATA, void *);
|
typedef int (*ctdb_traverse_func)(TDB_DATA, TDB_DATA, void *);
|
||||||
int ctdb_traverse(struct ctdb_db_context *ctdb_db, ctdb_traverse_func fn, void *private_data);
|
int ctdb_traverse(struct ctdb_db_context *ctdb_db, ctdb_traverse_func fn, void *private_data);
|
||||||
|
|
||||||
struct ctdb_dump_db_context {
|
struct ctdb_dump_db_context {
|
||||||
|
struct ctdb_context *ctdb;
|
||||||
FILE *f;
|
FILE *f;
|
||||||
bool printemptyrecords;
|
bool printemptyrecords;
|
||||||
bool printdatasize;
|
bool printdatasize;
|
||||||
@ -336,7 +337,7 @@ struct ctdb_dump_db_context {
|
|||||||
bool printrecordflags;
|
bool printrecordflags;
|
||||||
};
|
};
|
||||||
|
|
||||||
int ctdb_dumpdb_record(struct ctdb_context *ctdb, TDB_DATA key, TDB_DATA data, void *p);
|
int ctdb_dumpdb_record(TDB_DATA key, TDB_DATA data, void *p);
|
||||||
int ctdb_dump_db(struct ctdb_db_context *ctdb_db,
|
int ctdb_dump_db(struct ctdb_db_context *ctdb_db,
|
||||||
struct ctdb_dump_db_context *ctx);
|
struct ctdb_dump_db_context *ctx);
|
||||||
|
|
||||||
|
@ -28,7 +28,7 @@
|
|||||||
|
|
||||||
static const char *dbname = "test.tdb";
|
static const char *dbname = "test.tdb";
|
||||||
|
|
||||||
static int traverse_callback(struct ctdb_context *ctdb, TDB_DATA key, TDB_DATA data, void *private_data)
|
static int traverse_callback(TDB_DATA key, TDB_DATA data, void *private_data)
|
||||||
{
|
{
|
||||||
uint32_t *count = private_data;
|
uint32_t *count = private_data;
|
||||||
|
|
||||||
|
@ -3772,6 +3772,7 @@ static int control_catdb(struct ctdb_context *ctdb, int argc, const char **argv)
|
|||||||
}
|
}
|
||||||
|
|
||||||
ZERO_STRUCT(c);
|
ZERO_STRUCT(c);
|
||||||
|
c.ctdb = ctdb;
|
||||||
c.f = stdout;
|
c.f = stdout;
|
||||||
c.printemptyrecords = (bool)options.printemptyrecords;
|
c.printemptyrecords = (bool)options.printemptyrecords;
|
||||||
c.printdatasize = (bool)options.printdatasize;
|
c.printdatasize = (bool)options.printdatasize;
|
||||||
@ -3807,6 +3808,7 @@ static int cattdb_traverse(struct tdb_context *tdb, TDB_DATA key, TDB_DATA data,
|
|||||||
d->count++;
|
d->count++;
|
||||||
|
|
||||||
ZERO_STRUCT(c);
|
ZERO_STRUCT(c);
|
||||||
|
c.ctdb = d->ctdb;
|
||||||
c.f = stdout;
|
c.f = stdout;
|
||||||
c.printemptyrecords = (bool)options.printemptyrecords;
|
c.printemptyrecords = (bool)options.printemptyrecords;
|
||||||
c.printdatasize = (bool)options.printdatasize;
|
c.printdatasize = (bool)options.printdatasize;
|
||||||
@ -3814,7 +3816,7 @@ static int cattdb_traverse(struct tdb_context *tdb, TDB_DATA key, TDB_DATA data,
|
|||||||
c.printhash = (bool)options.printhash;
|
c.printhash = (bool)options.printhash;
|
||||||
c.printrecordflags = true;
|
c.printrecordflags = true;
|
||||||
|
|
||||||
return ctdb_dumpdb_record(d->ctdb, key, data, &c);
|
return ctdb_dumpdb_record(key, data, &c);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -5824,6 +5826,7 @@ static int control_dumpdbbackup(struct ctdb_context *ctdb, int argc, const char
|
|||||||
dbhdr.name, m->db_id, tbuf);
|
dbhdr.name, m->db_id, tbuf);
|
||||||
|
|
||||||
ZERO_STRUCT(c);
|
ZERO_STRUCT(c);
|
||||||
|
c.ctdb = ctdb;
|
||||||
c.f = stdout;
|
c.f = stdout;
|
||||||
c.printemptyrecords = (bool)options.printemptyrecords;
|
c.printemptyrecords = (bool)options.printemptyrecords;
|
||||||
c.printdatasize = (bool)options.printdatasize;
|
c.printdatasize = (bool)options.printdatasize;
|
||||||
@ -5839,7 +5842,7 @@ static int control_dumpdbbackup(struct ctdb_context *ctdb, int argc, const char
|
|||||||
rec = ctdb_marshall_loop_next(m, rec, &reqid,
|
rec = ctdb_marshall_loop_next(m, rec, &reqid,
|
||||||
NULL, &key, &data);
|
NULL, &key, &data);
|
||||||
|
|
||||||
ctdb_dumpdb_record(ctdb, key, data, &c);
|
ctdb_dumpdb_record(key, data, &c);
|
||||||
}
|
}
|
||||||
|
|
||||||
printf("Dumped %d records\n", i);
|
printf("Dumped %d records\n", i);
|
||||||
|
Reference in New Issue
Block a user