[ https://issues.apache.org/jira/browse/ZOOKEEPER-1485?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15308054#comment-15308054 ]
Flavio Junqueira commented on ZOOKEEPER-1485: --------------------------------------------- We can fix this issue first, but I'd like us to keep ZOOKEEPER-22 in mind when fix this here. > client xid overflow is not handled > ---------------------------------- > > Key: ZOOKEEPER-1485 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-1485 > Project: ZooKeeper > Issue Type: Bug > Components: c client, java client > Affects Versions: 3.4.3, 3.3.5 > Reporter: Michi Mutsuzaki > Assignee: Bruce Gao > > Both Java and C clients use signed 32-bit int as XIDs. XIDs are assumed to be > non-negative, and zookeeper uses some negative values as special XIDs (e.g. > -2 for ping, -4 for auth). However, neither Java nor C client ensures the > XIDs it generates are non-negative, and the server doesn't reject negative > XIDs. > Pat had some suggestions on how to fix this: > - (bin-compat) Expire the session when the client sends a negative XID. > - (bin-incompat) In addition to expiring the session, use 64-bit int for XID > so that overflow will practically never happen. > --Michi -- This message was sent by Atlassian JIRA (v6.3.4#6332)