You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hive.apache.org by "ASF GitHub Bot (Jira)" <ji...@apache.org> on 2021/05/03 10:43:00 UTC

[jira] [Work logged] (HIVE-24713) HS2 never knows deregistering from Zookeeper in the particular case

     [ https://issues.apache.org/jira/browse/HIVE-24713?focusedWorklogId=592109&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-592109 ]

ASF GitHub Bot logged work on HIVE-24713:
-----------------------------------------

                Author: ASF GitHub Bot
            Created on: 03/May/21 10:42
            Start Date: 03/May/21 10:42
    Worklog Time Spent: 10m 
      Work Description: EugeneChung commented on pull request #1932:
URL: https://github.com/apache/hive/pull/1932#issuecomment-831178569


   As indicated by Apache curator, https://github.com/apache/curator/blob/2b68d13f6d1e57e019ee19f96f047361c8b88516/curator-recipes/src/main/java/org/apache/curator/framework/recipes/nodes/PersistentNode.java#L81-L81 ,
   DeregisterWatcher must be registered again for any NodeDataChanged events.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Issue Time Tracking
-------------------

    Worklog Id:     (was: 592109)
    Time Spent: 1.5h  (was: 1h 20m)

> HS2 never knows deregistering from Zookeeper in the particular case
> -------------------------------------------------------------------
>
>                 Key: HIVE-24713
>                 URL: https://issues.apache.org/jira/browse/HIVE-24713
>             Project: Hive
>          Issue Type: Bug
>          Components: HiveServer2
>            Reporter: Eugene Chung
>            Assignee: Eugene Chung
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 4.0.0
>
>          Time Spent: 1.5h
>  Remaining Estimate: 0h
>
> While using zookeeper discovery mode, the problem that HS2 never knows deregistering from Zookeeper always happens.
> Reproduction is simple.
>  # Find one of the zk servers which holds the DeRegisterWatcher watches of HS2 instances. If the version of ZK server is 3.5.0 or above, it's easily found with [http://zk-server:8080/commands/watches] (ZK AdminServer feature)
>  # Check which HS2 instance is watching on the ZK server found at 1, say it's _hs2-of-2_
>  # Restart the ZK server found at 1
>  # Deregister _hs2-of-2_ with the command
> {noformat}
> hive --service hiveserver2 -deregister hs2-of-2{noformat}
>  # _hs2-of-2_ never knows that it must be shut down because the watch event of DeregisterWatcher was already fired at the time of 3.
> The reason of the problem is explained at [https://zookeeper.apache.org/doc/r3.3.3/zookeeperProgrammers.html#sc_WatchRememberThese]
> I added some logging to DeRegisterWatcher and checked what events were occurred at the time of 3(restarting of ZK server);
>  # WatchedEvent state:Disconnected type:None path:null
>  # WatchedEvent[WatchedEvent state:SyncConnected type:None path:null]
>  # WatchedEvent[WatchedEvent state:SaslAuthenticated type:None path:null]
>  # WatchedEvent[WatchedEvent state:SyncConnected type:NodeDataChanged
>  path:/hiveserver2/serverUri=hs2-of-2:10000;version=3.1.2;sequence=0000000711]
> As the zk manual says, watches are one-time triggers. When the connection to the ZK server was reestablished, state:SyncConnected type:NodeDataChanged for the path is fired and it's the end. *DeregisterWatcher must be registered again for the same znode to get a future NodeDeleted event.*



--
This message was sent by Atlassian Jira
(v8.3.4#803005)