Call For Vote: New Project Tsan

Jean Christophe Beyler jcbeyler at google.com
Wed Feb 13 23:32:01 UTC 2019


Hello,

I hereby propose the creation of the Tsan Project with Jean Christophe
Beyler as the Lead and the Serviceability Group as the sponsoring Group.

In accordance with the OpenJDK guidelines [1], the TSAN project would
provide a venue to explore and incubate a Thread SANitizing (TSAN) feature
that could be integrated into the Hotspot JVM and the JVM Tool Interface.
This includes working, evaluating, and incubating a Thread-Sanitizer
implementation [2] for Java.

The Google platform team has historically worked on a Thread SANitizing
(TSAN) project internally. Thread sanitizing allows Java users to see data
race conditions in their Java projects. It is used internally to
automatically detect and warn users of existing data races detected while
running user code. The TSAN project proposes to investigate, in the open,
how these changes could be made general enough to be pushed into the
mainline, or should be dropped due to being too specific or could be done
using other existing mechanisms. The project would not be a Google-only
project and will have a mailing list to discuss and potentially accept any
contribution trying to extend and/or enhance the TSAN implementation.

The evaluation criteria for the TSAN implementation includes but would not
be limited to:
     * Performance: not adding overhead to non-tsan runs is paramount and
there are various means to do so
     * General usefulness for the community at large so that the TSAN
feature is deemed a good feature to have

If the TSAN implementation becomes stable and is deemed useful enough, the
TSAN project would shepherd the work in one or more JEPs to integrate TSAN
into the mainline of OpenJDK.

The Tsan project scope was discussed during the call for discussion for the
Atlantis project [3]. It was determined that the Atlantis project's scope
was not well defined and it would be better to start with a separate Tsan
project with an end goal and better determined boundaries.

The current suggested initial Reviewers and Committers would be but is most
likely not going to be limited to (alphabetical order of first name):
* Alex Menkov (amenkov)
* Chuck Rasbold (rasbold)
* Daniil Titov (dtitov)
* Jean Christophe Beyler (jcbeyler)
* Liam Cushon (cushon)
* Serguei Spitsyn  (sspitsyn)


Votes are due by Wednesday 27, 23:59 pm Pacific Time.

Only current OpenJDK Members [3] are eligible to vote on this motion.
Votes must be cast in the open on the discuss list. Replying to this
message is sufficient if your mail program honors the Reply-To header.

For Lazy Consensus voting instructions, see [5].

Thanks,
Jc

[1] http://openjdk.java.net/projects/#new-project
[2] https://bugs.openjdk.java.net/browse/JDK-8208520
[3]
https://mail.openjdk.java.net/pipermail/discuss/2018-November/004904.html
[4] http://openjdk.java.net/census#members
[5] http://openjdk.java.net/projects/#new-project-vote


More information about the discuss mailing list