Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

We propose to add two new exceptions –  namely  MissingInternalTopicsException and MisconfiguredInternalTopicExceptionMissingInternalTopicsException is thrown when a required internal topic does not exist and MisconfiguredInternalTopicException is thrown when the internal topic is not configured as expected. For example, a changelog topic for a non-windowed state store is regarded as misconfigured if its retention period is not set to unlimited. Another example for a misconfigured internal topic is a repartition topic with the wrong number of partitions.

These exceptions MisconfiguredInternalTopicException – that help to discriminate errors originating from missing or misconfigured internal topics from other errors in the uncaught exception handler. For example, reacting on a missing source topic (i.e., MissingSourceTopicException) might be different from reacting on a missing or misconfigured internal topic, because the process for re-creating source topics might differ from the process for re-creating internal topics. Furthermore, source topics might be owned by a different team than the internal topics, consequently different people need to be paged. Misconfigured internal topics are internal topics whose configuration differs from the intended one. For example, a changelog topic for a non-windowed state store is expected to have a infinite retention. If such a changelog topic does not have infinite retention when it is verified, exception MisconfiguredInternalTopicException should be thrown. Exceptions  Exceptions MissingInternalTopicsException and MisconfiguredInternalTopicException will be thrown during explicit initialization and during a rebalance when the internal topics are verified. Both exceptions are fatal. 

...