confluentinc/kafka-connect-datagen

NPE if specified `quickstart` does not exist

rmoff opened this issue · 0 comments

rmoff commented
[2019-07-15 13:29:52,348] WARN Quickstart 'purchase' not found:  (io.confluent.kafka.connect.datagen.DatagenTask)
java.lang.IllegalArgumentException: No enum constant io.confluent.kafka.connect.datagen.DatagenTask.Quickstart.PURCHASE
  at java.lang.Enum.valueOf(Enum.java:238)
  at io.confluent.kafka.connect.datagen.DatagenTask$Quickstart.valueOf(DatagenTask.java:65)
  at io.confluent.kafka.connect.datagen.DatagenTask.start(DatagenTask.java:109)
  at org.apache.kafka.connect.runtime.WorkerSourceTask.execute(WorkerSourceTask.java:199)
  at org.apache.kafka.connect.runtime.WorkerTask.doRun(WorkerTask.java:177)
  at org.apache.kafka.connect.runtime.WorkerTask.run(WorkerTask.java:227)
  at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
  at java.util.concurrent.FutureTask.run(FutureTask.java:266)
  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
  at java.lang.Thread.run(Thread.java:748)
[2019-07-15 13:29:52,355] INFO WorkerSourceTask{id=source-datagen-01-0} Committing offsets (org.apache.kafka.connect.runtime.WorkerSourceTask)
[2019-07-15 13:29:52,355] INFO WorkerSourceTask{id=source-datagen-01-0} flushing 0 outstanding messages for offset commit (org.apache.kafka.connect.runtime.WorkerSourceTask)
[2019-07-15 13:29:52,355] ERROR WorkerSourceTask{id=source-datagen-01-0} Task threw an uncaught and unrecoverable exception (org.apache.kafka.connect.runtime.WorkerTask)
java.lang.NullPointerException
  at io.confluent.kafka.connect.datagen.DatagenTask.start(DatagenTask.java:138)
  at org.apache.kafka.connect.runtime.WorkerSourceTask.execute(WorkerSourceTask.java:199)
  at org.apache.kafka.connect.runtime.WorkerTask.doRun(WorkerTask.java:177)
  at org.apache.kafka.connect.runtime.WorkerTask.run(WorkerTask.java:227)
  at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
  at java.util.concurrent.FutureTask.run(FutureTask.java:266)
  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
  at java.lang.Thread.run(Thread.java:748)

Presumably if the quickstart doesn't exist the connector should throw an ERROR at that point.