-
Notifications
You must be signed in to change notification settings - Fork 734
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update tests to act as long-running consumers #79
Conversation
I don't get entirely positive results. If I kill kafka-0 and kafka-1 the testcase sees old messages for 30-40 seconds. It then recovers, and I fail to get predictable timeouts from the Update: I get better results, of course, with d522a89 but some
I think I should convert the java client based test also to this online style. Update 2: I quite sure the errors above are from https://github.com/Yolean/kubernetes-kafka/pull/79/files#diff-54bc09f6375afd6bd0397dd27a9748e0R48, not from the producer or consumer.
|
4e3efed
to
9db60f0
Compare
for every readiness run, so it's a good test case for the bootstrap service (#79)
Pushing my test nodes to the limit now by filling up memory, and as one node crashed both the kafkacat and the console producer+consumer based test indicate that one message couldn't be read back in a timely manner:
Were they at all produced?
|
but only if producers and consumers (which must maintain a broker list) fail
if you haven't created it, you probably don't want the tests.
d522a89
to
dbf7789
Compare
style like kafkacat, but without the timestamp diff feature because I couldn't get message timestamp out of the console consumer. Also I had to increase PC_WAIT.
resources as scripts void the Deployment behavior anyway. And besides, there's no need to manage these tests like production resources.
The test should still pass if any single broker is down.
Would be interesting to have configurable acks behavior, but let's merge this now. |
Prior to this the test would bootstrap at every run, and thus fail whenever broker 0 was down. Instead of adding more bootstrap addresses, I wanted to test that bootstrap actually works, i.e. the client gets other brokers that it can connect to.
With #78 we might break such a thing, if for example clients get external addresses at bootstrap.