You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hive.apache.org by "Paul Yang (JIRA)" <ji...@apache.org> on 2012/05/03 02:53:48 UTC
[jira] [Created] (HIVE-3000) Potential infinite loop / log spew in
ZookeeperHiveLockManager
Paul Yang created HIVE-3000:
-------------------------------
Summary: Potential infinite loop / log spew in ZookeeperHiveLockManager
Key: HIVE-3000
URL: https://issues.apache.org/jira/browse/HIVE-3000
Project: Hive
Issue Type: Bug
Components: Locking
Affects Versions: 0.9.0
Reporter: Paul Yang
See ZookeeperHiveLockManger.lock()
If Zookeeper is in a bad state, it's possible to get an exception (e.g. org.apache.zookeeper.KeeperException$SessionExpiredException) when we call lockPrimitive(). There is a bug in the exception handler where the loop does not exit because the break in the switch statement gets out the switch, not the do..while loop. Because tryNum was not incremented due to the exception, lockPrimitive() will be called in an infinite loop, as fast as possible. Since the exception is printed for each call, Hive will produce significant log spew.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (HIVE-3000) Potential infinite loop / log spew in
ZookeeperHiveLockManager
Posted by "Phabricator (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HIVE-3000?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Phabricator updated HIVE-3000:
------------------------------
Attachment: HIVE-3000.D3063.1.patch
njain requested code review of "HIVE-3000 [jira] Potential infinite loop / log spew in ZookeeperHiveLockManager".
Reviewers: JIRA
https://issues.apache.org/jira/browse/HIVE-3000
HIVE-3000 infinite loop in ZooKeeperHiveLockManager
See ZookeeperHiveLockManger.lock()
If Zookeeper is in a bad state, it's possible to get an exception (e.g. org.apache.zookeeper.KeeperException$SessionExpiredException) when we call lockPrimitive(). There is a bug in the exception handler where the loop does not exit because the break in the switch statement gets out the switch, not the do..while loop. Because tryNum was not incremented due to the exception, lockPrimitive() will be called in an infinite loop, as fast as possible. Since the exception is printed for each call, Hive will produce significant log spew.
TEST PLAN
EMPTY
REVISION DETAIL
https://reviews.facebook.net/D3063
AFFECTED FILES
ql/src/java/org/apache/hadoop/hive/ql/lockmgr/zookeeper/ZooKeeperHiveLockManager.java
MANAGE HERALD DIFFERENTIAL RULES
https://reviews.facebook.net/herald/view/differential/
WHY DID I GET THIS EMAIL?
https://reviews.facebook.net/herald/transcript/6963/
Tip: use the X-Herald-Rules header to filter Herald messages in your client.
> Potential infinite loop / log spew in ZookeeperHiveLockManager
> --------------------------------------------------------------
>
> Key: HIVE-3000
> URL: https://issues.apache.org/jira/browse/HIVE-3000
> Project: Hive
> Issue Type: Bug
> Components: Locking
> Affects Versions: 0.9.0
> Reporter: Paul Yang
> Attachments: HIVE-3000.D3063.1.patch
>
>
> See ZookeeperHiveLockManger.lock()
> If Zookeeper is in a bad state, it's possible to get an exception (e.g. org.apache.zookeeper.KeeperException$SessionExpiredException) when we call lockPrimitive(). There is a bug in the exception handler where the loop does not exit because the break in the switch statement gets out the switch, not the do..while loop. Because tryNum was not incremented due to the exception, lockPrimitive() will be called in an infinite loop, as fast as possible. Since the exception is printed for each call, Hive will produce significant log spew.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (HIVE-3000) Potential infinite loop / log spew in
ZookeeperHiveLockManager
Posted by "Ashutosh Chauhan (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HIVE-3000?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ashutosh Chauhan updated HIVE-3000:
-----------------------------------
Fix Version/s: 0.10.0
> Potential infinite loop / log spew in ZookeeperHiveLockManager
> --------------------------------------------------------------
>
> Key: HIVE-3000
> URL: https://issues.apache.org/jira/browse/HIVE-3000
> Project: Hive
> Issue Type: Bug
> Components: Locking
> Affects Versions: 0.9.0
> Reporter: Paul Yang
> Fix For: 0.10.0
>
> Attachments: HIVE-3000.D3063.1.patch
>
>
> See ZookeeperHiveLockManger.lock()
> If Zookeeper is in a bad state, it's possible to get an exception (e.g. org.apache.zookeeper.KeeperException$SessionExpiredException) when we call lockPrimitive(). There is a bug in the exception handler where the loop does not exit because the break in the switch statement gets out the switch, not the do..while loop. Because tryNum was not incremented due to the exception, lockPrimitive() will be called in an infinite loop, as fast as possible. Since the exception is printed for each call, Hive will produce significant log spew.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (HIVE-3000) Potential infinite loop / log spew in
ZookeeperHiveLockManager
Posted by "Kevin Wilfong (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HIVE-3000?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Kevin Wilfong updated HIVE-3000:
--------------------------------
Resolution: Fixed
Status: Resolved (was: Patch Available)
Committed, thanks Namit.
> Potential infinite loop / log spew in ZookeeperHiveLockManager
> --------------------------------------------------------------
>
> Key: HIVE-3000
> URL: https://issues.apache.org/jira/browse/HIVE-3000
> Project: Hive
> Issue Type: Bug
> Components: Locking
> Affects Versions: 0.9.0
> Reporter: Paul Yang
> Attachments: HIVE-3000.D3063.1.patch
>
>
> See ZookeeperHiveLockManger.lock()
> If Zookeeper is in a bad state, it's possible to get an exception (e.g. org.apache.zookeeper.KeeperException$SessionExpiredException) when we call lockPrimitive(). There is a bug in the exception handler where the loop does not exit because the break in the switch statement gets out the switch, not the do..while loop. Because tryNum was not incremented due to the exception, lockPrimitive() will be called in an infinite loop, as fast as possible. Since the exception is printed for each call, Hive will produce significant log spew.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (HIVE-3000) Potential infinite loop / log spew
in ZookeeperHiveLockManager
Posted by "Namit Jain (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HIVE-3000?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13269125#comment-13269125 ]
Namit Jain commented on HIVE-3000:
----------------------------------
https://reviews.facebook.net/D3063
> Potential infinite loop / log spew in ZookeeperHiveLockManager
> --------------------------------------------------------------
>
> Key: HIVE-3000
> URL: https://issues.apache.org/jira/browse/HIVE-3000
> Project: Hive
> Issue Type: Bug
> Components: Locking
> Affects Versions: 0.9.0
> Reporter: Paul Yang
> Attachments: HIVE-3000.D3063.1.patch
>
>
> See ZookeeperHiveLockManger.lock()
> If Zookeeper is in a bad state, it's possible to get an exception (e.g. org.apache.zookeeper.KeeperException$SessionExpiredException) when we call lockPrimitive(). There is a bug in the exception handler where the loop does not exit because the break in the switch statement gets out the switch, not the do..while loop. Because tryNum was not incremented due to the exception, lockPrimitive() will be called in an infinite loop, as fast as possible. Since the exception is printed for each call, Hive will produce significant log spew.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (HIVE-3000) Potential infinite loop / log spew in
ZookeeperHiveLockManager
Posted by "Namit Jain (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HIVE-3000?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Namit Jain updated HIVE-3000:
-----------------------------
Status: Patch Available (was: Open)
> Potential infinite loop / log spew in ZookeeperHiveLockManager
> --------------------------------------------------------------
>
> Key: HIVE-3000
> URL: https://issues.apache.org/jira/browse/HIVE-3000
> Project: Hive
> Issue Type: Bug
> Components: Locking
> Affects Versions: 0.9.0
> Reporter: Paul Yang
> Attachments: HIVE-3000.D3063.1.patch
>
>
> See ZookeeperHiveLockManger.lock()
> If Zookeeper is in a bad state, it's possible to get an exception (e.g. org.apache.zookeeper.KeeperException$SessionExpiredException) when we call lockPrimitive(). There is a bug in the exception handler where the loop does not exit because the break in the switch statement gets out the switch, not the do..while loop. Because tryNum was not incremented due to the exception, lockPrimitive() will be called in an infinite loop, as fast as possible. Since the exception is printed for each call, Hive will produce significant log spew.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Assigned] (HIVE-3000) Potential infinite loop / log spew in
ZookeeperHiveLockManager
Posted by "Ashutosh Chauhan (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HIVE-3000?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ashutosh Chauhan reassigned HIVE-3000:
--------------------------------------
Assignee: Namit Jain
> Potential infinite loop / log spew in ZookeeperHiveLockManager
> --------------------------------------------------------------
>
> Key: HIVE-3000
> URL: https://issues.apache.org/jira/browse/HIVE-3000
> Project: Hive
> Issue Type: Bug
> Components: Locking
> Affects Versions: 0.9.0
> Reporter: Paul Yang
> Assignee: Namit Jain
> Fix For: 0.10.0
>
> Attachments: HIVE-3000.D3063.1.patch
>
>
> See ZookeeperHiveLockManger.lock()
> If Zookeeper is in a bad state, it's possible to get an exception (e.g. org.apache.zookeeper.KeeperException$SessionExpiredException) when we call lockPrimitive(). There is a bug in the exception handler where the loop does not exit because the break in the switch statement gets out the switch, not the do..while loop. Because tryNum was not incremented due to the exception, lockPrimitive() will be called in an infinite loop, as fast as possible. Since the exception is printed for each call, Hive will produce significant log spew.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (HIVE-3000) Potential infinite loop / log spew
in ZookeeperHiveLockManager
Posted by "Phabricator (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HIVE-3000?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13269129#comment-13269129 ]
Phabricator commented on HIVE-3000:
-----------------------------------
kevinwilfong has accepted the revision "HIVE-3000 [jira] Potential infinite loop / log spew in ZookeeperHiveLockManager".
+1 Looks good, running tests.
REVISION DETAIL
https://reviews.facebook.net/D3063
BRANCH
svn
> Potential infinite loop / log spew in ZookeeperHiveLockManager
> --------------------------------------------------------------
>
> Key: HIVE-3000
> URL: https://issues.apache.org/jira/browse/HIVE-3000
> Project: Hive
> Issue Type: Bug
> Components: Locking
> Affects Versions: 0.9.0
> Reporter: Paul Yang
> Attachments: HIVE-3000.D3063.1.patch
>
>
> See ZookeeperHiveLockManger.lock()
> If Zookeeper is in a bad state, it's possible to get an exception (e.g. org.apache.zookeeper.KeeperException$SessionExpiredException) when we call lockPrimitive(). There is a bug in the exception handler where the loop does not exit because the break in the switch statement gets out the switch, not the do..while loop. Because tryNum was not incremented due to the exception, lockPrimitive() will be called in an infinite loop, as fast as possible. Since the exception is printed for each call, Hive will produce significant log spew.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (HIVE-3000) Potential infinite loop / log spew
in ZookeeperHiveLockManager
Posted by "Hudson (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HIVE-3000?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13270114#comment-13270114 ]
Hudson commented on HIVE-3000:
------------------------------
Integrated in Hive-trunk-h0.21 #1417 (See [https://builds.apache.org/job/Hive-trunk-h0.21/1417/])
HIVE-3000 Potential infinite loop / log spew in ZookeeperHiveLockManager (njain via kevinwilfong) (Revision 1335106)
Result = FAILURE
kevinwilfong : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1335106
Files :
* /hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/lockmgr/zookeeper/ZooKeeperHiveLockManager.java
> Potential infinite loop / log spew in ZookeeperHiveLockManager
> --------------------------------------------------------------
>
> Key: HIVE-3000
> URL: https://issues.apache.org/jira/browse/HIVE-3000
> Project: Hive
> Issue Type: Bug
> Components: Locking
> Affects Versions: 0.9.0
> Reporter: Paul Yang
> Assignee: Namit Jain
> Fix For: 0.10.0
>
> Attachments: HIVE-3000.D3063.1.patch
>
>
> See ZookeeperHiveLockManger.lock()
> If Zookeeper is in a bad state, it's possible to get an exception (e.g. org.apache.zookeeper.KeeperException$SessionExpiredException) when we call lockPrimitive(). There is a bug in the exception handler where the loop does not exit because the break in the switch statement gets out the switch, not the do..while loop. Because tryNum was not incremented due to the exception, lockPrimitive() will be called in an infinite loop, as fast as possible. Since the exception is printed for each call, Hive will produce significant log spew.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira