etcd-io / zetcd

Serve the Apache Zookeeper API but back it with an etcd cluster
Apache License 2.0
1.09k stars 94 forks source link

Issue98fix #102

Open hokie228 opened 5 years ago

hokie228 commented 5 years ago

This fixes the encoding of a partial response to a multi-op request where one succeeds but another fails. The current implementation returns an error with no response, but Kafka expects Zookeeper to still respond with two results, one with a type of opCheck and another with type opError.

This patch allows it to response to each part of a multi-op request individually, using the first error in the list as the overall result. This fixes the NPE in Kafka described in Issue #98

heyitsanthony commented 5 years ago

Changes look OK; have you tried the cross-checked integration tests with go test -tags xchk,docker?

hokie228 commented 5 years ago

I have also fixed the integration cross-check tests and implemented the Multi-op test. There are still some failures in the integration tests unrelated to the Multi-op changes than I will try to address later, but all the unit and integration tests pass now. I think everything is ready to go.

F21 commented 5 years ago

Any chance this can be merged soon?

mickymiek commented 5 years ago

@heyitsanthony ?

arizvisa commented 4 years ago

@xiang90, can you look at merging this? It seems to have been silently dropped by the original maintainer...