[ 
https://issues.apache.org/jira/browse/HDFS-16876?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Simbarashe Dzinamarira updated HDFS-16876:
------------------------------------------
    Description: 
When cleaning up stale connection pools, the ConnectionManager also removes the 
associated namespaceStateId from the shared map in the RouterStateIdContext. 
This is incorrect because this namespaceStateId may still be referenced by 
other connection pools.

The consequences of this premature removal include
 * No FederatedRouterState being sent back to clients.
 * PoolAlignmentContext objects keeping references to namespaceStateIds that 
aren't in the shared map.

[https://github.com/apache/hadoop/blob/trunk/hadoop-hdfs-project/hadoop-hdfs-rbf/src/main/java/org/apache/hadoop/hdfs/server/federation/router/ConnectionManager.java#L457]

  was:
When cleaning up stale connection pools, the ConnectionManager also removes the 
associated namespaceStateId from the shared map in the RouterStateIdContext. 
This is incorrect because this namespaceStateId may still be referenced by 
other connection pools.

The consequences of this premature removal include
 * No FederatedRouterState being sent back to clients.
 * PoolAlignmentContext objects keeping references to namespaceStateIds that's 
aren't in the shared map.

https://github.com/apache/hadoop/blob/trunk/hadoop-hdfs-project/hadoop-hdfs-rbf/src/main/java/org/apache/hadoop/hdfs/server/federation/router/ConnectionManager.java#L457


> ConnectionManager should not remove namespaceStateIds from the shared 
> RouterStateIdContext during pool cleanup.
> ---------------------------------------------------------------------------------------------------------------
>
>                 Key: HDFS-16876
>                 URL: https://issues.apache.org/jira/browse/HDFS-16876
>             Project: Hadoop HDFS
>          Issue Type: Bug
>          Components: rbf
>            Reporter: Simbarashe Dzinamarira
>            Assignee: Simbarashe Dzinamarira
>            Priority: Critical
>
> When cleaning up stale connection pools, the ConnectionManager also removes 
> the associated namespaceStateId from the shared map in the 
> RouterStateIdContext. This is incorrect because this namespaceStateId may 
> still be referenced by other connection pools.
> The consequences of this premature removal include
>  * No FederatedRouterState being sent back to clients.
>  * PoolAlignmentContext objects keeping references to namespaceStateIds that 
> aren't in the shared map.
> [https://github.com/apache/hadoop/blob/trunk/hadoop-hdfs-project/hadoop-hdfs-rbf/src/main/java/org/apache/hadoop/hdfs/server/federation/router/ConnectionManager.java#L457]



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org

Reply via email to