[ https://issues.apache.org/jira/browse/BOOKKEEPER-513?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ivan Kelly updated BOOKKEEPER-513: ---------------------------------- Attachment: 0001-BOOKKEEPER-513-TestMessageFilter-fails-periodically.patch I'm attaching a preliminary patch, but I think we'll need to go with another approach. There's a couple of problems with it. Firstly, it'll break when closing a subscription on a 4.1 server, as OperationType is an enum, and a 4.1 will only recognise the values it had in the OperationType enum, so no CLOSESUBSCRIPTION. A way to resolve this would be to detect the server protocol version, and only send close if it's greater than what we have in 4.2. However, this doesn't work either. ProtocolVersion is also an enum, so adding another value there will break protobuf compatibility with 4.1. The attached patch fails TestBackwardCompat (as 2 others also, but BackwardCompat is the most serious). > TestMessageFilter fails periodically > ------------------------------------ > > Key: BOOKKEEPER-513 > URL: https://issues.apache.org/jira/browse/BOOKKEEPER-513 > Project: Bookkeeper > Issue Type: Bug > Reporter: Ivan Kelly > Fix For: 4.2.0 > > Attachments: > 0001-BOOKKEEPER-513-TestMessageFilter-fails-periodically.patch, > TEST-org.apache.hedwig.server.filter.TestMessageFilter.xml, > TEST-org.apache.hedwig.server.persistence.MessageBoundedPersistenceTest.xml > > > Running org.apache.hedwig.server.filter.TestMessageFilter > Tests run: 9, Failures: 0, Errors: 2, Skipped: 0, Time elapsed: 6.779 sec <<< > FAILURE! > Results : > Tests in error: > > testChangeSubscriptionPreferences(org.apache.hedwig.server.filter.TestMessageFilter): > Server responded with a status code of: TOPIC_BUSY > > testChangeSubscriptionPreferencesForClientFilter(org.apache.hedwig.server.filter.TestMessageFilter): > Server responded with a status code of: TOPIC_BUSY -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira