0
文法的にカフカのトピックを再作成したい。 私はkafka.admin.AdminUtils
同じものを使用しています。私が理解するトピックがないということですカフカトピックをプログラム的に再作成する
Exception in thread "main" kafka.common.TopicExistsException: Topic "new_topic" already exists.
at kafka.admin.AdminUtils$.createOrUpdateTopicPartitionAssignmentPathInZK(AdminUtils.scala:253)
at kafka.admin.AdminUtils$.createTopic(AdminUtils.scala:237)
at kafka.admin.AdminUtils.createTopic(AdminUtils.scala)
:上記のコード
AdminUtils.deleteTopic(zkUtils, topicName);
AdminUtils.createTopic(zkUtils, topicName, partitions, replicationFactor, new Properties());
、それが次の例外で失敗が数回ほとんどの時間を働いている:ここでは
は私roughtコードがあります適切に削除されています。私はここで間違って何をしていますか?
私はすでにdelete.topic.enableをtrueに設定しています。ポイント2を達成するために、削除操作が正常に完了したときに通知するkafkaからのコールバックがありますか? –
アウトオブボックスのコールバック機能は使用できないようです。可能な方法は、zkノード '/ admin/delete_topics/'の存在を監視することです。このzkノードを削除することは、トピックを削除する最中ですが、監視するのが容易ではないコントローラーキャッシュをクリアする前に行われます。 –
amethystic