mirror of https://github.com/apache/kafka.git
MINOR: fix BrokerMetadataPublisherTest.testExceptionInUpdateCoordinator
Fix a case where we were getting an exception because we removed a publisher, but left it in BrokerServer.metadataPublishers (resulting in us trying to remove it during broker shutdown.)
This commit is contained in:
parent
372b0f1c58
commit
145ef2d1e0
|
|
@ -544,7 +544,7 @@ class BrokerServer(
|
|||
if (socketServer != null) {
|
||||
CoreUtils.swallow(socketServer.stopProcessingRequests(), this)
|
||||
}
|
||||
metadataPublishers.forEach(p => CoreUtils.swallow(sharedServer.loader.removeAndClosePublisher(p).get(), this))
|
||||
metadataPublishers.forEach(p => sharedServer.loader.removeAndClosePublisher(p).get())
|
||||
metadataPublishers.clear()
|
||||
if (dataPlaneRequestHandlerPool != null)
|
||||
CoreUtils.swallow(dataPlaneRequestHandlerPool.shutdown(), this)
|
||||
|
|
|
|||
|
|
@ -376,7 +376,7 @@ class ControllerServer(
|
|||
// Ensure that we're not the Raft leader prior to shutting down our socket server, for a
|
||||
// smoother transition.
|
||||
sharedServer.ensureNotRaftLeader()
|
||||
metadataPublishers.forEach(p => CoreUtils.swallow(sharedServer.loader.removeAndClosePublisher(p).get(), this))
|
||||
metadataPublishers.forEach(p => sharedServer.loader.removeAndClosePublisher(p).get())
|
||||
metadataPublishers.clear()
|
||||
if (socketServer != null)
|
||||
CoreUtils.swallow(socketServer.stopProcessingRequests(), this)
|
||||
|
|
|
|||
|
|
@ -254,6 +254,7 @@ class BrokerMetadataPublisherTest {
|
|||
val publisher = Mockito.spy(broker.brokerMetadataPublisher)
|
||||
doThrow(new RuntimeException("injected failure")).when(publisher).updateCoordinator(any(), any(), any(), any(), any())
|
||||
broker.sharedServer.loader.removeAndClosePublisher(broker.brokerMetadataPublisher).get(1, TimeUnit.MINUTES)
|
||||
broker.metadataPublishers.remove(broker.brokerMetadataPublisher)
|
||||
broker.sharedServer.loader.installPublishers(List(publisher).asJava).get(1, TimeUnit.MINUTES)
|
||||
val admin = Admin.create(cluster.clientProperties())
|
||||
try {
|
||||
|
|
|
|||
Loading…
Reference in New Issue