Utkarsh Srivastava updated ZOOKEEPER-504:

    Attachment: ZOOKEEPER-504.patch

There seem to be plenty of other problems with LedgerManagementProcessor. In 
this patch, I fix some of them just by visual inspection, and not by writing 
comprehensive test case. One pattern I saw was that after calling the callback 
for ops, there was no return statement, and the code would go on to do other 
things. I fixed all occurrences of those bugs.

But my create callback is still called multiple time (ZOOKEEPER-502), and I 
still cant open a ledger that was not properly closed.

> ClassCastException in LedgerManagementProcessor
> -----------------------------------------------
>                 Key: ZOOKEEPER-504
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-504
>             Project: Zookeeper
>          Issue Type: Bug
>          Components: contrib-bookkeeper
>    Affects Versions: 3.2.0
>            Reporter: Utkarsh Srivastava
>         Attachments: ZOOKEEPER-504.patch, ZOOKEEPER-504.patch
> java.lang.ClassCastException: 
> org.apache.bookkeeper.client.LedgerManagementProcessor$OpenLedgerOp cannot be 
> cast to org.apache.bookkeeper.client.LedgerManagementProcessor$CloseLedgerOp
>       at 
> org.apache.bookkeeper.client.LedgerManagementProcessor.processResult(LedgerManagementProcessor.java:1083)
> This seems to be happening because its a nested switch case statement. And 
> the OPEN: case, doesn't ever call a break. It only calls a break from the 
> inner switch-case and hence falls through into the CLOSE: case.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

Reply via email to