You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@mesos.apache.org by "Andrei Sekretenko (Jira)" <ji...@apache.org> on 2020/06/30 19:19:00 UTC

[jira] [Commented] (MESOS-10134) Race between concurrent `javah` runs trying to create `java/jni` output directory.

    [ https://issues.apache.org/jira/browse/MESOS-10134?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17148918#comment-17148918 ] 

Andrei Sekretenko commented on MESOS-10134:
-------------------------------------------

The root cause is a race for creating an output directory between concurrent instances of `javah`:
https://github.com/fengjiachun/javac/blob/bbeee4adc8a98b2d226efaa7002e8682f2b5656c/Compiler_javac/src/main/java/com/sun/tools/javah/JavahTask.java#L483

{noformat}
commit 9d68993c77b621c7e88dcdcef1b383d94d7362c7 (HEAD -> master, origin/master, origin/HEAD)
Author: Andrei Sekretenko <as...@apache.org>
Date:   Wed May 27 13:04:02 2020 +0200

    Added a workaround for `javah -d java/jni` race for creating `java/jni`.
    
    This is a workaround for the race between concurrent runs of `javah`
    trying to create the same output directory.
    
    Review: https://reviews.apache.org/r/72549
{noformat}

{noformat}
commit 00f78dfeb3f23897aa0e68c9a124712ed1c0b65e (origin/1.10.x, 1.10.x)
Author: Andrei Sekretenko <as...@apache.org>
Date:   Wed May 27 13:04:02 2020 +0200

    Added a workaround for `javah -d java/jni` race for creating `java/jni`.
    
    This is a workaround for the race between concurrent runs of `javah`
    trying to create the same output directory.
    
    Review: https://reviews.apache.org/r/72549
{noformat}

{noformat}
commit c4f012f4fb82d38894c4a33e05de127f4788db02 (origin/1.9.x, 1.9.x)
Author: Andrei Sekretenko <as...@apache.org>
Date:   Wed May 27 13:04:02 2020 +0200

    Added a workaround for `javah -d java/jni` race for creating `java/jni`.
    
    This is a workaround for the race between concurrent runs of `javah`
    trying to create the same output directory.
    
    Review: https://reviews.apache.org/r/72549
{noformat}

{noformat}
commit b5a0168dcf6b912de8eb479472be344351a4c4e1 (origin/1.8.x, 1.8.x)
Author: Andrei Sekretenko <as...@apache.org>
Date:   Wed May 27 13:04:02 2020 +0200

    Added a workaround for `javah -d java/jni` race for creating `java/jni`.
    
    This is a workaround for the race between concurrent runs of `javah`
    trying to create the same output directory.
    
    Review: https://reviews.apache.org/r/72549
{noformat}

{noformat}
commit c5703109b49d1f663678cbc31d7967b9480094d9 (origin/1.7.x, 1.7.x)
Author: Andrei Sekretenko <as...@apache.org>
Date:   Wed May 27 13:04:02 2020 +0200

    Added a workaround for `javah -d java/jni` race for creating `java/jni`.
    
    This is a workaround for the race between concurrent runs of `javah`
    trying to create the same output directory.
    
    Review: https://reviews.apache.org/r/72549
{noformat}

> Race between concurrent `javah` runs trying to create `java/jni` output directory.
> ----------------------------------------------------------------------------------
>
>                 Key: MESOS-10134
>                 URL: https://issues.apache.org/jira/browse/MESOS-10134
>             Project: Mesos
>          Issue Type: Bug
>          Components: build
>    Affects Versions: 1.10.0
>            Reporter: Andrei Sekretenko
>            Assignee: Andrei Sekretenko
>            Priority: Minor
>
> Observed by [~vinodkone] in the ASF CI:
> {noformat}
> [debug] execute contextualize
> /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-1.el7_6.x86_64/bin/javah -d java/jni                              \
>   -classpath java/target/mesos-1.10.0.jar:/tmp/SRC/build/mesos-1.10.0/_build/src/java/target/protobuf-java-3.5.0.jar                        \
>    org.apache.mesos.Log
> /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-1.el7_6.x86_64/bin/javah -d java/jni                              \
>   -classpath java/target/mesos-1.10.0.jar:/tmp/SRC/build/mesos-1.10.0/_build/src/java/target/protobuf-java-3.5.0.jar                        \
>    org.apache.mesos.MesosExecutorDriver
> /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-1.el7_6.x86_64/bin/javah -d java/jni                              \
>   -classpath java/target/mesos-1.10.0.jar:/tmp/SRC/build/mesos-1.10.0/_build/src/java/target/protobuf-java-3.5.0.jar                        \
>    org.apache.mesos.MesosSchedulerDriver
> /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-1.el7_6.x86_64/bin/javah -d java/jni                              \
>   -classpath java/target/mesos-1.10.0.jar:/tmp/SRC/build/mesos-1.10.0/_build/src/java/target/protobuf-java-3.5.0.jar                        \
>    org.apache.mesos.state.AbstractState
> /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-1.el7_6.x86_64/bin/javah -d java/jni                              \
>   -classpath java/target/mesos-1.10.0.jar:/tmp/SRC/build/mesos-1.10.0/_build/src/java/target/protobuf-java-3.5.0.jar                        \
>    org.apache.mesos.state.LevelDBState
> /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-1.el7_6.x86_64/bin/javah -d java/jni                              \
>   -classpath java/target/mesos-1.10.0.jar:/tmp/SRC/build/mesos-1.10.0/_build/src/java/target/protobuf-java-3.5.0.jar                        \
>    org.apache.mesos.state.LogState
> /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-1.el7_6.x86_64/bin/javah -d java/jni                              \
>   -classpath java/target/mesos-1.10.0.jar:/tmp/SRC/build/mesos-1.10.0/_build/src/java/target/protobuf-java-3.5.0.jar                        \
>    org.apache.mesos.state.Variable
> /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-1.el7_6.x86_64/bin/javah -d java/jni                              \
>   -classpath java/target/mesos-1.10.0.jar:/tmp/SRC/build/mesos-1.10.0/_build/src/java/target/protobuf-java-3.5.0.jar                        \
>    org.apache.mesos.state.ZooKeeperState
> /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-1.el7_6.x86_64/bin/javah -d java/jni                              \
>   -classpath java/target/mesos-1.10.0.jar:/tmp/SRC/build/mesos-1.10.0/_build/src/java/target/protobuf-java-3.5.0.jar                        \
>    org.apache.mesos.v1.scheduler.V1Mesos
> /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-1.el7_6.x86_64/bin/javah -d java/jni                              \
>   -classpath java/target/mesos-1.10.0.jar:/tmp/SRC/build/mesos-1.10.0/_build/src/java/target/protobuf-java-3.5.0.jar                        \
>    org.apache.mesos.v1.scheduler.V0Mesos
> Error: The directory java/jni could not be create for output.
> {noformat}



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