On Thu, Jun 01, 2006 at 01:53:17PM +0400, Alexandre Snarskii wrote:
PS: another problem may arise with maximal number of branches.
With default configuration of ser (config.h, #define MAX_BRANCHES 12)
maximum number of hunts is limited to 11. If you need more hunts than
this - you need to recompile ser.
PPS: just tried this advice by myself. Ser recomplies ok (with
#define MAX_BRANCHES 128), but unable to start with next message:
Jun 1 19:16:26 <.> /usr/local/sbin/ser[68250]: Too many max UACs for UAC branch
_bm_t bitmap: 128
Jun 1 19:16:26 <.> /usr/local/sbin/ser[68250]: init_mod(): Error while initiali
zing module tm
I assume that this behavior is just a sanity check, because branches
will be stored in 32-bit bitmap (from modules/tm/t_reply.h:
/* branch bitmap type */
typedef unsigned int branch_bm_t;
)
so, the maximum value you can safely redefine MAX_BRANCHES to is 30.
Question: is it safe enough to redefine branch_bm_t as "unsigned long long
int" and rewrite check code with use sizeof(branch_tm_t) instead of constant 31
(with objective to get 62 branches per transaction, or maximum hunt-group
of 62) or there are hidden troubles ?