THIS IS A TEST INSTANCE. ALL YOUR CHANGES WILL BE LOST!!!!
...
The Admin interface will be expanded to include new methods for fencing out producers by transactional ID. This same functionality is already possible by employing one or more transactional producers and invoking their initTransactions
methods, but is replicated on the admin client to make it easier to use for other cases (for more details, see the Fencing-only producers rejected alternative):
Code Block | ||||
---|---|---|---|---|
| ||||
public interface Admin { /** * Fence out all active producers that use any of the provided transactional IDs. * * @param transactionalIds The IDs of the producers to fence. * @param options The options to use when fencing the producers. * @return The FenceProducersResult. */ FenceProducersResult fenceProducers(Collection<String> transactionalIds, FenceProducersOptions options); /** * Fence out all active producers that use any of the provided transactional IDs, with the default options. * <p> * This is a convenience method for {@link #fenceProducers(Collection, FenceProducersOptions)} * with default options. See the overload for more details. * * @param transactionalIds The IDs of the producers to fence. * @return The FenceProducersResult. */ default FenceProducersResult fenceProducers(Collection<String> transactionalIds) { return fenceProducers(transactionalIds, new FenceProducersOptions()); } } |
...