[
https://issues.apache.org/jira/browse/KAFKA-9190?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jason Gustafson reassigned KAFKA-9190:
--------------------------------------
Assignee: Ron Dagostino (was: Jason Gustafson)
> Server leaves connections with expired authentication sessions open
> --------------------------------------------------------------------
>
> Key: KAFKA-9190
> URL: https://issues.apache.org/jira/browse/KAFKA-9190
> Project: Kafka
> Issue Type: Bug
> Reporter: Jason Gustafson
> Assignee: Ron Dagostino
> Priority: Major
>
> SocketServer implements some logic to disconnect connections which have
> expired authentication sessions. At the moment, we just call
> `SelectionKey.cancel` in order to trigger this disconnect. I think the
> expectation is that this causes the channel to be closed on the next `poll`,
> but as far as I can tell, all it does is disassociate the selection key from
> the selector. This means that the key never gets selected again and we never
> close the connection until the client times out.
> This was found when debugging the flaky test failure
> `EndToEndAuthorizationTest.testNoDescribeProduceOrConsumeWithoutTopicDescribeAcl`.
> I modified the code to call `Selector.close` instead of
> `TransportLayer.disconnect`. I was able to reproduce the session
> authentication expiration, but the connection properly closes and the test
> does no longer times out.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)