Uploaded image for project: 'Hadoop HDFS'
  1. Hadoop HDFS
  2. HDFS-16826

[RBF SBN] ConnectionManager should advance the client stateId for every request

VotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Reviewed

    Description

      ConnectionManager should advance the client stateId for every request whatever pool is null or not.

       

      Bug Code as bellow:

      // Create the pool if not created before
      if (pool == null) {
        writeLock.lock();
        try {
          pool = this.pools.get(connectionId);
          if (pool == null) {
            pool = new ConnectionPool(
                this.conf, nnAddress, ugi, this.minSize, this.maxSize,
                this.minActiveRatio, protocol,
                new PoolAlignmentContext(this.routerStateIdContext, nsId));
            this.pools.put(connectionId, pool);
            this.connectionPoolToNamespaceMap.put(connectionId, nsId);
          }
          // BUG Here
          long clientStateId = RouterStateIdContext.getClientStateIdFromCurrentCall(nsId);
          pool.getPoolAlignmentContext().advanceClientStateId(clientStateId);
        } finally {
          writeLock.unlock();
        }
      } 

       

      Attachments

        Issue Links

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            xuzq_zander ZanderXu
            xuzq_zander ZanderXu
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment