ib integrated into ctdb

tridge at samba.org tridge at samba.org
Fri Feb 16 03:49:05 GMT 2007


Peter,

 > I have the 1st working triable ib integrated ctdb on 
 > http://samba.org/~tridge/psomogyi/, please merge it.

excellent, thanks! I've merged it.

 > ctdb_bench doesn't work, one issue I've detected in your code and not going to 
 > workaround on ib side:
 > 
 > ctdb_bench.c: function bench_ring, int dest:
 > 
 > ...
 > 		int dest = (ctdb_get_vnn(ctdb) + incr) % ctdb_get_num_nodes(ctdb);
 > 		incr = 1;
 > 		ctdb_send_message(ctdb, dest, 0, data);
 > 		incr = -1;
 > 		ctdb_send_message(ctdb, dest, 0, data);
 > ...
 > 
 > Unfortunately, dest can be 0 (most times on my system) which causes ib to 
 > return with an error on ctdb_send_message (because self node connection 
 > hasn't been initialised yet). Probably your tcp module doesn't report this as 
 > an error.

in the tcp backend, zero if a perfectly valid vnn. The vnn's range
from 0 to N-1.

Maybe they start at 1 in the ib backend? If so, then I guess we need a 
ctdb_get_vnn_list() call or similar and change test code to use that.

 > (Another - probably less important - issue is that 'incr' is uninitialized so 
 > that 'dest' can be a different value in my test system.)

ahh, sorry. Fixed that now.

 > +1 warning: I noticed in recv_pkt you expect a talloc-ed buf which I mustn't 
 > free (because you're talloc_steal'ing it, see ctdb_reply_call). I'm not sure 
 > you're freeing incoming buffers, plz verify my suspicion.

ok, I'll take a look. Thanks!

Cheers, Tridge


More information about the samba-technical mailing list