nkeywal created ZOOKEEPER-1495:
----------------------------------

             Summary: ZK clieent hangs when using a function not available on 
the server.
                 Key: ZOOKEEPER-1495
                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-1495
             Project: ZooKeeper
          Issue Type: Bug
          Components: server
    Affects Versions: 3.3.5, 3.4.2
         Environment: all
            Reporter: nkeywal
            Priority: Minor


This happens for example when using zk#multi with a 3.4 client but a 3.3 server.

The issue seems to be on the server side: the servers drops the packets with an 
unknown OpCode in ZooKeeperServer#submitRequest
{noformat}
public void submitRequest(Request si) {
    // snip
    try {
        touch(si.cnxn);
        boolean validpacket = Request.isValid(si.type); // ===> Check on case 
OpCode.*
        if (validpacket) {
            // snip
        } else {
            LOG.warn("Dropping packet at server of type " + si.type);
            // if invalid packet drop the packet.
        }
    } catch (MissingSessionException e) {
        if (LOG.isDebugEnabled()) {
            LOG.debug("Dropping request: " + e.getMessage());
        }
    }
}
{noformat}

The solution discussed in ZOOKEEPER-1381 would be to get an exception on the 
client side then & close the session.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to