You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@zookeeper.apache.org by "Alan Bateman (Jira)" <ji...@apache.org> on 2022/01/28 08:14:00 UTC

[jira] [Created] (ZOOKEEPER-4460) QuorumPeer overrides Thread.getId with different semantics

Alan Bateman created ZOOKEEPER-4460:
---------------------------------------

             Summary: QuorumPeer overrides Thread.getId with different semantics
                 Key: ZOOKEEPER-4460
                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-4460
             Project: ZooKeeper
          Issue Type: Bug
          Components: server
            Reporter: Alan Bateman


In OpenJDK, Project Loom has significantly re-implemented java.lang.Thread. One part of this is using some of the bits in the thread identifier for non-exposed purposes. Sadly, Thread::getId is not final and it's possible that sub-classes of Thread have overridden getId to have different semantics. The JDK can defend against this but there may be 3rd party libraries that make use of Thread::getId. A corpus search of Maven central found only one class: org.apache.zookeeper.server.quorum.QuorumPeer. Does this project know why getId has been overridden to return something that is not the thread identifier?



--
This message was sent by Atlassian Jira
(v8.20.1#820001)