2. About using the create topics policy, I'm not sure. Aside from the > naming issue, there's also the problem that the policy doesn't know if a > creation or update is taking place. This matters because one may not want > to allow the number of partitions to be changed after creation as it > affects the semantics if keys are used. One option is to introduce a new > interface that can be used by create, alter and delete with a new config. > And deprecate CreateTopicPolicy. I doubt many are using it. What do you > think? >
I included the part about the create topics policy because I felt it was better, in the short term, to prevent the loophole than to just ignore it. The create topic policy is obviously not a good fit for applying to topic modifications, but I think designing a good policy interface that covered creation, modification and deletion could be the subject of its own KIP. Note that modification would include the APIs proposed in KIP-195 and KIP-179. KIP-170 is already proposing to change the creation policy and add a deletion policy, so shouldn't the changes necessary for KIP-195 be considered as part of that KIP? I'm happy to propose something in KIP-195 if you really want, though it would put in doubt whether it could be part of Kafka 1.0.0.