On Tue, Jun 12, 2012 at 12:51 AM, Michi Mutsuzaki <[EMAIL PROTECTED]> wrote:
> Hi Pat,
> How does the C client ensure that the regular xids are non-negative?
> The get_xid() function in st_adaptor.c doesn't seem to handle
> overflow. I guess I'm missing something obvious...
Sorry, you're right! If a session (I checked, the problem exists in
both the c and java clients) sends more then 2 billion operations the
xid will rollover. Correct. Please enter a jira for that, we should
expire the session when that happens (really in 4.0 we should change
to a long rather than an int for many of these "counters", e.g.
> On Mon, Jun 11, 2012 at 11:01 PM, Patrick Hunt <[EMAIL PROTECTED]> wrote:
>> Regular xids are always non-negative.
>> On Sun, Jun 10, 2012 at 12:15 AM, Michi Mutsuzaki <[EMAIL PROTECTED]> wrote:
>>> There are some predefined XIDs (like #define PING_XID -2) in
>>> zk_adaptor.h. Why do we need them? How do they avoid colliding with
>>> regular XIDs?