Commit Graph

383 Commits

Author SHA1 Message Date
Bill Bejeck 9204197abf MINOR: Fix broker compatibility tests
Updated the System test `stream_broker_compatibility_test.py` to address system test failures as we have removed explicit broker version checking

- Ignore the `0.8.2.2` and `0.9.0.0` tests because the `NetworkClient` only logs `UnsupportedVersionException`s that occur and will continue to retry connecting.  Once issue https://issues.apache.org/jira/browse/KAFKA-6297 is addressed, we may re-enable these tests.
- Updated existing tests expected error messages
- Updated Streams code in test for to make sure we fail fast for incompatible brokers

Author: Bill Bejeck <bill@confluent.io>

Reviewers: Matthias J. Sax <matthias@confluent.io>, Guozhang Wang <wangguoz@gmail.com>

Closes #4286 from bbejeck/MINOR_fix_broker_compatibility_tests
2017-12-03 09:05:18 -08:00
Mikkin 18e34482e6 KAFKA-6284: Fixed system test for Connect REST API
`topics.regex` was added in KAFKA-3073. This change fixes the test that invokes `/validate` to ensure that all the configdefs are returned as expected.

Author: Mikkin <mikkin@confluent.io>

Reviewers: Randall Hauch <rhauch@gmail.com>, Jason Gustafson <jason@confluent.io>, Ewen Cheslack-Postava <ewen@confluent.io>

Closes #4279 from mikkin/KAFKA-6284
2017-11-30 13:51:19 -08:00
Colin P. Mccabe 58877a0dea KAFKA-6255; Add ProduceBench to Trogdor
Author: Colin P. Mccabe <cmccabe@confluent.io>

Reviewers: Rajini Sivaram <rajinisivaram@googlemail.com>

Closes #4245 from cmccabe/KAFKA-6255
2017-11-28 22:09:55 +00:00
Colin P. Mccabe a133e69b45 KAFKA-6247; Install Kibosh on Vagrant and fix release downloads in Docker
Fix an omission where Kibosh was not getting installed on Vagrant
instances running in AWS.

Fix an issue where the Dockerfile was unable to download old Apache
Kafka releases.  See the discussion on KAFKA-6233.

Author: Colin P. Mccabe <cmccabe@confluent.io>

Reviewers: Ismael Juma <ismael@juma.me.uk>

Closes #4240 from cmccabe/KAFKA-6247
2017-11-21 14:39:14 +00:00
Colin P. Mccabe d9cbc6b1a2 KAFKA-5811; Add Kibosh integration for Trogdor and Ducktape
For ducktape: add Kibosh to the testing Dockerfile.
Create files_unreadable_fault_spec.py.

For trogdor: create FilesUnreadableFaultSpec.java.
Add a unit test of using the Kibosh service.

Author: Colin P. Mccabe <cmccabe@confluent.io>

Reviewers: Rajini Sivaram <rajinisivaram@googlemail.com>

Closes #4195 from cmccabe/KAFKA-5811
2017-11-16 17:59:24 +00:00
Ewen Cheslack-Postava 718dda1144 MINOR: Add HttpMetricsReporter for system tests
Author: Ewen Cheslack-Postava <me@ewencp.org>

Reviewers: Apurva Mehta <apurva@confluent.io>, Ismael Juma <ismael@juma.me.uk>

Closes #4072 from ewencp/http-metrics
2017-11-09 09:42:46 -08:00
Adem Efe Gencer 86062e9a78 KAFKA-6157; Fix repeated words words in JavaDoc and comments.
Author: Adem Efe Gencer <agencer@linkedin.com>

Reviewers: Jiangjie Qin <becket.qin@gmail.com>

Closes #4170 from efeg/bug/typoFix
2017-11-05 18:00:43 -08:00
Colin P. Mccabe 4fac83ba1f KAFKA-6060; Add workload generation capabilities to Trogdor
Previously, Trogdor only handled "Faults."  Now, Trogdor can handle
"Tasks" which may be either faults, or workloads to execute in the
background.

The Agent and Coordinator have been refactored from a
mutexes-and-condition-variables paradigm into a message passing
paradigm.  No locks are necessary, because only one thread can access
the task state or worker state.  This makes them a lot easier to reason
about.

The MockTime class can now handle mocking deferred message passing
(adding a message to an ExecutorService with a delay).  I added a
MockTimeTest.

MiniTrogdorCluster now starts up Agent and Coordinator classes in
paralle in order to minimize junit test time.

RPC messages now inherit from a common Message.java class.  This class
handles implementing serialization, equals, hashCode, etc.

Remove FaultSet, since it is no longer necessary.

Previously, if CoordinatorClient or AgentClient hit a networking
problem, they would throw an exception.  They now retry several times
before giving up.  Additionally, the REST RPCs to the Coordinator and
Agent have been changed to be idempotent.  If a response is lost, and
the request is resent, no harm will be done.

Author: Colin P. Mccabe <cmccabe@confluent.io>

Reviewers: Rajini Sivaram <rajinisivaram@googlemail.com>, Ismael Juma <ismael@juma.me.uk>

Closes #4073 from cmccabe/KAFKA-6060
2017-11-03 09:37:29 +00:00
Matthias J. Sax c7ab3efcbe MINOR: Code cleanup and JavaDoc improvements for clients and Streams
Author: Matthias J. Sax <matthias@confluent.io>

Reviewers: Bill Bejeck <bill@confluent.io>, Jason Gustafson <jason@confluent.io>, Guozhang Wang <wangguoz@gmail.com>

Closes #4128 from mjsax/minor-cleanup

minor fix
2017-10-30 13:13:19 -07:00
Xavier Léauté f7f8e11213 MINOR: reset state in cleanup, fixes jmx mixin flakiness
ewencp ijuma

Author: Xavier Léauté <xl+github@xvrl.net>
Author: Ewen Cheslack-Postava <me@ewencp.org>

Reviewers: Ewen Cheslack-Postava <ewen@confluent.io>

Closes #4123 from xvrl/fix-jmx-flakiness

(cherry picked from commit 91eb178e95)
Signed-off-by: Ewen Cheslack-Postava <me@ewencp.org>
2017-10-25 13:34:36 -07:00
Colin P. Mccabe a3c4ab2427 KAFKA-6070; add ipaddress and enum34 dependencies to docker image
Author: Colin P. Mccabe <cmccabe@confluent.io>

Reviewers: Ewen Cheslack-Postava <ewen@confluent.io>, Alex Ayars <alex.ayars@confluent.io>

Closes #4084 from cmccabe/KAFKA-6070
2017-10-23 16:38:39 +01:00
Magnus Edenhill 60c36b0984 MINOR: Fix var typo in verifiable_consumer assertion
Author: Magnus Edenhill <magnus@edenhill.se>

Reviewers: Jason Gustafson <jason@confluent.io>

Closes #4098 from edenhill/verfcons_var_fix
2017-10-19 08:42:12 -07:00
Apurva Mehta 90b5ce3f04 KAFKA-6016; Make the reassign partitions system test use the idempotent producer
With these changes, we are ensuring that the partitions being reassigned are from non-zero offsets. We also ensure that every message in the log has producerId and sequence number.

This means that it successfully reproduces https://issues.apache.org/jira/browse/KAFKA-6003.

Author: Apurva Mehta <apurva@confluent.io>

Reviewers: Jason Gustafson <jason@confluent.io>

Closes #4029 from apurvam/KAFKA-6016-add-idempotent-producer-to-reassign-partitions
2017-10-10 10:32:17 -07:00
Matthias J. Sax 51063441d3 KAFKA-5362; Follow up to Streams EOS system test
- improve tests to get rid of calls to `sleep` in Python
 - fixed some flaky test conditions
 - improve debugging

Author: Matthias J. Sax <matthias@confluent.io>

Reviewers: Damian Guy <damian.guy@gmail.com>, Bill Bejeck <bill@confluent.io>, Guozhang Wang <wangguoz@gmail.com>

Closes #3542 from mjsax/failing-eos-system-tests
2017-10-06 17:48:34 -07:00
Guozhang Wang 6bcbd17d34 Bump up version to 1.1.0-SNAPSHOT 2017-10-04 15:36:19 -07:00
Apurva Mehta dd6347a5df KAFKA-5888; System test to check ordering of messages with transactions and max.in.flight > 1
To check ordering, we augment the existing transactions test to read and write from topics with one partition. Since we are writing monotonically increasing numbers, the topics should always be sorted, making it very easy to check for out of order messages.

Author: Apurva Mehta <apurva@confluent.io>

Reviewers: Jason Gustafson <jason@confluent.io>

Closes #3969 from apurvam/KAFKA-5888-system-test-which-check-ordering
2017-09-28 13:03:07 -07:00
Randall Hauch afaaea8093 KAFKA-5954; Correct Connect REST API system test
Author: Randall Hauch <rhauch@gmail.com>

Reviewers: tedyu <yuzhihong@gmail.com>, Ismael Juma <ismael@juma.me.uk>

Closes #3934 from rhauch/kafka-5954
2017-09-21 16:46:10 +01:00
Ismael Juma 52d7b6763b MINOR: Fix replica_verification_tool.py to handle slight change in output format
The string representation of TopicPartition was changed to be
{topic}-{partitition} consistently in the following commit:

f6f56a645b

Author: Ismael Juma <ismael@juma.me.uk>

Reviewers: Damian Guy <damian.guy@gmail.com>

Closes #3890 from ijuma/fix-replica-verification-test
2017-09-18 15:49:44 +01:00
Ismael Juma 439050816b MINOR: Tweak detection of kafka server start-up in system tests
Author: Ismael Juma <ismael@juma.me.uk>

Reviewers: Ewen Cheslack-Postava <ewen@confluent.io>

Closes #3834 from ijuma/tweak-system-test-regex-for-detecting-server-start-up
2017-09-12 05:41:46 +01:00
Xavier Léauté 6e40455862 KAFKA-5742; Fix incorrect method name follow-up
Author: Xavier Léauté <xl+github@xvrl.net>

Reviewers: Ismael Juma <ismael@juma.me.uk>

Closes #3818 from xvrl/fix-startswith
2017-09-08 19:05:01 +01:00
Paolo Patierno 6546f9af6d MINOR: Improve documentation for running docker system tests
Added some tips for running a single test file, test class and/or test method on the documentation landing page about tests

Author: Paolo Patierno <ppatierno@live.com>

Reviewers: Ismael Juma <ismael@juma.me.uk>

Closes #3577 from ppatierno/minor-tests-doc
2017-09-08 11:21:28 +01:00
Ismael Juma 07a428e0c8 MINOR: Always specify the keystore type in system tests
Also throw an exception if a null keystore type is seen
in `SecurityStore`. This should never happen.

The default keystore type has changed in Java 9 (
http://openjdk.java.net/jeps/229), so we need to
be explicit to have consistent behaviour across
Java versions.

Author: Ismael Juma <ismael@juma.me.uk>

Reviewers: Rajini Sivaram <rajinisivaram@googlemail.com>

Closes #3808 from ijuma/set-jks-explicitly-in-system-tests
2017-09-08 02:29:03 +01:00
Colin P. Mccabe 4065ffb3e1 KAFKA-5777; Add ducktape integration for Trogdor
Author: Colin P. Mccabe <cmccabe@confluent.io>

Reviewers: Rajini Sivaram <rajinisivaram@googlemail.com>

Closes #3726 from cmccabe/KAFKA-5777
2017-09-07 13:23:03 +01:00
Randall Hauch 75070bdb5d MINOR: Increase timeout of Zookeeper service in system tests
The previous timeout was 10 seconds, but system test failures have occurred when Zookeeper has started after about 11 seconds. Increasing the timeout to 30 seconds, since most of the time this extra time will not be required, and when it is it will prevent a failed system test.

In addition to merging to `trunk`, please backport to the `0.11.x` and `0.10.2.x` branches.

Author: Randall Hauch <rhauch@gmail.com>

Reviewers: Ewen Cheslack-Postava <ewen@confluent.io>

Closes #3774 from rhauch/MINOR-Increase-timeout-of-zookeeper-service-in-system-tests
2017-08-31 14:53:44 -07:00
Colin P. Mccabe 949577ca77 KAFKA-5768; Upgrade to ducktape 0.7.1
Author: Colin P. Mccabe <cmccabe@confluent.io>

Reviewers: Jason Gustafson <jason@confluent.io>

Closes #3721 from cmccabe/KAFKA-5768
2017-08-29 16:41:19 -07:00
Colin P. Mccabe 14f6ecd915 MINOR: KafkaService should print node hostname on failure
Author: Colin P. Mccabe <cmccabe@confluent.io>

Reviewers: Apurva Mehta <apurva@confluent.io>, Ismael Juma <ismael@juma.me.uk>

Closes #3715 from cmccabe/kafka_service_print_node_hostname_on_failure
2017-08-25 07:44:42 +01:00
Damian Guy 99eebc8404 HOTFIX: reduce streams benchmark input records to 10 million
We are occasionally hitting some timeouts due to processing not finishing. So rather than failing the build for these reasons it would be better to reduce the runtime.

Author: Damian Guy <damian.guy@gmail.com>

Reviewers: Guozhang Wang <wangguoz@gmail.com>

Closes #3725 from dguy/fix-system-test
2017-08-23 20:53:00 +01:00
Konstantine Karantasis 3b7e104559 MINOR: Verify startup of zookeeper service in system tests
Author: Konstantine Karantasis <konstantine@confluent.io>

Reviewers: Ewen Cheslack-Postava <ewen@confluent.io>

Closes #3707 from kkonstantine/MINOR-Verify-startup-of-zookeeper-service-in-system-tests-by-connecting-to-port
2017-08-23 09:52:21 -07:00
Colin P. Mccabe 57dbe39ae1 KAFKA-5743; Ducktape services should use subdirs of /mnt
Author: Colin P. Mccabe <cmccabe@confluent.io>

Reviewers: Ismael Juma <ismael@juma.me.uk>

Closes #3680 from cmccabe/KAFKA-5743
2017-08-21 18:36:45 +01:00
Eno Thereska 3e22c1c04a KAFKA-5725; More failure testing
Author: Eno Thereska <eno.thereska@gmail.com>

Reviewers: Damian Guy <damian.guy@gmail.com>

Closes #3656 from enothereska/minor-add-more-tests
2017-08-18 18:13:02 +01:00
Xavier Léauté 520e651d53 KAFKA-5742: support ZK chroot in system tests
Author: Xavier Léauté <xavier@confluent.io>

Reviewers: Ewen Cheslack-Postava <ewen@confluent.io>

Closes #3677 from xvrl/support-zk-chroot-in-tests
2017-08-17 15:14:32 -07:00
Eno Thereska 889da45dd0 MINOR: Improve instructions for running system tests with docker
Author: Eno Thereska <eno.thereska@gmail.com>

Reviewers: Ismael Juma <ismael@juma.me.uk>

Closes #3649 from enothereska/minor-docker-docs
2017-08-09 23:35:13 +01:00
Randall Hauch 1a653c813c KAFKA-5704: Corrected Connect distributed startup behavior to allow older brokers to auto-create topics
When a Connect distributed worker starts up talking with broker versions 0.10.1.0 and later, it will use the AdminClient to look for the internal topics and attempt to create them if they are missing. Although the AdminClient was added in 0.11.0.0, the AdminClient uses APIs to create topics that existed in 0.10.1.0 and later. This feature works as expected when Connect uses a broker version 0.10.1.0 or later.

However, when a Connect distributed worker starts up using a broker older than 0.10.1.0, the AdminClient is not able to find the required APIs and thus will throw an UnsupportedVersionException. Unfortunately, this exception is not caught and instead causes the Connect worker to fail even when the topics already exist.

This change handles the UnsupportedVersionException by logging a debug message and doing nothing. The existing producer logic will get information about the topics, which will cause the broker to create them if they don’t exist and broker auto-creation of topics is enabled. This is the same behavior that existed prior to 0.11.0.0, and so this change restores that behavior for brokers older than 0.10.1.0.

This change also adds a system test that verifies Connect works with a variety of brokers and is able to run source and sink connectors. The test verifies that Connect can read from the internal topics when the connectors are restarted.

Author: Randall Hauch <rhauch@gmail.com>

Reviewers: Ewen Cheslack-Postava <ewen@confluent.io>

Closes #3641 from rhauch/kafka-5704
2017-08-08 20:20:41 -07:00
Xavier Léauté b8cf976865 MINOR: support retrieving cluster_id in system tests
ewencp would be great to cherry-pick this back into 0.11.x if possible

Author: Xavier Léauté <xavier@confluent.io>

Reviewers: Ewen Cheslack-Postava <ewen@confluent.io>

Closes #3645 from xvrl/system-test-cluster-id
2017-08-08 19:58:47 -07:00
Paolo Patierno 1d291a4219 KAFKA-5643: Using _DUCKTAPE_OPTIONS has no effect on executing tests
Added handling of _DUCKTAPE_OPTIONS (mainly for enabling debugging)

Author: Paolo Patierno <ppatierno@live.com>

Reviewers: Ewen Cheslack-Postava <ewen@confluent.io>

Closes #3578 from ppatierno/kafka-5643
2017-08-06 21:50:43 -07:00
Colin P. Mccabe d637c134c8 KAFKA-5602; ducker-ak: support --custom-ducktape
Support a --custom-ducktape flag which allows developers to install
their own versions of ducktape into Docker images.  This is helpful for
ducktape development.

Author: Colin P. Mccabe <cmccabe@confluent.io>

Reviewers: Ewen Cheslack-Postava <me@ewencp.org>, Ismael Juma <ismael@juma.me.uk>

Closes #3539 from cmccabe/KAFKA-5602
2017-08-05 09:04:05 +01:00
Ismael Juma db306ec362 MINOR: Support versions with 3 segments in _kafka_jar_versions
The bump from 0.11.1.0-SNAPSHOT to 1.0.0-SNAPSHOT broke a couple
of system tests:

* TestVerifiableProducer.test_simple_run
* KafkaVersionTest.test_multi_version

Author: Ismael Juma <ismael@juma.me.uk>

Reviewers: Damian Guy <damian.guy@gmail.com>

Closes #3587 from ijuma/fix-_kafka_jar_versions
2017-08-02 15:50:40 +01:00
Ismael Juma 5effe72390 MINOR: Next release will be 1.0.0
Author: Ismael Juma <ismael@juma.me.uk>

Reviewers: Guozhang Wang <wangguoz@gmail.com>

Closes #3580 from ijuma/bump-to-1.0.0-SNAPSHOT
2017-07-26 13:01:41 -07:00
Dong Lin fc93fb4b61 KAFKA-4763; Handle disk failure for JBOD (KIP-112)
Author: Dong Lin <lindong28@gmail.com>

Reviewers: Jiangjie Qin <becket.qin@gmail.com>, Jun Rao <junrao@gmail.com>, Ismael Juma <ismael@juma.me.uk>, Onur Karaman <okaraman@linkedin.com>

Closes #2929 from lindong28/KAFKA-4763
2017-07-22 12:35:32 -07:00
Colin P. Mccabe 9ae09e8059 KAFKA-5623: ducktape kafka service: do not assume Service contains num_nodes
…m_nodes

Author: Colin P. Mccabe <cmccabe@confluent.io>

Reviewers: Ewen Cheslack-Postava <ewen@confluent.io>

Closes #3557 from cmccabe/KAFKA-5623
2017-07-20 19:34:16 -07:00
Ewen Cheslack-Postava f50af9c31d KAFKA-5608: Add --wait option for JmxTool and use in system tests to avoid race between JmxTool and monitored services
Author: Ewen Cheslack-Postava <me@ewencp.org>
Author: Ewen Cheslack-Postava <ewen@confluent.io>

Reviewers: Ismael Juma <ismael@juma.me.uk>, Jason Gustafson <jason@confluent.io>

Closes #3547 from ewencp/wait-jmx-metrics
2017-07-19 21:39:51 -07:00
Ewen Cheslack-Postava d663005fdd MINOR: Do not wait for first line of console consumer output since we now have a more reliable test using JMX
Waiting for the first line of output was added in KAFKA-2527 when JmxMixin was originally added as a heuristic to
determine when the process was ready. We've since determined this is not good enough given JmxTool's limitations
and now include a separate, more reliable check before starting JmxTool. This check is also dangerous since a
consumer that is started before data is available in the topic, it won't output anything to stdout and only logs
errors to a separate log file. This means we may have a long delay between starting the process and starting JMX
monitoring.

Since we have a more reliable check for liveness via JMX now (and in cases that need it, partition assignment
metrics via JMX), we should no longer need to wait for the first line of output.

Author: Ewen Cheslack-Postava <me@ewencp.org>

Reviewers: Ismael Juma <ismael@juma.me.uk>, Apurva Mehta <apurva@confluent.io>

Closes #3447 from ewencp/dont-wait-first-line-console-consumer
2017-07-17 21:24:45 -07:00
Matthias J. Sax 6ea36bc6fb HOTFIX: disable flaky system tests
Author: Matthias J. Sax <matthias@confluent.io>

Reviewers: Eno Thereska <eno.thereska@gmail.com>, Damian Guy <damian.guy@gmail.com>

Closes #3497 from mjsax/disable-flaky-system-tests
2017-07-07 09:45:37 +01:00
Eno Thereska cbafc08a5f MINOR: compatibility tests for streams
Update system tests to make use of the newly released 0.11 version.

Add on to https://github.com/apache/kafka/pull/3454

Author: Eno Thereska <eno.thereska@gmail.com>

Reviewers: Damian Guy <damian.guy@gmail.com>

Closes #3479 from enothereska/minor-compatibility-tests
2017-07-03 16:04:41 +01:00
Ismael Juma 49ed16daf4 MINOR: Compatibility and upgrade tests for 0.11.0.x
Author: Ismael Juma <ismael@juma.me.uk>

Reviewers: Eno Thereska <eno.thereska@gmail.com>, Ewen Cheslack-Postava <me@ewencp.org>

Closes #3454 from ijuma/test-upgrades-from-0.11.0.x
2017-06-30 23:36:21 +02:00
Colin P. Mccabe 5536b1237f KAFKA-5484: Refactor kafkatest docker support
Author: Colin P. Mccabe <cmccabe@confluent.io>

Reviewers: Ewen Cheslack-Postava <ewen@confluent.io>

Closes #3389 from cmccabe/KAFKA-5484
2017-06-29 13:28:35 -07:00
Ewen Cheslack-Postava e45c767d53 MINOR: Make JmxMixin wait for the monitored process to be listening on the JMX port before launching JmxTool
Author: Ewen Cheslack-Postava <me@ewencp.org>

Reviewers: Apurva Mehta <apurva@confluent.io>, Ismael Juma <ismael@juma.me.uk>

Closes #3437 from ewencp/wait-jmx-listening
2017-06-26 17:06:38 -07:00
Matthias J. Sax 2265834803 KAFKA-5362: Add Streams EOS system test with repartitioning topic
Author: Matthias J. Sax <matthias@confluent.io>

Reviewers: Guozhang Wang <wangguoz@gmail.com>

Closes #3310 from mjsax/kafka-5362-add-eos-system-tests-for-streams-api
2017-06-25 09:34:27 -07:00
Eno Thereska ee5eac715d KAFKA-5487; upgrade and downgrade streams app system test
-Tests for rolling upgrades for a streams app (keeping broker config fixed)
-Tests for rolling upgrades of brokers (keeping streams app config fixed)

Author: Eno Thereska <eno.thereska@gmail.com>

Reviewers: Matthias J. Sax <matthias@confluent.io>, Damian Guy <damian.guy@gmail.com>

Closes #3411 from enothereska/KAFKA-5487-upgrade-test-streams
2017-06-24 07:48:10 +01:00
Matthias J. Sax ac53979647 MINOR: update AWS test setup guide
Author: Matthias J. Sax <matthias@confluent.io>

Reviewers: Joseph Rea <jrea@users.noreply.github.com>, Ewen Cheslack-Postava <ewen@confluent.io>

Closes #2575 from mjsax/minor-update-system-test-readme
2017-06-22 16:42:55 -07:00
Matthias J. Sax b62cccd078 MINOR: improve test README
Author: Matthias J. Sax <matthias@confluent.io>

Reviewers: Ewen Cheslack-Postava <ewen@confluent.io>

Closes #3416 from mjsax/minor-aws
2017-06-22 16:17:27 -07:00
Eno Thereska 55a90938a1 MINOR: add Yahoo benchmark to nightly runs
Author: Eno Thereska <eno.thereska@gmail.com>

Reviewers: Damian Guy <damian.guy@gmail.com>

Closes #3289 from enothereska/yahoo-benchmark
2017-06-21 11:46:59 +01:00
Randall Hauch bcf5da0bac KAFKA-5450: Increased timeout of Connect system test utilities
Increased the timeout from 30sec to 60sec. When running the system tests with packaged Kafka, Connect workers can take about 30seconds to start.

Author: Randall Hauch <rhauch@gmail.com>

Reviewers: Ewen Cheslack-Postava <ewen@confluent.io>

Closes #3344 from rhauch/KAFKA-5450
2017-06-14 16:23:29 -07:00
Jason Gustafson 005b86ecf3 MINOR: Add random aborts to system test transactional copier service
Author: Jason Gustafson <jason@confluent.io>

Reviewers: Apurva Mehta <apurva@confluent.io>, Ismael Juma <ismael@juma.me.uk>

Closes #3340 from hachikuji/add-random-aborts-to-system-test
2017-06-14 16:20:18 -07:00
Apurva Mehta 0f3f2f56a2 KAFKA-5437; Always send a sig_kill when cleaning the message copier
When the message copier hangs (like when there is a bug in the client), it ignores the sigterm and doesn't shut down. this leaves the cluster in an unclean state causing future tests to fail.

In this patch we always send SIGKILL when cleaning the node if the process isn't already dead. This is consistent with the other services.

Author: Apurva Mehta <apurva@confluent.io>

Reviewers: Jason Gustafson <jason@confluent.io>

Closes #3308 from apurvam/KAFKA-5437-force-kill-message-copier-on-cleanup
2017-06-12 15:57:01 -07:00
Colin P. Mccabe 7d1ef63bec KAFKA-5404; Add more AdminClient checks to ClientCompatibilityTest
Author: Colin P. Mccabe <cmccabe@confluent.io>

Reviewers: Ismael Juma <ismael@juma.me.uk>

Closes #3263 from cmccabe/KAFKA-5404
2017-06-12 22:27:58 +01:00
Matthias J. Sax ba07d828c5 KAFKA-5362: Add EOS system tests for Streams API
Author: Matthias J. Sax <matthias@confluent.io>

Reviewers: Damian Guy <damian.guy@gmail.com>, Bill Bejeck <bill@confluent.io>, Guozhang Wang <wangguoz@gmail.com>

Closes #3201 from mjsax/kafka-5362-add-eos-system-tests-for-streams-api
2017-06-08 14:08:54 -07:00
Apurva Mehta eff79849a0 MINOR: Set log level for producer internals to trace for transactions test
We need this to debug most issues with the transactions system test.

Author: Apurva Mehta <apurva@confluent.io>

Reviewers: Jason Gustafson <jason@confluent.io>

Closes #3261 from apurvam/MINOR-set-log-level-for-producer-to-trace-for-transactions-test
2017-06-08 09:46:15 -07:00
Eno Thereska 5c3d7ca711 MINOR: log4j template should accept log_level
The log_level parameter is used in system tests in kafka.py. However the log4j template accepted that parameter in only one place. This led to a large number of DEBUG lines printed even when the intention was to capture only INFO lines. Led to huge log files. Thanks to ijuma for noticing this.

Author: Eno Thereska <eno.thereska@gmail.com>

Reviewers: Ismael Juma <ismael@juma.me.uk>

Closes #3247 from enothereska/minor-log4j-template-fix
2017-06-07 16:52:10 +01:00
Apurva Mehta 202cb8ea89 KAFKA-5366; Add concurrent reads to transactions system test
This currently fails in multiple ways. One of which is most likely KAFKA-5355, where the concurrent consumer reads duplicates.

During broker bounces, the concurrent consumer misses messages completely. This is another bug.

Author: Apurva Mehta <apurva@confluent.io>

Reviewers: Jason Gustafson <jason@confluent.io>

Closes #3217 from apurvam/KAFKA-5366-add-concurrent-reads-to-transactions-system-test
2017-06-06 17:21:45 -07:00
Ismael Juma b119d04093 KAFKA-5112; Update compatibility system tests to include 0.10.2.1
Also update message format tests now that we have a third message
format.

Finally, set group.initial.rebalance.delay.ms=100.

Author: Ismael Juma <ismael@juma.me.uk>

Reviewers: Ewen Cheslack-Postava <ewen@confluent.io>, Jason Gustafson <jason@confluent.io>

Closes #2701 from ijuma/update-upgrade-tests-for-0.11
2017-06-06 03:21:43 +01:00
Colin P. Mccabe f389b71570 KAFKA-5374; Set allow auto topic creation to false when requesting node information only
It avoids the need to handle protocol downgrades and it's safe (i.e. it will never cause
the auto creation of topics).

Author: Colin P. Mccabe <cmccabe@confluent.io>

Reviewers: Ismael Juma <ismael@juma.me.uk>

Closes #3220 from ijuma/kafka-5374-admin-client-metadata
2017-06-03 06:26:16 +01:00
Apurva Mehta 1959835d9e KAFKA-5281; System tests for transactions
Author: Apurva Mehta <apurva@confluent.io>

Reviewers: Jason Gustafson <jason@confluent.io>

Closes #3149 from apurvam/KAFKA-5281-transactions-system-tests
2017-06-01 10:25:29 -07:00
Matthias J. Sax 495836a4a2 KAFKA-4923: Modify compatibility test for Exaclty-Once Semantics in Streams
- add broker compatibility system tests

Author: Matthias J. Sax <matthias@confluent.io>

Reviewers: Damian Guy, Eno Thereska, Guozhang Wang

Closes #2974 from mjsax/kafka-4923-add-eos-to-streams-add-broker-check-and-system-test
2017-05-21 22:16:18 -07:00
Magnus Edenhill dc10b0ea01 MINOR: Fix race condition in TestVerifiableProducer sanity test
## Fixes race condition in TestVerifiableProducer sanity test:
The test starts a producer, waits for at least 5 acks, and then
logs in to the worker to grep for the producer process to figure
out what version it is running.

The problem was that the producer was set up to produce 1000 messages
at a rate of 1000 msgs/s and then exit. This means it will have a
typical runtime slightly above 1 second.

Logging in to the vagrant instance might take longer than that thus
resulting in the process grep to fail, failing the test.

This commit doesn't really fix the issue - a proper fix would be to tell
the producer to stick around until explicitly killed - but it increases
the chances of the test passing, at the expense of a slightly longer
runtime.

## Improves error reporting when is_version() fails

Author: Magnus Edenhill <magnus@edenhill.se>

Reviewers: Apurva Mehta <apurva@confluent.io>, Ewen Cheslack-Postava <ewen@confluent.io>

Closes #2765 from edenhill/trunk
2017-05-21 18:23:12 -07:00
Ewen Cheslack-Postava d190d89dbc HOTFIX: In Connect test with auto topic creation disabled, ensure precreated topic is always used
Author: Ewen Cheslack-Postava <me@ewencp.org>

Reviewers: Jason Gustafson <jason@confluent.io>

Closes #3112 from ewencp/hotfix-precreate-topic
2017-05-21 18:04:32 -07:00
Ismael Juma 8b2995c31a MINOR: Bump Kafka version to 0.11.1.0-SNAPSHOT
Author: Ismael Juma <ismael@juma.me.uk>

Reviewers: Jason Gustafson <jason@confluent.io>

Closes #3095 from ijuma/bump-kafka-version
2017-05-19 10:20:23 +01:00
Randall Hauch 56623efd73 KAFKA-4667: Connect uses AdminClient to create internal topics when needed (KIP-154)
The backing store for offsets, status, and configs now attempts to use the new AdminClient to look up the internal topics and create them if they don’t yet exist. If the necessary APIs are not available in the connected broker, the stores fall back to the old behavior of relying upon auto-created topics. Kafka Connect requires a minimum of Apache Kafka 0.10.0.1-cp1, and the AdminClient can work with all versions since 0.10.0.0.

All three of Connect’s internal topics are created as compacted topics, and new distributed worker configuration properties control the replication factor for all three topics and the number of partitions for the offsets and status topics; the config topic requires a single partition and does not allow it to be set via configuration. All of these new configuration properties have sensible defaults, meaning users can upgrade without having to change any of the existing configurations. In most situations, existing Connect deployments will have already created the storage topics prior to upgrading.

The replication factor defaults to 3, so anyone running Kafka clusters with fewer nodes than 3 will receive an error unless they explicitly set the replication factor for the three internal topics. This is actually desired behavior, since it signals the users that they should be aware they are not using sufficient replication for production use.

The integration tests use a cluster with a single broker, so they were changed to explicitly specify a replication factor of 1 and a single partition.

The `KafkaAdminClientTest` was refactored to extract a utility for setting up a `KafkaAdminClient` with a `MockClient` for unit tests.

Author: Randall Hauch <rhauch@gmail.com>

Reviewers: Ewen Cheslack-Postava <ewen@confluent.io>

Closes #2984 from rhauch/kafka-4667
2017-05-18 16:02:29 -07:00
Ismael Juma bcf447e93e KAFKA-4422; Drop support for Scala 2.10 (KIP-119)
Author: Ismael Juma <ismael@juma.me.uk>

Reviewers: Ewen Cheslack-Postava <me@ewencp.org>

Closes #2956 from ijuma/kafka-4422-drop-support-scala-2.10
2017-05-11 08:08:11 +01:00
Konstantine Karantasis 8ace736f71 HOTFIX: Increase kafkatest startup wait time on ConnectDistributed service
Author: Konstantine Karantasis <konstantine@confluent.io>

Reviewers: Magesh Nandakumar <magesh.n.kumar@gmail.com>, Jason Gustafson <jason@confluent.io>

Closes #3006 from kkonstantine/HOTFIX-Align-startup-wait-time-for-ConnectDistributed-service-with-ConnectStandalone-in-kafkatests
2017-05-09 14:02:30 -07:00
Jason Gustafson 4815323be7 MINOR: Replication system tests should cover compressed path
Author: Jason Gustafson <jason@confluent.io>

Reviewers: Apurva Mehta <apurva@confluent.io>, Ismael Juma <ismael@juma.me.uk>

Closes #2745 from hachikuji/add-replication-testcase-for-compression
2017-04-24 10:17:12 +01:00
Matthias J. Sax 1fbb8cfafa KAFKA-4564; Follow-up to fix test_timeout_on_pre_010_brokers system test failure
Author: Matthias J. Sax <matthias@confluent.io>

Reviewers: Eno Thereska <eno@confluent.io>, Ismael Juma <ismael@juma.me.uk>

Closes #2897 from mjsax/KAFKA-4564-follow-up
2017-04-23 16:23:48 +01:00
Matthias J. Sax 72be1df598 KAFKA-4564: Add system test for pre-0.10 brokers
Author: Matthias J. Sax <matthias@confluent.io>

Reviewers: Ismael Juma, Eno Thereska, Matthias J. Sax, Guozhang Wang

Closes #2837 from mjsax/kafka-4564-fail-fast-test-stream-compatibility
2017-04-21 10:53:29 -07:00
Matthias J. Sax 779874fb14 MINOR: improve test stability for Streams broker-compatibility test
Author: Matthias J. Sax <matthias@confluent.io>

Reviewers: Magnus Edenhill, Eno Thereska, Damian Guy, Guozhang Wang

Closes #2836 from mjsax/minor-broker-comp-test
2017-04-20 13:49:06 -07:00
Ewen Cheslack-Postava 7c436d3889 MINOR: Fix some re-raising of exceptions in system tests
Author: Ewen Cheslack-Postava <me@ewencp.org>

Reviewers: Ismael Juma <ismael@juma.me.uk>

Closes #2852 from ewencp/minor-re-raise-exceptions
2017-04-19 16:17:53 +01:00
Ben Stopford 0baea2ac13 KIP-101: Alter Replication Protocol to use Leader Epoch rather than High Watermark for Truncation
This PR replaces https://github.com/apache/kafka/pull/2743 (just raising from Confluent repo)

This PR describes the addition of Partition Level Leader Epochs to messages in Kafka as a mechanism for fixing some known issues in the replication protocol. Full details can be found here:

[KIP-101 Reference](https://cwiki.apache.org/confluence/display/KAFKA/KIP-101+-+Alter+Replication+Protocol+to+use+Leader+Epoch+rather+than+High+Watermark+for+Truncation)

*The key elements are*:
- Epochs are stamped on messages as they enter the leader.
- Epochs are tracked in both leader and follower in a new checkpoint file.
- A new API allows followers to retrieve the leader's latest offset for a particular epoch.
- The logic for truncating the log, when a replica becomes a follower, has been moved from Partition into the ReplicaFetcherThread
- When partitions are added to the ReplicaFetcherThread they are added in an initialising state. Initialising partitions request leader epochs and then truncate their logs appropriately.

This test provides a good overview of the workflow `EpochDrivenReplicationProtocolAcceptanceTest.shouldFollowLeaderEpochBasicWorkflow()`

The corrupted log use case is covered by the test
`EpochDrivenReplicationProtocolAcceptanceTest.offsetsShouldNotGoBackwards()`

Remaining work: There is a do list here: https://docs.google.com/document/d/1edmMo70MfHEZH9x38OQfTWsHr7UGTvg-NOxeFhOeRew/edit?usp=sharing

Author: Ben Stopford <benstopford@gmail.com>
Author: Jun Rao <junrao@gmail.com>

Reviewers: Ismael Juma <ismael@juma.me.uk>, Jun Rao <junrao@gmail.com>

Closes #2808 from benstopford/kip-101-v2
2017-04-06 14:51:09 -07:00
Eno Thereska 49f80b2360 KAFKA-4916: test streams with brokers failing
Several fixes for handling broker failures:
- default replication value for internal topics is now 3 in test itself (not in streams code, that will require a KIP.
- streams producer waits for acks from all replicas in test itself (not in streams code, that will require a KIP.
- backoff time for streams client to try again after a failure to contact controller.
- fix bug related to state store locks (this helps in multi-threaded scenarios)
- fix related to catching exceptions property for network errors.
- system test for all the above

Author: Eno Thereska <eno@confluent.io>
Author: Eno Thereska <eno.thereska@gmail.com>

Reviewers: Matthias J. Sax <matthias@confluent.io>, Damian Guy <damian.guy@gmail.com>, Guozhang Wang <wangguoz@gmail.com>, Dan Norwood <norwood@confluent.io>, Ismael Juma <ismael@juma.me.uk>, Ewen Cheslack-Postava <ewen@confluent.io>

Closes #2719 from enothereska/KAFKA-4916-broker-bounce-test
2017-04-04 18:32:58 -07:00
Apurva Mehta bdf4cba047 KAFKA-4817; Add idempotent producer semantics
This is from the KIP-98 proposal.

The main points of discussion surround the correctness logic, particularly the Log class where incoming entries are validated and duplicates are dropped, and also the producer error handling to ensure that the semantics are sound from the users point of view.

There is some subtlety in the idempotent producer semantics. This patch only guarantees idempotent production upto the point where an error has to be returned to the user. Once we hit a such a non-recoverable error, we can no longer guarantee message ordering nor idempotence without additional logic at the application level.

In particular, if an application wants guaranteed message order without duplicates, then it needs to do the following in the error callback:

1. Close the producer so that no queued batches are sent. This is important for guaranteeing ordering.
2. Read the tail of the log to inspect the last message committed. This is important for avoiding duplicates.

Author: Apurva Mehta <apurva@confluent.io>
Author: hachikuji <jason@confluent.io>
Author: Apurva Mehta <apurva.1618@gmail.com>
Author: Guozhang Wang <wangguoz@gmail.com>
Author: fpj <fpj@apache.org>
Author: Jason Gustafson <jason@confluent.io>

Reviewers: Jason Gustafson <jason@confluent.io>, Ismael Juma <ismael@juma.me.uk>, Jun Rao <junrao@gmail.com>

Closes #2735 from apurvam/exactly-once-idempotent-producer
2017-04-02 19:41:44 -07:00
Jason Gustafson 93d451ceeb KAFKA-4689; Disable system tests for consumer hard failures
See the JIRA for the full details. Essentially the test assertions depend on receiving reliable events from the consumer processes, but this is not generally possible in the presence of a hard failure (i.e. `kill -9`). Until we solve this problem, the hard failure scenarios will be turned off.

Author: Jason Gustafson <jason@confluent.io>

Reviewers: Apurva Mehta <apurva@confluent.io>, Ismael Juma <ismael@juma.me.uk>

Closes #2771 from hachikuji/KAFKA-4689
2017-03-30 23:52:03 +01:00
Eno Thereska 84a14fec29 KAFKA-4843: More efficient round-robin scheduler
- Improves streams efficiency by more than 200K requests/second (small 100 byte requests)
- Gets streams efficiency very close to pure consumer (see results in https://jenkins.confluent.io/job/system-test-kafka-branch-builder/746/console)

- Maintains same fairness across tasks
- Schedules all records in the queue in-between poll() calls, not just one per task.

Author: Eno Thereska <eno@confluent.io>
Author: Eno Thereska <eno.thereska@gmail.com>

Reviewers: Damian Guy, Matthias J. Sax, Guozhang Wang

Closes #2643 from enothereska/minor-schedule-round-robin
2017-03-29 15:00:26 -07:00
Ismael Juma 4ce65d65df KAFKA-4574; Ignore test_zk_security_upgrade until KIP-101 lands
The transient failures make it harder to spot real failures and we can live without what is being tested (adding security to ZK via a rolling upgrade) until KIP-101 lands.

Author: Ismael Juma <ismael@juma.me.uk>

Reviewers: Apurva Mehta <apurva@confluent.io>, Jun Rao <junrao@gmail.com>

Closes #2742 from ijuma/disable-zk-upgrade-test
2017-03-29 02:30:30 +01:00
Jason Gustafson 462767660b HOTFIX: Fix unsafe dependence on class name in VerifiableClientJava
Author: Jason Gustafson <jason@confluent.io>

Reviewers: Ewen Cheslack-Postava <ewen@confluent.io>

Closes #2736 from hachikuji/hotfix-verifiable-clients
2017-03-24 19:42:55 -07:00
Magnus Edenhill d5cec01f2a MINOR: Pluggable verifiable clients
This adds support for pluggable VerifiableConsumer and VerifiableProducers test client implementations
allowing third-party clients to be used in-place of the Java client in kafkatests.

A new VerifiableClientMixin class is added and the standard Java Verifiable{Producer,Consumer}
classes have been changed to use it.

While third-party client drivers may be implemented with a complete class based on the Mixin, a simpler
alternative which requries no kafkatest class implementation is available through the VerifiableClientApp class that uses ducktape's global param to specify the client app to use (passed to ducktape through the `--globals <json>` command line argument).

Some existing kafkatest clients for reference:
Go: https://github.com/confluentinc/confluent-kafka-go/tree/master/kafkatest
Python: https://github.com/confluentinc/confluent-kafka-python/tree/master/confluent_kafka/kafkatest
C++: https://github.com/edenhill/librdkafka/blob/0.9.2.x/examples/kafkatest_verifiable_client.cpp
C#/.NET: https://github.com/confluentinc/confluent-kafka-dotnet/tree/master/test/Confluent.Kafka.VerifiableClient

This PR also contains documentation for the simplex JSON-based verifiable\* client protocol.

There are also some minor improvements that makes troubleshooting failing client tests easier.

Author: Magnus Edenhill <magnus@edenhill.se>

Reviewers: Ewen Cheslack-Postava <ewen@confluent.io>

Closes #2048 from edenhill/pluggable_verifiable_clients
2017-03-21 22:24:17 -07:00
Ben Stopford 6b11fb7af8 MINOR: Increase Throttle lower bound assertion in throttling_test
Improves the reliability of this test by decreasing the lower bound (this is to be expected as throttling  takes the first fetch to stabilise and will "over-fetch" for this first request)

Author: Ben Stopford <benstopford@gmail.com>

Reviewers: Apurva Mehta <apurva@confluent.io>, Ismael Juma <ismael@juma.me.uk>

Closes #2698 from benstopford/throttling-test-fix
2017-03-17 12:39:53 +00:00
Raghav Kumar Gautam dbcbd7920f KAFKA-4467: Run tests on travis-ci using docker
ijuma ewencp cmccabe harshach Please review.
Here is a sample run:
https://travis-ci.org/raghavgautam/kafka/builds/191714520

In this run 214 tests were run and 144 tests passed.

I will open separate jiras for fixing failures.

Author: Raghav Kumar Gautam <raghav@apache.org>

Reviewers: Sriharsha Chintalapani <harsha@hortonworks.com>, Ewen Cheslack-Postava <ewen@confluent.io>

Closes #2376 from raghavgautam/trunk
2017-03-09 16:24:38 -08:00
Eno Thereska b7378d567f MINOR: Standardised benchmark params for consumer and streams
There were some minor differences in the basic consumer config and streams config that are now rectified. In addition, in AWS environments the socket size makes a big difference to performance and I've tuned it up accordingly. I've also increased the number of records now that perf is higher.

Author: Eno Thereska <eno@confluent.io>

Reviewers: Guozhang Wang <wangguoz@gmail.com>

Closes #2634 from enothereska/minor-standardize-params
2017-03-04 20:55:16 -08:00
Colin P. Mccabe 4b1415c109 MINOR: Fix tests/docker/Dockerfile
Fix tests/docker/Dockerfile to put the old Kafka distributions in the
correct spot for tests.  Also, run_tests.sh should exit with an error
code if image rebuilding fails, rather than silently falling back to an
older image.

Author: Colin P. Mccabe <cmccabe@confluent.io>

Reviewers: Ewen Cheslack-Postava <ewen@confluent.io>

Closes #2613 from cmccabe/dockerfix
2017-03-03 16:40:25 -08:00
Ismael Juma 2e92f9b2e4 MINOR: Bump version to 0.11.0.0-SNAPSHOT
There won't be a 0.10.3.0.

Author: Ismael Juma <ismael@juma.me.uk>

Reviewers: Jason Gustafson <jason@confluent.io>

Closes #2628 from ijuma/bump-version-to-0.11.0.0-SNAPSHOT
2017-03-03 22:23:20 +00:00
Colin P. Mccabe f3fab2e476 KAFKA-4809: docker/run_tests.sh should set up /opt/kafka-dev to be the source directory
…0.x and not 0.8

Author: Colin P. Mccabe <cmccabe@confluent.io>

Reviewers: Ewen Cheslack-Postava <ewen@confluent.io>

Closes #2602 from cmccabe/KAFKA-4809
2017-02-28 12:21:46 -08:00
Eno Thereska 9231cc439e KAFKA-4744: Increased timeout for bounce test
Author: Eno Thereska <eno.thereska@gmail.com>

Reviewers: Ismael Juma, Matthias J. Sax, Guozhang Wang

Closes #2601 from enothereska/KAFKA-4744-bounce
2017-02-27 11:19:09 -08:00
Rajini Sivaram 2a7b18a2ac KAFKA-4779; Fix security upgrade system test to be non-disruptive
The phase_two security upgrade test verifies upgrading inter-broker and client protocols to the same value as well as different values. The second case currently changes inter-broker protocol without first enabling the protocol, disrupting produce/consume until the whole cluster is updated. This commit changes the test to be a non-disruptive upgrade test that enables protocols first (simulating phase one of upgrade).

Author: Rajini Sivaram <rajinisivaram@googlemail.com>

Reviewers: Apurva Mehta <apurva.1618@gmail.com>, Ismael Juma <ismael@juma.me.uk>

Closes #2589 from rajinisivaram/KAFKA-4779
2017-02-24 17:24:07 +00:00
Apurva Mehta c6fcc721e2 MINOR: Increase consumer init timeout in throttling test
The throttling system test sometimes fail because it takes longer than the current 10 second time out for partitions to get assigned to the consumer.

Author: Apurva Mehta <apurva@confluent.io>

Reviewers: Ismael Juma <ismael@juma.me.uk>

Closes #2567 from apurvam/increase-timeout-for-partitions-assigned
2017-02-18 06:38:35 -08:00
Eno Thereska b865a8b1dc KAFKA-4716: send create topics to controller in internaltopicmanager
This PR fixes a blocker issue, where the streams client code cannot talk to the controller. It also enables a system test that was previously failing.

This PR is for trunk only. A separate PR with just the fix (but not the tests) will be created for 0.10.2.

Author: Eno Thereska <eno@confluent.io>
Author: Eno Thereska <eno.thereska@gmail.com>

Reviewers: Damian Guy, Ismael Juma, Matthias J. Sax, Guozhang Wang

Closes #2522 from enothereska/KAFKA-4716-metadata
2017-02-09 14:01:13 -08:00
Eno Thereska f8c11eb0c3 HOTFIX: Add missing default arguments to __init__
This caused the bounce and smoke tests to fail on trunk.

Author: Eno Thereska <eno.thereska@gmail.com>

Reviewers: Ismael Juma <ismael@juma.me.uk>

Closes #2524 from enothereska/hotfix-tests
2017-02-09 15:13:31 +00:00
Eno Thereska 13a82b48ca KAFKA-4702: Parametrize streams benchmarks to run at scale
Author: Eno Thereska <eno.thereska@gmail.com>
Author: Eno Thereska <eno@confluent.io>
Author: Ubuntu <ubuntu@ip-172-31-22-146.us-west-2.compute.internal>

Reviewers: Matthias J. Sax, Guozhang Wang

Closes #2478 from enothereska/minor-benchmark-args
2017-02-08 13:06:09 -08:00
Eno Thereska e7c869e65d HOTFIX: renamed test so it is picked up by ducktape
Author: Eno Thereska <eno@confluent.io>

Reviewers: Matthias J. Sax, Guozhang Wang

Closes #2517 from enothereska/hotfix-broker-test
2017-02-08 12:50:04 -08:00
Ewen Cheslack-Postava 82e75b9607 MINOR: Fix import for streams broker compatibility test to use new DEV_BRANCH constant
Author: Ewen Cheslack-Postava <me@ewencp.org>

Reviewers: Matthias J. Sax <matthias@confluent.io>, Guozhang Wang <wangguoz@gmail.com>

Closes #2508 from ewencp/minor-streams-compatibility-trunk-dev-branch
2017-02-06 13:53:22 -08:00
Apurva Mehta d0932b0286 KAFKA-4558; throttling_test fails if the producer starts too fast
With this change, the consumer will be considered initialized in the
ProduceConsumeValidate tests once its partitions have been assigned.

Author: Apurva Mehta <apurva.1618@gmail.com>

Reviewers: Ismael Juma <ismael@juma.me.uk>

Closes #2347 from apurvam/KAFKA-4588-fix-race-between-producer-consumer-start
2017-02-05 10:29:44 +00:00
Jason Gustafson 88809b9b8e HOTFIX: Verifiable producer request timeout needs conversion to milliseconds
Author: Jason Gustafson <jason@confluent.io>

Reviewers: Ewen Cheslack-Postava <ewen@confluent.io>

Closes #2494 from hachikuji/hotfix-verifiable-producer-request-timeout
2017-02-03 13:47:14 -08:00
Jason Gustafson 76550dd895 KAFKA-4719: Consumption timeout should take into account producer request timeout
Author: Jason Gustafson <jason@confluent.io>

Reviewers: Ewen Cheslack-Postava <ewen@confluent.io>

Closes #2479 from hachikuji/KAFKA-4719
2017-02-02 10:49:11 -08:00
Onur Karaman 063d534c51 KAFKA-3959: enforce offsets.topic.replication.factor upon __consumer_offsets auto topic creation (KIP-115)
Kafka brokers have a config called "offsets.topic.replication.factor" that specify the replication factor for the "__consumer_offsets" topic. The problem is that this config isn't being enforced. If an attempt to create the internal topic is made when there are fewer brokers than "offsets.topic.replication.factor", the topic ends up getting created anyway with the current number of live brokers. The current behavior is pretty surprising when you have clients or tooling running as the cluster is getting setup. Even if your cluster ends up being huge, you'll find out much later that __consumer_offsets was setup with no replication.

The cluster not meeting the "offsets.topic.replication.factor" requirement on the internal topic is another way of saying the cluster isn't fully setup yet.

The right behavior should be for "offsets.topic.replication.factor" to be enforced. Topic creation of the internal topic should fail with GROUP_COORDINATOR_NOT_AVAILABLE until the "offsets.topic.replication.factor" requirement is met. This closely resembles the behavior of regular topic creation when the requested replication factor exceeds the current size of the cluster, as the request fails with error INVALID_REPLICATION_FACTOR.

Author: Onur Karaman <okaraman@linkedin.com>

Reviewers: Jason Gustafson <jason@confluent.io>, Ismael Juma <ismael@juma.me.uk>, Ewen Cheslack-Postava <ewen@confluent.io>

Closes #2177 from onurkaraman/KAFKA-3959
2017-02-01 19:55:06 -08:00
Ewen Cheslack-Postava 6264cc1557 KAFKA-4450; Add upgrade tests for 0.10.1 and rename TRUNK to DEV_BRANCH to reduce confusion
Author: Ewen Cheslack-Postava <me@ewencp.org>

Reviewers: Ismael Juma <ismael@juma.me.uk>

Closes #2457 from ewencp/kafka-4450-upgrade-tests
2017-01-28 01:40:34 +00:00
Matthias J. Sax 89fb02aa81 MINOR: Add Streams system test for broker backwards compatibility
Author: Matthias J. Sax <matthias@confluent.io>

Reviewers: Damian Guy, Eno Thereska, Guozhang Wang

Closes #2403 from mjsax/addStreamsClientCompatibilityTest
2017-01-26 21:46:37 -08:00
Colin P. Mccabe 5b4e299a46 KAFKA-4630; Implement RecordTooLargeException when communicating with pre-KIP-74 brokers
Author: Colin P. Mccabe <cmccabe@confluent.io>

Reviewers: Jason Gustafson <jason@confluent.io>, Ismael Juma <ismael@juma.me.uk>

Closes #2390 from cmccabe/KAFKA-4630
2017-01-26 11:19:32 +00:00
Matthias J. Sax 448c1a4114 HOTIFX: streams system test do not start up correctly
Author: Matthias J. Sax <matthias@confluent.io>

Reviewers: Guozhang Wang, Damian Guy, Eno Thereska

Closes #2428 from mjsax/hotfixSystemTests
2017-01-24 19:36:08 -08:00
Ewen Cheslack-Postava 9b8d99b1b8 KAFKA-4673: Fix thread-safety of Python VerifiableConsumer class
Author: Ewen Cheslack-Postava <me@ewencp.org>

Reviewers: Jason Gustafson <jason@confluent.io>

Closes #2427 from ewencp/kafka-4673-verifiable-consumer-thread-safety
2017-01-24 13:19:03 -08:00
Colin P. Mccabe 3df60e7eb8 KAFKA-4548; Add ClientCompatibilityTest to verify features against older brokers
Author: Colin P. Mccabe <cmccabe@confluent.io>

Reviewers: Ismael Juma <ismael@juma.me.uk>

Closes #2262 from cmccabe/KAFKA-4548
2017-01-24 20:07:13 +00:00
Colin P. Mccabe 567180605c KAFKA-4688; Kafka 0.10.1.1 should be available in system tests
Author: Colin P. Mccabe <cmccabe@confluent.io>

Reviewers: Ewen Cheslack-Postava <ewen@confluent.io>, Ismael Juma <ismael@juma.me.uk>

Closes #2424 from cmccabe/KAFKA-4688
2017-01-24 11:15:53 +00:00
Jason Gustafson bf5aebadb5 MINOR: Add offset information to consumer_test error messages
Author: Jason Gustafson <jason@confluent.io>

Reviewers: Ismael Juma <ismael@juma.me.uk>

Closes #2426 from hachikuji/improve-consumer-test-error-messages
2017-01-23 16:42:50 -08:00
Shikhar Bhushan a8aa756166 KAFKA-3209: KIP-66: more single message transforms
Renames `HoistToStruct` SMT to `HoistField`.

Adds the following SMTs:
`ExtractField`
`MaskField`
`RegexRouter`
`ReplaceField`
`SetSchemaMetadata`
`ValueToKey`

Adds HTML doc generation and updates to `connect.html`.

Author: Shikhar Bhushan <shikhar@confluent.io>

Reviewers: Ewen Cheslack-Postava <ewen@confluent.io>

Closes #2374 from shikhar/more-smt
2017-01-20 16:15:15 -08:00
Matthias J. Sax d8a77560c2 MINOR: refactor streams system test class hierachy
Author: Matthias J. Sax <matthias@confluent.io>

Reviewers: Eno Thereska, Guozhang Wang

Closes #2392 from mjsax/minor-system-test-rework
2017-01-18 11:55:23 -08:00
Rajini Sivaram 3f6c4f63c9 KAFKA-4580; Use sasl.jaas.config for some system tests
Switched console_consumer, verifiable_consumer and verifiable_producer to use new sasl.jaas_config property instead of static JAAS configuration file when used with SASL_PLAINTEXT.

Author: Rajini Sivaram <rajinisivaram@googlemail.com>

Reviewers: Ewen Cheslack-Postava <ewen@confluent.io>, Ismael Juma <ismael@juma.me.uk>

Closes #2323 from rajinisivaram/KAFKA-4580
2017-01-17 18:42:55 +00:00
Rajini Sivaram 55abe65e09 KAFKA-4590; SASL/SCRAM system tests
Runs sanity test and one replication test using SASL/SCRAM.

Author: Rajini Sivaram <rajinisivaram@googlemail.com>

Reviewers: Ewen Cheslack-Postava <ewen@confluent.io>, Ismael Juma <ismael@juma.me.uk>

Closes #2355 from rajinisivaram/KAFKA-4590
2017-01-17 12:55:07 +00:00
Ewen Cheslack-Postava 6e42ce8fe8 Bump version to 0.10.3.0-SNAPSHOT 2017-01-16 11:39:13 -08:00
Eno Thereska d1956d4b6c HOTFIX: Added another broker to smoke test
Author: Eno Thereska <eno.thereska@gmail.com>

Reviewers: Guozhang Wang <wangguoz@gmail.com>

Closes #2362 from enothereska/hotfix-smoke-test-2-brokers
2017-01-13 11:11:17 -08:00
Emanuele Cesena 7a61ce4cf4 MINOR: Cluster file generator should produce valid json
This way, if the ${KAFKA_NUM_CONTAINERS} is changed in docker/run_tests.sh, the json is still valid

Author: Emanuele Cesena <emanuele.cesena@gmail.com>

Reviewers: Ewen Cheslack-Postava <ewen@confluent.io>

Closes #2370 from 0x0ece/patch-1
2017-01-13 10:22:38 -08:00
Shikhar Bhushan 2f90488323 KAFKA-3209: KIP-66: single message transforms
Besides API and runtime changes, this PR also includes 2 data transformations (`InsertField`, `HoistToStruct`) and 1 routing transformation (`TimestampRouter`).

There is some gnarliness in `ConnectorConfig` / `ConfigDef` around creating, parsing and validating a dynamic `ConfigDef`.

Author: Shikhar Bhushan <shikhar@confluent.io>

Reviewers: Ewen Cheslack-Postava <ewen@confluent.io>

Closes #2299 from shikhar/smt-2017
2017-01-12 16:14:53 -08:00
Raghav Kumar Gautam fa80093c06 KAFKA-4465: Create docker image and scripts for running tests locally
Author: Raghav Kumar Gautam <raghav@apache.org>

Reviewers: Ismael Juma <ismael@juma.me.uk>, Sriharsha Chintalapani <harsha@hortonworks.com>, Ewen Cheslack-Postava <ewen@confluent.io>

Closes #2197 from raghavgautam/trunk
2017-01-08 16:15:05 -08:00
Shikhar Bhushan 2e1bcf661d KAFKA-4575: ensure topic created before starting sink for ConnectDistributedTest.test_pause_resume_sink
Otherwise in this test the sink task goes through the pause/resume cycle with 0 assigned partitions, since the default metadata refresh interval is quite long

Author: Shikhar Bhushan <shikhar@confluent.io>

Reviewers: Ewen Cheslack-Postava <ewen@confluent.io>

Closes #2313 from shikhar/kafka-4575
2017-01-05 15:25:00 -08:00
Colin P. Mccabe 0cd5afdb61 KAFKA-4508; System test that runs client against older versions of the broker
In reality, we’ll only test older brokers after KAFKA-4462 is fully implemented.

Author: Colin P. Mccabe <cmccabe@confluent.io>

Reviewers: Apurva Mehta <apurva.1618@gmail.com>, Ismael Juma <ismael@juma.me.uk>

Closes #2263 from cmccabe/KAFKA-4508
2017-01-04 13:55:36 +00:00
Apurva Mehta 8dbdc90bae KAFKA-4526; Disable throttling test until it can be fixed correctly.
At present, the test is fragile in the sense that the console consumer
has to start and be initialized before the verifiable producer begins
producing in the produce-consume-validate loop.

If this doesn't happen, the consumer will miss messages at the head of
the log and the test will fail.

At present, the consumer is considered inited once it has a PID. This is
a weak assumption. The plan is to poll appropriate metrics (like
partition assignment), and use those as a proxy for consumer
initialization. That work will be tracked in a separate ticket. For now,
we will disable the tests so that we can get the builds healthy again.

Author: Apurva Mehta <apurva.1618@gmail.com>

Reviewers: Ismael Juma <ismael@juma.me.uk>

Closes #2278 from apurvam/KAFKA-4526-throttling-test-failures
2016-12-19 23:41:56 +00:00
Jason Gustafson 529ca32932 KAFKA-4166; Fix transient MM failure caused by slow old consumer shutdown
Author: Jason Gustafson <jason@confluent.io>

Reviewers: Ismael Juma <ismael@juma.me.uk>

Closes #2279 from hachikuji/KAFKA-4166
2016-12-19 23:39:35 +00:00
Ashish Singh d6b0b520fc KAFKA-3600; Use ApiVersions to check if broker supports required api versions
Author: Ashish Singh <asingh@cloudera.com>

Reviewers: Jason Gustafson <jason@confluent.io>, Colin P. Mccabe <cmccabe@confluent.io>, Dana Powers <dana.powers@gmail.com>, Gwen Shapira <cshapi@gmail.com>, Grant Henke <granthenke@gmail.com>, Ismael Juma <ismael@juma.me.uk>

Closes #1251 from SinghAsDev/KAFKA-3600
2016-12-17 04:24:15 -08:00
Eno Thereska 7049938165 MINOR: Reenable streams smoke test
I ran it 3 times and it works again.

Author: Eno Thereska <eno.thereska@gmail.com>

Reviewers: Guozhang Wang <wangguoz@gmail.com>

Closes #2257 from enothereska/minor-reenable-smoke-test
2016-12-14 13:01:43 -08:00
Geoff Anderson 62e043a865 KAFKA-4140: Upgrade to ducktape 0.6.0 and make system tests parallel friendly
Updates to take advantage of soon-to-be-released ducktape features.

Author: Geoff Anderson <geoff@confluent.io>
Author: Ewen Cheslack-Postava <me@ewencp.org>

Reviewers: Ewen Cheslack-Postava <ewen@confluent.io>

Closes #1834 from granders/systest-parallel-friendly
2016-12-11 18:43:23 -08:00
Eno Thereska b6af35161c HOTFIX: Disable test until fixed
Author: Eno Thereska <eno.thereska@gmail.com>

Reviewers: Ismael Juma <ismael@juma.me.uk>

Closes #2217 from enothereska/hotfix-disable-smoke-test
2016-12-07 00:23:57 +00:00
Ewen Cheslack-Postava 39f62ddcec MINOR: Update ducktape version to 0.5.3
Author: Ewen Cheslack-Postava <me@ewencp.org>

Reviewers: Ismael Juma <ismael@juma.me.uk>

Closes #2220 from ewencp/update-ducktape
2016-12-06 13:57:27 -08:00
Ismael Juma a5d28149fb Revert "KAFKA-4345; Run decktape test for each pull request"
This reverts commit e035fc0395 for the
following reasons:

1. License files are missing causing local builds to fail during the
rat task (rat is not being run in Jenkins for some reason, filed
KAFKA-4459 for that)
2. It renames a number of system test files when there's a better
way to achieve the goal of running a subset of system tests to stay
under the Travis limit.
3. It adds the gradle wrapper binary even though this was removed
intentionally a while back.

A new PR will be submitted for KAFKA-4345 without the undesired
changes.

Author: Ismael Juma <ismael@juma.me.uk>

Reviewers: Jason Gustafson <jason@confluent.io>, Ewen Cheslack-Postava <ewen@confluent.io>

Closes #2187 from ijuma/kafka-4345-revert
2016-11-29 09:11:21 -08:00
Raghav Kumar Gautam e035fc0395 KAFKA-4345; Run decktape test for each pull request
As of now the ducktape tests that we have for kafka are not run for pull request. We can run these test using travis-ci. Here is a sample run:
https://travis-ci.org/raghavgautam/kafka/builds/170574293

Author: Raghav Kumar Gautam <raghav@apache.org>

Reviewers: Sriharsha Chintalapani <harsha@hortonworks.com>

Closes #2064 from raghavgautam/trunk
2016-11-23 20:48:58 -08:00
Eno Thereska bbe84051c7 HOTFIX: Hotfix streams smoke test
Author: Eno Thereska <eno.thereska@gmail.com>

Reviewers: Ismael Juma <ismael@juma.me.uk>

Closes #2149 from enothereska/hotfix-streams-smoke-test
2016-11-19 09:38:47 +00:00
Damian Guy 2daa10d77f KAFKA-4366: KafkaStreams.close() blocks indefinitely
Added `timeout` and `timeUnit` to `KafkaStreams.close(..)`. Now do close on a thread and `join` that thread with the provided `timeout`.
Changed `state` in `KafkaStreams` to use an enum.
Added system test to ensure we don't deadlock on close when an uncaught exception handler that calls `System.exit(..)` is used and there is also a shutdown hook that calls `KafkaStreams.close(...)`

Author: Damian Guy <damian.guy@gmail.com>

Reviewers: Matthias J. Sax, Eno Thereska, Guozhang Wang

Closes #2097 from dguy/kafka-4366
2016-11-17 12:49:20 -08:00
Vahid Hashemian 249e413685 KAFKA-4211; Update system test services to use the new consumer by default
Update system test method signatures and method calls to use the new consumer by default.

Author: Vahid Hashemian <vahidhashemian@us.ibm.com>

Reviewers: Jason Gustafson <jason@confluent.io>

Closes #2060 from vahidhashemian/KAFKA-4211
2016-11-16 16:30:48 -08:00
Shikhar Bhushan a32962af14 HOTFIX: Remove failing ConnectDistributedTest.test_bad_connector_class
Since #1911 was merged it is hard to externally test a connector transitioning to FAILED state due to an initialization failure, which is what this test was attempting to verify.

The unit test added in #1778 already exercises exception-handling around Connector instantiation.

Author: Shikhar Bhushan <shikhar@confluent.io>

Reviewers: Jason Gustafson <jason@confluent.io>

Closes #2131 from shikhar/test_bad_connector_class
2016-11-14 17:07:39 -08:00
Konstantine Karantasis 4f1d8c6859 MINOR: Fix export command for additional env vars in connect system tests
Author: Konstantine Karantasis <konstantine@confluent.io>

Reviewers: Ewen Cheslack-Postava <ewen@confluent.io>

Closes #2126 from kkonstantine/MINOR-Fix-formatting-of-env-vars-in-connect-system-test-template
2016-11-11 15:00:40 -08:00
Konstantine Karantasis 9783934460 MINOR: Extend mirror maker test to include interceptors
Author: Konstantine Karantasis <konstantine@confluent.io>

Reviewers: Ewen Cheslack-Postava <ewen@confluent.io>

Closes #2081 from kkonstantine/MINOR-Extend-mirror-maker-test-to-include-interceptors
2016-11-11 09:10:20 -08:00
Ewen Cheslack-Postava 5307efe1ae MINOR: Fix re-raise of python error in system tests
Author: Ewen Cheslack-Postava <me@ewencp.org>

Reviewers: Jason Gustafson <jason@confluent.io>

Closes #2099 from ewencp/fix-python-reraise
2016-11-04 15:57:12 -07:00
Vahid Hashemian 2ac332e9c9 KAFKA-4339; Update system tests to accommodate the new consumer group describe output
Author: Vahid Hashemian <vahidhashemian@us.ibm.com>

Reviewers: Ismael Juma <ismael@juma.me.uk>

Closes #2061 from vahidhashemian/KAFKA-4339
2016-10-25 13:07:50 +01:00
Xavier Léauté 74014af833 MINOR: add list_topics command to help debug tests
Author: Xavier Léauté <xavier@confluent.io>

Reviewers: Ewen Cheslack-Postava <ewen@confluent.io>

Closes #2052 from xvrl/test-add-list-topics
2016-10-21 14:52:06 -07:00
Ben Stopford 2ac70c0b74 KAFKA-4309; Allow "pluggable" properties in KafkaService in System Tests
Author: Ben Stopford <benstopford@gmail.com>

Reviewers: Ismael Juma <ismael@juma.me.uk>

Closes #2034 from benstopford/throttling-system-test-kafka-changes
2016-10-21 10:12:08 +01:00
Flavio Junqueira b049606aeb KAFKA-3985; Transient system test failure ZooKeeperSecurityUpgradeTest.test_zk_security_upgrade.security_protocol
Author: Flavio Junqueira <fpj@apache.org>

Reviewers: Rajini Sivaram <rajinisivaram@googlemail.com>, Geoff Anderson <geoff@confluent.io>, Ismael Juma <ismael@juma.me.uk>

Closes #1973 from fpj/KAFKA-3985
2016-10-05 23:01:53 +01:00
Jason Gustafson b3eef7bc72 KAFKA-4165; Add 0.10.0.1 as a source for compatibility tests
Author: Jason Gustafson <jason@confluent.io>

Reviewers: Ismael Juma <ismael@juma.me.uk>

Closes #1959 from hachikuji/KAFKA-4165
2016-10-04 11:12:56 -07:00
Jason Gustafson 33c7b88ffe HOTFIX: Avoid mutable default arguments in system test services
Author: Jason Gustafson <jason@confluent.io>

Reviewers: Apurva Mehta <apurva.1618@gmail.com>, Ewen Cheslack-Postava <ewen@confluent.io>

Closes #1947 from hachikuji/hotfix-producer-perf-service
2016-10-01 17:21:19 -07:00
Jason Gustafson 788989158a HOTFIX: Revert async change in ProduceConsumeValidateTest
Author: Jason Gustafson <jason@confluent.io>

Reviewers: Ismael Juma <ismael@juma.me.uk>

Closes #1945 from hachikuji/hotfix-produce-consume-validate
2016-09-30 17:05:37 -07:00
Apurva Mehta 5a989d1748 KAFKA-4213; System tests for replication throttling (KIP-73)
In this patch, we test `kafka-reassign-partitions` when throttling is active.

This patch also fixes the following:

  1. KafkaService.verify_reassign_partitions did not check whether
partition reassignment actually completed successfully (KAFKA-4204).
This patch works around those shortcomings so that we get the right
signal from this method.

  2. ProduceConsumeValidateTest.annotate_missing_messages would call
`pop' on the list of missing messages, causing downstream methods to get
incomplete data. We fix that in this patch as well.

Author: Apurva Mehta <apurva.1618@gmail.com>

Reviewers: Geoff Anderson <geoff@confluent.io>, Ben Stopford <benstopford@gmail.com>, Ismael Juma <ismael@juma.me.uk>

Closes #1904 from apurvam/throttling-tests
2016-09-30 19:58:58 +01:00
Konstantine Karantasis 0c8c167e84 MINOR: Allow for asynchronous start of producer consumer in validation test
Author: Konstantine Karantasis <konstantine@confluent.io>

Reviewers: Jason Gustafson <jason@confluent.io>

Closes #1909 from kkonstantine/MINOR-Async-start-in-produce-consume-validate
2016-09-29 13:50:39 -07:00
Jason Gustafson a6f3cf56b3 HOTFIX: Tools for releases prior to 0.10.1 need --new-consumer flag
Author: Jason Gustafson <jason@confluent.io>

Reviewers: Ismael Juma <ismael@juma.me.uk>

Closes #1931 from hachikuji/fix-broken-upgrade-tests
2016-09-29 07:48:40 +01:00
Jason Gustafson 3db752a565 MINOR: Make new consumer default for Mirror Maker
Author: Jason Gustafson <jason@confluent.io>

Reviewers: Ismael Juma <ismael@juma.me.uk>

Closes #1914 from hachikuji/mm-default-new-consumer
2016-09-27 21:35:29 +01:00
Rajini Sivaram c0a62b70a8 KAFKA-4055; System tests for secure quotas
Fix existing client-id quota test which currently don't configure quota overrides correctly. Add new tests for user and (user, client-id) quota overrides and default quotas.

Author: Rajini Sivaram <rajinisivaram@googlemail.com>

Reviewers: Jun Rao <junrao@gmail.com>

Closes #1860 from rajinisivaram/KAFKA-4055
2016-09-25 17:01:45 -07:00
Ben Stopford 4f821830bc KAFKA-4197; Make ReassignPartitionsTest System Test move data
The ReassignPartitionsTest system tests doesn't reassign any replicas (i.e. move data).

This is a simple issue. It uses a 3 node cluster with replication factor of 3, so whilst the replicas are jumbled around, nothing actually is moved from machine to machine when the assignment is executed.

This fix just ups the number of nodes to 4 so things move.

Tests pass locally.
There are runs pending on the two branch builders

Passes:
https://jenkins.confluent.io/job/system-test-kafka-branch-builder/551/
https://jenkins.confluent.io/job/system-test-kafka-branch-builder-2/94/
https://jenkins.confluent.io/job/system-test-kafka-branch-builder/553/
https://jenkins.confluent.io/job/system-test-kafka-branch-builder/554/
https://jenkins.confluent.io/job/system-test-kafka-branch-builder-2/95

Failures:
https://jenkins.confluent.io/job/system-test-kafka-branch-builder/552 => _RuntimeError: There aren't enough available nodes to satisfy the resource request. Total cluster size: 1, Requested: 4, Already allocated: 1, Available: 0._ Which I assume to do with the test env.

Author: Ben Stopford <benstopford@gmail.com>

Reviewers: Ismael Juma <ismael@juma.me.uk>

Closes #1892 from benstopford/fix_reassignment_test
2016-09-20 15:41:14 +01:00
Jason Gustafson 6acbf27aeb MINOR: Bump to version 0.10.2 2016-09-19 21:19:17 -07:00