Hi.

I think I found the culprit for StreamsTest failure. It happens in
agent mode - jtreg launches agent vm and starts reading child's
process input and output[1]. This happens in a separate thread.
DoAction[2] reads the captured data and feeds it into the test
result[3]. This is a race condition - the thread[1] might not start in
time to read the output, or the reader thread might hand off data too
late, causing missing or misplaced log lines. I have raised an
upstream bug[4] and will try to come up with a patch.

Best Regards,
 Vladimir.

[1] 
https://github.com/openjdk/jtreg/blob/34ccc66ec89651637811678a17d3f810b4ac0780/src/share/classes/com/sun/javatest/regtest/exec/Agent.java#L189
[2] 
https://github.com/openjdk/jtreg/blob/34ccc66ec89651637811678a17d3f810b4ac0780/src/share/classes/com/sun/javatest/regtest/exec/Agent.java#L385
[3] 
https://github.com/openjdk/jtreg/blob/34ccc66ec89651637811678a17d3f810b4ac0780/src/share/classes/com/sun/javatest/regtest/exec/Agent.java#L412C13-L412C34
[4] https://bugs.openjdk.org/browse/CODETOOLS-7904101

On Fri, Oct 10, 2025 at 4:15 PM tony mancill <[email protected]> wrote:
>
> In 50 more builds of the patched version -3 I observed 6 failures.
> All of them were the same failure in StreamsTest:
>
> jtreg8_8+2+ds1-3_amd64-2025-10-09T01:03:31Z.build:make[2]: *** 
> [../test/streams/StreamsTest.gmk:38: 
> /build/reproducible-path/jtreg8-8+2+ds1/build/test/StreamsTest.agentvm.ok] 
> Error 1
>
> On Wed, Oct 08, 2025 at 02:35:57PM +0000, tony mancill wrote:
> > I believe that could be a different root cause.  I will attempt the AWS
> > builds with your patched build.
> >
> > Thank you for the update.
> >
> > Cheers,
> > tony
> >
> > On Wed, Oct 08, 2025 at 08:37:17PM +1300, Vladimir Petko wrote:
> > > Hi,
> > >
> > > Unfortunately it did not work - the build eventually failed with:
> > > -----
> > > ACTION: main -- Failed. Execution failed: `main' threw exception:
> > > java.lang.ClassFormatError: Truncated class file
> > > REASON: User specified action: run main/native NativesOK
> > > TIME:   0.053 seconds
> > > -----
> > >
> > > Best Regards,
> > >  Vladimir.
> > >
> > > On Wed, Oct 8, 2025 at 7:27 PM Vladimir Petko
> > > <[email protected]> wrote:
> > > >
> > > > Hi,
> > > >
> > > > I have made a patch to synchronize the filesystem after each jtreg
> > > > command[1]. I am building it in a loop in lxc container and so far the
> > > > build has not failed. Would it be possible to check if it works in
> > > > the AWS environment?
> > > >
> > > > Best Regards,
> > > >  Vladimir.
> > > >
> > > > [1] https://salsa.debian.org/java-team/jtreg8/-/merge_requests/3
> > > >
> > > > On Mon, Oct 6, 2025 at 7:35 AM tony mancill <[email protected]> wrote:
> > > > >
> > > > > On Sun, Oct 05, 2025 at 01:06:01PM +0200, Matthias Klose wrote:
> > > > > > Control: severity -1 important
> > > > > >
> > > > > > lowering the severity, not reproducible in local builds.
> > > > >
> > > > > I am able to reproduce the build failure in approximately 10% of 
> > > > > builds
> > > > > in a clean sid chroot on a 2-vCPU VM in AWS:
> > > > >
> > > > > ~/jtreg8$ grep -e ^Status: -e ^Fail-Stage: *_amd64-*.build  | grep 
> > > > > :Status | awk '{print $2}'|  sort | uniq -c
> > > > >       6 attempted
> > > > >      59 successful
> > > > >
> > > > > You can view the build logs here:
> > > > >
> > > > > https://people.debian.org/~tmancill/jtreg8-1115694/jtreg_1115694_build_failures.tgz
> > > > >
> > > > > I haven't had a chance to dig into failure, but it could be in
> > > > > StreamsTest.gmk:
> > > > >
> > > > > jtreg8_8+2+ds1-2_amd64-2025-10-02T15:31:29Z.build:make[2]: *** 
> > > > > [../test/streams/StreamsTest.gmk:37: 
> > > > > /build/reproducible-path/jtreg8-8+2+ds1/build/test/StreamsTest.agentvm.ok]
> > > > >  Error 1
> > > > > jtreg8_8+2+ds1-2_amd64-2025-10-02T17:51:21Z.build:make[2]: *** 
> > > > > [../test/streams/StreamsTest.gmk:37: 
> > > > > /build/reproducible-path/jtreg8-8+2+ds1/build/test/StreamsTest.agentvm.ok]
> > > > >  Error 1
> > > > > jtreg8_8+2+ds1-2_amd64-2025-10-03T00:17:03Z.build:make[2]: *** 
> > > > > [../test/streams/StreamsTest.gmk:37: 
> > > > > /build/reproducible-path/jtreg8-8+2+ds1/build/test/StreamsTest.agentvm.ok]
> > > > >  Error 1
> > > > > jtreg8_8+2+ds1-2_amd64-2025-10-03T00:26:59Z.build:make[2]: *** 
> > > > > [../test/streams/StreamsTest.gmk:38: 
> > > > > /build/reproducible-path/jtreg8-8+2+ds1/build/test/StreamsTest.agentvm.ok]
> > > > >  Error 1
> > > > > jtreg8_8+2+ds1-2_amd64-2025-10-03T15:54:01Z.build:make[2]: *** 
> > > > > [../test/streams/StreamsTest.gmk:38: 
> > > > > /build/reproducible-path/jtreg8-8+2+ds1/build/test/StreamsTest.agentvm.ok]
> > > > >  Error 1
> > > > > jtreg8_8+2+ds1-2_amd64-2025-10-03T16:51:16Z.build:make[2]: *** 
> > > > > [../test/streams/StreamsTest.gmk:37: 
> > > > > /build/reproducible-path/jtreg8-8+2+ds1/build/test/StreamsTest.agentvm.ok]
> > > > >  Error 1
> > > > >
> > > > > Thanks,
> > > > > tony

Reply via email to