Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Test runner fails with stack overflow on -Djava.security.debug=access,failure #11609

Closed
dweiss opened this issue Dec 6, 2019 · 16 comments · Fixed by #15634
Closed

Test runner fails with stack overflow on -Djava.security.debug=access,failure #11609

dweiss opened this issue Dec 6, 2019 · 16 comments · Fixed by #15634

Comments

@dweiss
Copy link

dweiss commented Dec 6, 2019

When you're working with security policies it's often the case that there is a need to debug the policy file by passing:

java.security.debug=access,failure

This emits tons of information to the console. Gradle runner stumbles on this one though. I suspect the problem is that console is redirected somehow (didn't check the code) and the code that emits messages recursively writes more messages (security-stack related).

Now... I know solving this is hard because I implemented a test runner for Lucene (randomizedtesting) and the only solution to dump all kinds of forked JVM console information (including security stuff or the logs potentially dumped by the JVM bootstrap even before classes are initialized) was to redirect the forked process output entirely to a separate temporary file and have a separate communication channel (socket-based or otherwise) for passing messages to the master process. The master tails the output if it needs to display or capture it anyhow. The test runner class can capture the length of the output file so that boundaries of output emitted for each test can be properly captured.

The benefit of doing this is also that writing to the console is asynchronous from anything else and doesn't rely on it.

@jjohannes
Copy link
Contributor

jjohannes commented Mar 27, 2020

@dweiss could you please provide a reproducible example for this problem?

If I do this in a simple project with a test and configure it like this:

test {
    systemProperty('java.security.debug', 'access,failure')
}

Then it works fine.

@dweiss
Copy link
Author

dweiss commented Mar 27, 2020 via email

@dweiss
Copy link
Author

dweiss commented Mar 30, 2020

Get Lucene code, master branch:

git clone https://gitbox.apache.org/repos/asf/lucene-solr.git

I'm at commit 5c2011a6fb7d3c833.

Then try this - it only runs a single test class and will work:

gradlew -p lucene/core cleanTest test -Ptests.seed=deadbeef --tests TestIndexWriterWithThreads

Now try to enable security logging:

gradlew -p lucene/core cleanTest test -Ptests.seed=deadbeef --tests TestIndexWriterWithThreads -Ptests.jvmargs=-Djava.security.debug=access,failure

and it all crashes fairly quickly. The exact exception will vary; I received this one on the first call:

Exception: java.lang.StackOverflowError thrown from the UncaughtExceptionHandler in thread "main"

Unexpected exception thrown.
org.gradle.internal.remote.internal.MessageIOException: Could not write '/127.0.0.1:58063'.
        at org.gradle.internal.remote.internal.inet.SocketConnection.flush(SocketConnection.java:140)
        at org.gradle.internal.remote.internal.hub.MessageHub$ConnectionDispatch.run(MessageHub.java:331)
        at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
        at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
        at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56)
        at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: java.io.IOException: An existing connection was forcibly closed by the remote host
        at java.base/sun.nio.ch.SocketDispatcher.write0(Native Method)
        at java.base/sun.nio.ch.SocketDispatcher.write(SocketDispatcher.java:51)
        at java.base/sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:113)
        at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:58)
        at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:50)
        at java.base/sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:466)
        at org.gradle.internal.remote.internal.inet.SocketConnection$SocketOutputStream.writeWithNonBlockingRetry(SocketConnection.java:279)
        at org.gradle.internal.remote.internal.inet.SocketConnection$SocketOutputStream.writeBufferToChannel(SocketConnection.java:267)
        at org.gradle.internal.remote.internal.inet.SocketConnection$SocketOutputStream.flush(SocketConnection.java:261)
        at org.gradle.internal.remote.internal.inet.SocketConnection.flush(SocketConnection.java:138)
        ... 7 more

@dweiss
Copy link
Author

dweiss commented Mar 30, 2020

Let me know if you need anything else, @jjohannes . Another issue we would quite love to see in gradle is better load balancing in the test runner. This has been discussed in other issues (#2669).

Thank you for your willingness to help out! If you need any more info please use Lucene dev mailing list or e-mail me directly.

@ljacomet
Copy link
Member

ljacomet commented May 4, 2020

The team currently does not have the bandwidth even though there is a reproducer. Initial investigations did not show anything obvious.

If this is blocking and you get the bandwidth to pinpoint the issue more precisely, this could be reconsidered.

@dweiss
Copy link
Author

dweiss commented May 4, 2020

bq. Initial investigations did not show anything obvious.

What's happening is pretty obvious - it's a recursive loop caused by security manager/output stream capture. The fix isn't obvious -- I agree here. The only solution that would work is to redirect sub-process streams to an external file(s) and tail them from the parent process (to detect changes/ appended output).

This is a blocker in the sense that there is no way around it. The fraction of people affected is teeny-tiny though (expert JVM users).

@rjernst
Copy link
Contributor

rjernst commented Dec 12, 2020

I've created a simple reproduction of this issue: https://github.com/rjernst/gradle-test/tree/d1738c117131170d8fc3bf3d4ec91560e885f091
Running gradle test there will fail with a stack overflow. If you remove the debug systemProperty set in build.gradle, the test passes.

Also of note is @mark-vieira did a diagnosis of this issue a while ago (elastic/elasticsearch#41213 (comment)). It seems to be related to gradle logging recursively triggering security checks for getting the line ending system property.

@dweiss
Copy link
Author

dweiss commented Dec 13, 2020

Hi @rjernst ! I've been there when working on randomized testing test runner. I don't think you can reasonably intercept the sysout from a subprocess running with all security logging enabled if you mess with those standard streams on Java side... There was always something that caused a problem - infinite recursion with security manager calls is one thing, local stack-overflows is another (when the test's thread is near the edge of the stack and tries to sysout a message somewhere, then the infrastructure that substitutes System.out/System.err actually does go overboard and throws stack overflow exception).

The least intrusive way (and most robust way) of capturing all of subprocess output was to redirect output streams to a file (upon creation) and then tail that file externally from the runner. Then the subprocess is free to do whatever it wants, all of the output is captured (including internal JVM logs) and no code is needed on the forked code side to intercept or redelegate the output.

@dweiss
Copy link
Author

dweiss commented Feb 10, 2021

I ran Ryan's repro and it worked for me with gradle master, thank you.

@dweiss
Copy link
Author

dweiss commented Apr 7, 2021

Correction - this is still an issue. While Ryan's repro works, a larger test fails. For example, see my Lucene repro:

gradlew -p lucene/core cleanTest test -Ptests.seed=deadbeef --tests TestIndexWriterWithThreads -Ptests.jvmargs=-Djava.security.debug=access,failure

This almost works... until it breaks:

...
access: access allowed ("java.util.logging.LoggingPermission" "control")
access: access allowed ("java.util.logging.LoggingPermission" "control")
access: access allowed ("java.lang.RuntimePermission" "setIO")
access: access allowed ("java.lang.RuntimePermission" "setIO")
access: access allowed ("java.lang.RuntimePermission" "setIO")

Exception: java.lang.StackOverflowError thrown from the UncaughtExceptionHandler in thread "main"

Unexpected exception thrown.
org.gradle.internal.remote.internal.MessageIOException: Could not write '/127.0.0.1:54520'.
        at org.gradle.internal.remote.internal.inet.SocketConnection.flush(SocketConnection.java:140)
        at org.gradle.internal.remote.internal.hub.MessageHub$ConnectionDispatch.run(MessageHub.java:333)
        at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
        at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
        at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56)        at java.base/java.lang.Thread.run(Thread.java:832)
Caused by: java.io.IOException: Connection reset by peer
        at java.base/sun.nio.ch.SocketDispatcher.write0(Native Method)
        at java.base/sun.nio.ch.SocketDispatcher.write(SocketDispatcher.java:54)
        at java.base/sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:113)
        at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:58)
        at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:50)
        at java.base/sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:484)
        at org.gradle.internal.remote.internal.inet.SocketConnection$SocketOutputStream.writeWithNonBlockingRetry(SocketConnection.java:279)
        at org.gradle.internal.remote.internal.inet.SocketConnection$SocketOutputStream.writeBufferToChannel(SocketConnection.java:267)
        at org.gradle.internal.remote.internal.inet.SocketConnection$SocketOutputStream.flush(SocketConnection.java:261)
        at org.gradle.internal.remote.internal.inet.SocketConnection.flush(SocketConnection.java:138)
        ... 7 more

@breskeby
Copy link
Contributor

breskeby commented Apr 7, 2021

@dweiss damn it. I will look into this. This is weird, I mean its weird that it seems to work for the first outputs but then starts failing again...

@dweiss
Copy link
Author

dweiss commented Apr 8, 2021

@breskeby it's not an easy one to solve - I've been there. My experience is that if you do anything as much as touch System.out or System.err to try to wrap/redirect them, it's almost impossible to avoid infinite recursion somewhere - security audits are all over the place.

@breskeby
Copy link
Contributor

breskeby commented Apr 8, 2021

@dweiss the latest 7.1 snapshot (gradle master snapshot) is incompatible with the current lucene master. can you tell me which gradle version your snapshot was that you tested this with? The fix will only be shipped with gradle 7.0.

@dweiss
Copy link
Author

dweiss commented Apr 8, 2021

I think I had a dim moment there and tried with Lucene's wrapper (6.6.1)... No wonder it didn't work, eh? Let me retry with 7.0 once it's out - apologies for the noise.

@dweiss
Copy link
Author

dweiss commented Sep 1, 2021

Hello @breskeby . I'm sorry for the delay - took a while... Lucene is now on Gradle 7.2 and I can still reproduce the same problem as before. The repro remains the same:

gradlew -p lucene/core cleanTest test -Ptests.seed=deadbeef --tests TestIndexWriterWithThreads -Ptests.jvmargs=-Djava.security.debug=access,failure

This starts up pumping JVM output but then crashes quickly. You can see the infinite loop it runs into. Like I said in the issue, I don't think there is a reasonable way to fix that from the Java level, other than tailing an independent file stream from the subprocess. The security manager is scheduled for removal, so perhaps it's no longer as much of a pressing issue as it was before? Don't know.

org.gradle.internal.event.ListenerNotificationException: Failed to notify output event listener.
	at org.gradle.internal.event.AbstractBroadcastDispatch.dispatch(AbstractBroadcastDispatch.java:51)
	at org.gradle.internal.event.BroadcastDispatch$SingletonDispatch.dispatch(BroadcastDispatch.java:245)
	at org.gradle.internal.event.BroadcastDispatch$SingletonDispatch.dispatch(BroadcastDispatch.java:157)
	at org.gradle.internal.event.ListenerBroadcast.dispatch(ListenerBroadcast.java:141)
	at org.gradle.internal.event.ListenerBroadcast.dispatch(ListenerBroadcast.java:37)
	at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)
	at com.sun.proxy.$Proxy0.onOutput(Unknown Source)
	at org.gradle.internal.logging.sink.OutputEventTransformer.onOutput(OutputEventTransformer.java:104)
	at org.gradle.internal.logging.sink.OutputEventRenderer.onOutput(OutputEventRenderer.java:431)
	at org.gradle.internal.logging.sink.OutputEventListenerManager$1.onOutput(OutputEventListenerManager.java:36)
	at org.gradle.internal.logging.services.TextStreamOutputEventListener.onTextEvent(TextStreamOutputEventListener.java:58)
	at org.gradle.internal.logging.services.TextStreamOutputEventListener.onOutput(TextStreamOutputEventListener.java:42)
	at org.gradle.internal.logging.source.PrintStreamLoggingSystem$OutputEventDestination.onOutput(PrintStreamLoggingSystem.java:173)
	at org.gradle.internal.logging.source.PrintStreamLoggingSystem$1.text(PrintStreamLoggingSystem.java:45)
	at org.gradle.internal.io.LineBufferingOutputStream.flush(LineBufferingOutputStream.java:96)
	at org.gradle.internal.io.LineBufferingOutputStream.write(LineBufferingOutputStream.java:80)
	at java.base/java.io.OutputStream.write(OutputStream.java:162)
	at java.base/java.io.PrintStream.write(PrintStream.java:568)
	at java.base/sun.nio.cs.StreamEncoder.writeBytes(StreamEncoder.java:242)
	at java.base/sun.nio.cs.StreamEncoder.implFlushBuffer(StreamEncoder.java:321)
	at java.base/sun.nio.cs.StreamEncoder.flushBuffer(StreamEncoder.java:110)
	at java.base/java.io.OutputStreamWriter.flushBuffer(OutputStreamWriter.java:181)
	at java.base/java.io.PrintStream.write(PrintStream.java:699)
	at java.base/java.io.PrintStream.print(PrintStream.java:863)
	at org.gradle.internal.io.LinePerThreadBufferingOutputStream.println(LinePerThreadBufferingOutputStream.java:240)
	at java.base/sun.security.util.Debug.println(Debug.java:184)
	at java.base/java.security.AccessControlContext.checkPermission(AccessControlContext.java:478)
	at java.base/java.security.AccessController.checkPermission(AccessController.java:1036)
	at java.base/java.lang.SecurityManager.checkPermission(SecurityManager.java:408)
	at java.base/java.lang.reflect.AccessibleObject.checkPermission(AccessibleObject.java:92)
	at java.base/java.lang.reflect.Method.setAccessible(Method.java:189)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:35)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
	at org.gradle.internal.event.AbstractBroadcastDispatch.dispatch(AbstractBroadcastDispatch.java:43)
	at org.gradle.internal.event.BroadcastDispatch$SingletonDispatch.dispatch(BroadcastDispatch.java:245)
	at org.gradle.internal.event.BroadcastDispatch$SingletonDispatch.dispatch(BroadcastDispatch.java:157)
	at org.gradle.internal.event.ListenerBroadcast.dispatch(ListenerBroadcast.java:141)
	at org.gradle.internal.event.ListenerBroadcast.dispatch(ListenerBroadcast.java:37)
	at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)
	at com.sun.proxy.$Proxy0.onOutput(Unknown Source)
	at org.gradle.internal.logging.sink.OutputEventTransformer.onOutput(OutputEventTransformer.java:104)
	at org.gradle.internal.logging.sink.OutputEventRenderer.onOutput(OutputEventRenderer.java:431)
	at org.gradle.internal.logging.sink.OutputEventListenerManager$1.onOutput(OutputEventListenerManager.java:36)
	at org.gradle.internal.logging.services.TextStreamOutputEventListener.onTextEvent(TextStreamOutputEventListener.java:58)
	at org.gradle.internal.logging.services.TextStreamOutputEventListener.onOutput(TextStreamOutputEventListener.java:42)
	at org.gradle.internal.logging.source.PrintStreamLoggingSystem$OutputEventDestination.onOutput(PrintStreamLoggingSystem.java:173)
	at org.gradle.internal.logging.source.PrintStreamLoggingSystem$1.text(PrintStreamLoggingSystem.java:45)
	at org.gradle.internal.io.LineBufferingOutputStream.flush(LineBufferingOutputStream.java:96)
	at org.gradle.internal.io.LineBufferingOutputStream.write(LineBufferingOutputStream.java:80)
	at java.base/java.io.OutputStream.write(OutputStream.java:162)
	at java.base/java.io.PrintStream.write(PrintStream.java:568)
	at java.base/sun.nio.cs.StreamEncoder.writeBytes(StreamEncoder.java:242)
	at java.base/sun.nio.cs.StreamEncoder.implFlushBuffer(StreamEncoder.java:321)
	at java.base/sun.nio.cs.StreamEncoder.flushBuffer(StreamEncoder.java:110)
	at java.base/java.io.OutputStreamWriter.flushBuffer(OutputStreamWriter.java:181)
	at java.base/java.io.PrintStream.write(PrintStream.java:699)
	at java.base/java.io.PrintStream.print(PrintStream.java:863)
	at org.gradle.internal.io.LinePerThreadBufferingOutputStream.println(LinePerThreadBufferingOutputStream.java:240)
	at java.base/sun.security.util.Debug.println(Debug.java:184)
	at java.base/java.security.AccessControlContext.checkPermission(AccessControlContext.java:478)
	at java.base/java.security.AccessController.checkPermission(AccessController.java:1036)
	at java.base/java.lang.SecurityManager.checkPermission(SecurityManager.java:408)
	at java.base/java.lang.reflect.AccessibleObject.checkPermission(AccessibleObject.java:92)
	at java.base/java.lang.reflect.Method.setAccessible(Method.java:189)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:35)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
	at org.gradle.internal.event.AbstractBroadcastDispatch.dispatch(AbstractBroadcastDispatch.java:43)
	at org.gradle.internal.event.BroadcastDispatch$SingletonDispatch.dispatch(BroadcastDispatch.java:245)
	at org.gradle.internal.event.BroadcastDispatch$SingletonDispatch.dispatch(BroadcastDispatch.java:157)
	at org.gradle.internal.event.ListenerBroadcast.dispatch(ListenerBroadcast.java:141)
	at org.gradle.internal.event.ListenerBroadcast.dispatch(ListenerBroadcast.java:37)
	at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)
	at com.sun.proxy.$Proxy0.onOutput(Unknown Source)
	at org.gradle.internal.logging.sink.OutputEventTransformer.onOutput(OutputEventTransformer.java:104)
	at org.gradle.internal.logging.sink.OutputEventRenderer.onOutput(OutputEventRenderer.java:431)
	at org.gradle.internal.logging.sink.OutputEventListenerManager$1.onOutput(OutputEventListenerManager.java:36)
	at org.gradle.internal.logging.services.TextStreamOutputEventListener.onTextEvent(TextStreamOutputEventListener.java:58)
	at org.gradle.internal.logging.services.TextStreamOutputEventListener.onOutput(TextStreamOutputEventListener.java:42)
	at org.gradle.internal.logging.source.PrintStreamLoggingSystem$OutputEventDestination.onOutput(PrintStreamLoggingSystem.java:173)
	at org.gradle.internal.logging.source.PrintStreamLoggingSystem$1.text(PrintStreamLoggingSystem.java:45)
	at org.gradle.internal.io.LineBufferingOutputStream.flush(LineBufferingOutputStream.java:96)
	at org.gradle.internal.io.LineBufferingOutputStream.write(LineBufferingOutputStream.java:80)
	at java.base/java.io.OutputStream.write(OutputStream.java:162)
	at java.base/java.io.PrintStream.write(PrintStream.java:568)
	at java.base/sun.nio.cs.StreamEncoder.writeBytes(StreamEncoder.java:242)
	at java.base/sun.nio.cs.StreamEncoder.implFlushBuffer(StreamEncoder.java:321)
	at java.base/sun.nio.cs.StreamEncoder.flushBuffer(StreamEncoder.java:110)
	at java.base/java.io.OutputStreamWriter.flushBuffer(OutputStreamWriter.java:181)
	at java.base/java.io.PrintStream.write(PrintStream.java:699)
	at java.base/java.io.PrintStream.print(PrintStream.java:863)
	at org.gradle.internal.io.LinePerThreadBufferingOutputStream.println(LinePerThreadBufferingOutputStream.java:240)
	at java.base/sun.security.util.Debug.println(Debug.java:184)
	at java.base/java.security.AccessControlContext.checkPermission(AccessControlContext.java:478)
	at java.base/java.security.AccessController.checkPermission(AccessController.java:1036)
	at java.base/java.lang.SecurityManager.checkPermission(SecurityManager.java:408)
	at java.base/java.lang.reflect.AccessibleObject.checkPermission(AccessibleObject.java:92)
	at java.base/java.lang.reflect.Method.setAccessible(Method.java:189)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:35)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
	at org.gradle.internal.event.AbstractBroadcastDispatch.dispatch(AbstractBroadcastDispatch.java:43)
	at org.gradle.internal.event.BroadcastDispatch$SingletonDispatch.dispatch(BroadcastDispatch.java:245)
	at org.gradle.internal.event.BroadcastDispatch$SingletonDispatch.dispatch(BroadcastDispatch.java:157)
	at org.gradle.internal.event.ListenerBroadcast.dispatch(ListenerBroadcast.java:141)
	at org.gradle.internal.event.ListenerBroadcast.dispatch(ListenerBroadcast.java:37)
	at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)
	at com.sun.proxy.$Proxy0.onOutput(Unknown Source)
	at org.gradle.internal.logging.sink.OutputEventTransformer.onOutput(OutputEventTransformer.java:104)
	at org.gradle.internal.logging.sink.OutputEventRenderer.onOutput(OutputEventRenderer.java:431)
	at org.gradle.internal.logging.sink.OutputEventListenerManager$1.onOutput(OutputEventListenerManager.java:36)
	at org.gradle.internal.logging.services.TextStreamOutputEventListener.onTextEvent(TextStreamOutputEventListener.java:58)
	at org.gradle.internal.logging.services.TextStreamOutputEventListener.onOutput(TextStreamOutputEventListener.java:42)
	at org.gradle.internal.logging.source.PrintStreamLoggingSystem$OutputEventDestination.onOutput(PrintStreamLoggingSystem.java:173)
	at org.gradle.internal.logging.source.PrintStreamLoggingSystem$1.text(PrintStreamLoggingSystem.java:45)
	at org.gradle.internal.io.LineBufferingOutputStream.flush(LineBufferingOutputStream.java:96)
	at org.gradle.internal.io.LineBufferingOutputStream.write(LineBufferingOutputStream.java:80)
	at java.base/java.io.OutputStream.write(OutputStream.java:162)
	at java.base/java.io.PrintStream.write(PrintStream.java:568)
	at java.base/sun.nio.cs.StreamEncoder.writeBytes(StreamEncoder.java:242)
	at java.base/sun.nio.cs.StreamEncoder.implFlushBuffer(StreamEncoder.java:321)
	at java.base/sun.nio.cs.StreamEncoder.flushBuffer(StreamEncoder.java:110)
	at java.base/java.io.OutputStreamWriter.flushBuffer(OutputStreamWriter.java:181)
	at java.base/java.io.PrintStream.write(PrintStream.java:699)
	at java.base/java.io.PrintStream.print(PrintStream.java:863)
	at org.gradle.internal.io.LinePerThreadBufferingOutputStream.println(LinePerThreadBufferingOutputStream.java:240)
	at java.base/sun.security.util.Debug.println(Debug.java:184)
	at java.base/java.security.AccessControlContext.checkPermission(AccessControlContext.java:478)
	at java.base/java.security.AccessController.checkPermission(AccessController.java:1036)
	at java.base/java.lang.SecurityManager.checkPermission(SecurityManager.java:408)
	at java.base/java.lang.reflect.AccessibleObject.checkPermission(AccessibleObject.java:92)
	at java.base/java.lang.reflect.Method.setAccessible(Method.java:189)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:35)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
	at org.gradle.internal.event.AbstractBroadcastDispatch.dispatch(AbstractBroadcastDispatch.java:43)
	at org.gradle.internal.event.BroadcastDispatch$SingletonDispatch.dispatch(BroadcastDispatch.java:245)
	at org.gradle.internal.event.BroadcastDispatch$SingletonDispatch.dispatch(BroadcastDispatch.java:157)
	at org.gradle.internal.event.ListenerBroadcast.dispatch(ListenerBroadcast.java:141)
	at org.gradle.internal.event.ListenerBroadcast.dispatch(ListenerBroadcast.java:37)
	at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)
	at com.sun.proxy.$Proxy0.onOutput(Unknown Source)
	at org.gradle.internal.logging.sink.OutputEventTransformer.onOutput(OutputEventTransformer.java:104)
	at org.gradle.internal.logging.sink.OutputEventRenderer.onOutput(OutputEventRenderer.java:431)
	at org.gradle.internal.logging.sink.OutputEventListenerManager$1.onOutput(OutputEventListenerManager.java:36)
	at org.gradle.internal.logging.services.TextStreamOutputEventListener.onTextEvent(TextStreamOutputEventListener.java:58)
	at org.gradle.internal.logging.services.TextStreamOutputEventListener.onOutput(TextStreamOutputEventListener.java:42)
	at org.gradle.internal.logging.source.PrintStreamLoggingSystem$OutputEventDestination.onOutput(PrintStreamLoggingSystem.java:173)
	at org.gradle.internal.logging.source.PrintStreamLoggingSystem$1.text(PrintStreamLoggingSystem.java:45)
	at org.gradle.internal.io.LineBufferingOutputStream.flush(LineBufferingOutputStream.java:96)
	at org.gradle.internal.io.LineBufferingOutputStream.write(LineBufferingOutputStream.java:80)
	at java.base/java.io.OutputStream.write(OutputStream.java:162)
	at java.base/java.io.PrintStream.write(PrintStream.java:568)
	at java.base/sun.nio.cs.StreamEncoder.writeBytes(StreamEncoder.java:242)
	at java.base/sun.nio.cs.StreamEncoder.implFlushBuffer(StreamEncoder.java:321)
	at java.base/sun.nio.cs.StreamEncoder.flushBuffer(StreamEncoder.java:110)
	at java.base/java.io.OutputStreamWriter.flushBuffer(OutputStreamWriter.java:181)
	at java.base/java.io.PrintStream.write(PrintStream.java:699)
	at java.base/java.io.PrintStream.print(PrintStream.java:863)
	at org.gradle.internal.io.LinePerThreadBufferingOutputStream.println(LinePerThreadBufferingOutputStream.java:240)
	at java.base/sun.security.util.Debug.println(Debug.java:184)
	at java.base/java.security.AccessControlContext.checkPermission(AccessControlContext.java:478)
	at java.base/java.security.AccessController.checkPermission(AccessController.java:1036)
	at java.base/java.lang.SecurityManager.checkPermission(SecurityManager.java:408)
	at java.base/java.lang.reflect.AccessibleObject.checkPermission(AccessibleObject.java:92)
	at java.base/java.lang.reflect.Method.setAccessible(Method.java:189)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:35)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
	at org.gradle.internal.event.AbstractBroadcastDispatch.dispatch(AbstractBroadcastDispatch.java:43)
	at org.gradle.internal.event.BroadcastDispatch$SingletonDispatch.dispatch(BroadcastDispatch.java:245)
	at org.gradle.internal.event.BroadcastDispatch$SingletonDispatch.dispatch(BroadcastDispatch.java:157)
	at org.gradle.internal.event.ListenerBroadcast.dispatch(ListenerBroadcast.java:141)
	at org.gradle.internal.event.ListenerBroadcast.dispatch(ListenerBroadcast.java:37)
	at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)
	at com.sun.proxy.$Proxy0.onOutput(Unknown Source)
	at org.gradle.internal.logging.sink.OutputEventTransformer.onOutput(OutputEventTransformer.java:104)
	at org.gradle.internal.logging.sink.OutputEventRenderer.onOutput(OutputEventRenderer.java:431)
	at org.gradle.internal.logging.sink.OutputEventListenerManager$1.onOutput(OutputEventListenerManager.java:36)
	at org.gradle.internal.logging.services.TextStreamOutputEventListener.onTextEvent(TextStreamOutputEventListener.java:58)
	at org.gradle.internal.logging.services.TextStreamOutputEventListener.onOutput(TextStreamOutputEventListener.java:42)
	at org.gradle.internal.logging.source.PrintStreamLoggingSystem$OutputEventDestination.onOutput(PrintStreamLoggingSystem.java:173)
	at org.gradle.internal.logging.source.PrintStreamLoggingSystem$1.text(PrintStreamLoggingSystem.java:45)
	at org.gradle.internal.io.LineBufferingOutputStream.flush(LineBufferingOutputStream.java:96)
	at org.gradle.internal.io.LineBufferingOutputStream.write(LineBufferingOutputStream.java:80)
	at java.base/java.io.OutputStream.write(OutputStream.java:162)
	at java.base/java.io.PrintStream.write(PrintStream.java:568)
	at java.base/sun.nio.cs.StreamEncoder.writeBytes(StreamEncoder.java:242)
	at java.base/sun.nio.cs.StreamEncoder.implFlushBuffer(StreamEncoder.java:321)
	at java.base/sun.nio.cs.StreamEncoder.flushBuffer(StreamEncoder.java:110)
	at java.base/java.io.OutputStreamWriter.flushBuffer(OutputStreamWriter.java:181)
	at java.base/java.io.PrintStream.write(PrintStream.java:699)
	at java.base/java.io.PrintStream.print(PrintStream.java:863)
	at org.gradle.internal.io.LinePerThreadBufferingOutputStream.println(LinePerThreadBufferingOutputStream.java:240)
	at java.base/sun.security.util.Debug.println(Debug.java:184)
	at java.base/java.security.AccessControlContext.checkPermission(AccessControlContext.java:478)
	at java.base/java.security.AccessController.checkPermission(AccessController.java:1036)
	at java.base/java.lang.SecurityManager.checkPermission(SecurityManager.java:408)
	at java.base/java.lang.reflect.AccessibleObject.checkPermission(AccessibleObject.java:92)
	at java.base/java.lang.reflect.Method.setAccessible(Method.java:189)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:35)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
	at org.gradle.internal.event.AbstractBroadcastDispatch.dispatch(AbstractBroadcastDispatch.java:43)
	at org.gradle.internal.event.BroadcastDispatch$SingletonDispatch.dispatch(BroadcastDispatch.java:245)
	at org.gradle.internal.event.BroadcastDispatch$SingletonDispatch.dispatch(BroadcastDispatch.java:157)
	at org.gradle.internal.event.ListenerBroadcast.dispatch(ListenerBroadcast.java:141)
	at org.gradle.internal.event.ListenerBroadcast.dispatch(ListenerBroadcast.java:37)
	at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)
	at com.sun.proxy.$Proxy0.onOutput(Unknown Source)
	at org.gradle.internal.logging.sink.OutputEventTransformer.onOutput(OutputEventTransformer.java:104)
	at org.gradle.internal.logging.sink.OutputEventRenderer.onOutput(OutputEventRenderer.java:431)
	at org.gradle.internal.logging.sink.OutputEventListenerManager$1.onOutput(OutputEventListenerManager.java:36)
	at org.gradle.internal.logging.services.TextStreamOutputEventListener.onTextEvent(TextStreamOutputEventListener.java:58)
	at org.gradle.internal.logging.services.TextStreamOutputEventListener.onOutput(TextStreamOutputEventListener.java:42)
	at org.gradle.internal.logging.source.PrintStreamLoggingSystem$OutputEventDestination.onOutput(PrintStreamLoggingSystem.java:173)
	at org.gradle.internal.logging.source.PrintStreamLoggingSystem$1.text(PrintStreamLoggingSystem.java:45)
	at org.gradle.internal.io.LineBufferingOutputStream.flush(LineBufferingOutputStream.java:96)
	at org.gradle.internal.io.LineBufferingOutputStream.write(LineBufferingOutputStream.java:80)
	at java.base/java.io.OutputStream.write(OutputStream.java:162)
	at java.base/java.io.PrintStream.write(PrintStream.java:568)
	at java.base/sun.nio.cs.StreamEncoder.writeBytes(StreamEncoder.java:242)
	at java.base/sun.nio.cs.StreamEncoder.implFlushBuffer(StreamEncoder.java:321)
	at java.base/sun.nio.cs.StreamEncoder.flushBuffer(StreamEncoder.java:110)
	at java.base/java.io.OutputStreamWriter.flushBuffer(OutputStreamWriter.java:181)
	at java.base/java.io.PrintStream.write(PrintStream.java:699)
	at java.base/java.io.PrintStream.print(PrintStream.java:863)
	at org.gradle.internal.io.LinePerThreadBufferingOutputStream.println(LinePerThreadBufferingOutputStream.java:240)
	at java.base/sun.security.util.Debug.println(Debug.java:184)
	at java.base/java.security.AccessControlContext.checkPermission(AccessControlContext.java:478)
	at java.base/java.security.AccessController.checkPermission(AccessController.java:1036)
	at java.base/java.lang.SecurityManager.checkPermission(SecurityManager.java:408)
	at java.base/java.lang.reflect.AccessibleObject.checkPermission(AccessibleObject.java:92)
	at java.base/java.lang.reflect.Method.setAccessible(Method.java:189)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:35)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
	at org.gradle.internal.event.AbstractBroadcastDispatch.dispatch(AbstractBroadcastDispatch.java:43)
	at org.gradle.internal.event.BroadcastDispatch$SingletonDispatch.dispatch(BroadcastDispatch.java:245)
	at org.gradle.internal.event.BroadcastDispatch$SingletonDispatch.dispatch(BroadcastDispatch.java:157)
	at org.gradle.internal.event.ListenerBroadcast.dispatch(ListenerBroadcast.java:141)
	at org.gradle.internal.event.ListenerBroadcast.dispatch(ListenerBroadcast.java:37)
	at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)
	at com.sun.proxy.$Proxy0.onOutput(Unknown Source)
	at org.gradle.internal.logging.sink.OutputEventTransformer.onOutput(OutputEventTransformer.java:104)
	at org.gradle.internal.logging.sink.OutputEventRenderer.onOutput(OutputEventRenderer.java:431)
	at org.gradle.internal.logging.sink.OutputEventListenerManager$1.onOutput(OutputEventListenerManager.java:36)
	at org.gradle.internal.logging.services.TextStreamOutputEventListener.onTextEvent(TextStreamOutputEventListener.java:58)
	at org.gradle.internal.logging.services.TextStreamOutputEventListener.onOutput(TextStreamOutputEventListener.java:42)
	at org.gradle.internal.logging.source.PrintStreamLoggingSystem$OutputEventDestination.onOutput(PrintStreamLoggingSystem.java:173)
	at org.gradle.internal.logging.source.PrintStreamLoggingSystem$1.text(PrintStreamLoggingSystem.java:45)
	at org.gradle.internal.io.LineBufferingOutputStream.flush(LineBufferingOutputStream.java:96)
	at org.gradle.internal.io.LineBufferingOutputStream.write(LineBufferingOutputStream.java:80)
	at java.base/java.io.OutputStream.write(OutputStream.java:162)
	at java.base/java.io.PrintStream.write(PrintStream.java:568)
	at java.base/sun.nio.cs.StreamEncoder.writeBytes(StreamEncoder.java:242)
	at java.base/sun.nio.cs.StreamEncoder.implFlushBuffer(StreamEncoder.java:321)
	at java.base/sun.nio.cs.StreamEncoder.flushBuffer(StreamEncoder.java:110)
	at java.base/java.io.OutputStreamWriter.flushBuffer(OutputStreamWriter.java:181)
	at java.base/java.io.PrintStream.write(PrintStream.java:699)
	at java.base/java.io.PrintStream.print(PrintStream.java:863)
	at org.gradle.internal.io.LinePerThreadBufferingOutputStream.println(LinePerThreadBufferingOutputStream.java:240)
	at java.base/sun.security.util.Debug.println(Debug.java:184)
	at java.base/java.security.AccessControlContext.checkPermission(AccessControlContext.java:478)
	at java.base/java.security.AccessController.checkPermission(AccessController.java:1036)
	at java.base/java.lang.SecurityManager.checkPermission(SecurityManager.java:408)
	at java.base/java.lang.reflect.AccessibleObject.checkPermission(AccessibleObject.java:92)
	at java.base/java.lang.reflect.Method.setAccessible(Method.java:189)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:35)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
	at org.gradle.internal.event.AbstractBroadcastDispatch.dispatch(AbstractBroadcastDispatch.java:43)
	at org.gradle.internal.event.BroadcastDispatch$SingletonDispatch.dispatch(BroadcastDispatch.java:245)
	at org.gradle.internal.event.BroadcastDispatch$SingletonDispatch.dispatch(BroadcastDispatch.java:157)
	at org.gradle.internal.event.ListenerBroadcast.dispatch(ListenerBroadcast.java:141)
	at org.gradle.internal.event.ListenerBroadcast.dispatch(ListenerBroadcast.java:37)
	at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)
	at com.sun.proxy.$Proxy0.onOutput(Unknown Source)
	at org.gradle.internal.logging.sink.OutputEventTransformer.onOutput(OutputEventTransformer.java:104)
	at org.gradle.internal.logging.sink.OutputEventRenderer.onOutput(OutputEventRenderer.java:431)
	at org.gradle.internal.logging.sink.OutputEventListenerManager$1.onOutput(OutputEventListenerManager.java:36)
	at org.gradle.internal.logging.services.TextStreamOutputEventListener.onTextEvent(TextStreamOutputEventListener.java:58)
	at org.gradle.internal.logging.services.TextStreamOutputEventListener.onOutput(TextStreamOutputEventListener.java:42)
	at org.gradle.internal.logging.source.PrintStreamLoggingSystem$OutputEventDestination.onOutput(PrintStreamLoggingSystem.java:173)
	at org.gradle.internal.logging.source.PrintStreamLoggingSystem$1.text(PrintStreamLoggingSystem.java:45)
	at org.gradle.internal.io.LineBufferingOutputStream.flush(LineBufferingOutputStream.java:96)
	at org.gradle.internal.io.LineBufferingOutputStream.write(LineBufferingOutputStream.java:80)
	at java.base/java.io.OutputStream.write(OutputStream.java:162)
	at java.base/java.io.PrintStream.write(PrintStream.java:568)
	at java.base/sun.nio.cs.StreamEncoder.writeBytes(StreamEncoder.java:242)
	at java.base/sun.nio.cs.StreamEncoder.implFlushBuffer(StreamEncoder.java:321)
	at java.base/sun.nio.cs.StreamEncoder.flushBuffer(StreamEncoder.java:110)
	at java.base/java.io.OutputStreamWriter.flushBuffer(OutputStreamWriter.java:181)
	at java.base/java.io.PrintStream.write(PrintStream.java:699)
	at java.base/java.io.PrintStream.print(PrintStream.java:863)
	at org.gradle.internal.io.LinePerThreadBufferingOutputStream.println(LinePerThreadBufferingOutputStream.java:240)
	at java.base/sun.security.util.Debug.println(Debug.java:184)
	at java.base/java.security.AccessControlContext.checkPermission(AccessControlContext.java:478)
	at java.base/java.security.AccessController.checkPermission(AccessController.java:1036)
	at java.base/java.lang.SecurityManager.checkPermission(SecurityManager.java:408)
	at java.base/java.lang.reflect.AccessibleObject.checkPermission(AccessibleObject.java:92)
	at java.base/java.lang.reflect.Method.setAccessible(Method.java:189)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:35)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
	at org.gradle.internal.event.AbstractBroadcastDispatch.dispatch(AbstractBroadcastDispatch.java:43)
	at org.gradle.internal.event.BroadcastDispatch$SingletonDispatch.dispatch(BroadcastDispatch.java:245)
	at org.gradle.internal.event.BroadcastDispatch$SingletonDispatch.dispatch(BroadcastDispatch.java:157)
	at org.gradle.internal.event.ListenerBroadcast.dispatch(ListenerBroadcast.java:141)
	at org.gradle.internal.event.ListenerBroadcast.dispatch(ListenerBroadcast.java:37)
	at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)
	at com.sun.proxy.$Proxy0.onOutput(Unknown Source)
	at org.gradle.internal.logging.sink.OutputEventTransformer.onOutput(OutputEventTransformer.java:104)
	at org.gradle.internal.logging.sink.OutputEventRenderer.onOutput(OutputEventRenderer.java:431)
	at org.gradle.internal.logging.sink.OutputEventListenerManager$1.onOutput(OutputEventListenerManager.java:36)
	at org.gradle.internal.logging.services.TextStreamOutputEventListener.onTextEvent(TextStreamOutputEventListener.java:58)
	at org.gradle.internal.logging.services.TextStreamOutputEventListener.onOutput(TextStreamOutputEventListener.java:42)
	at org.gradle.internal.logging.source.PrintStreamLoggingSystem$OutputEventDestination.onOutput(PrintStreamLoggingSystem.java:173)
	at org.gradle.internal.logging.source.PrintStreamLoggingSystem$1.text(PrintStreamLoggingSystem.java:45)
	at org.gradle.internal.io.LineBufferingOutputStream.flush(LineBufferingOutputStream.java:96)
	at org.gradle.internal.io.LineBufferingOutputStream.write(LineBufferingOutputStream.java:80)
	at java.base/java.io.OutputStream.write(OutputStream.java:162)
	at java.base/java.io.PrintStream.write(PrintStream.java:568)
	at java.base/sun.nio.cs.StreamEncoder.writeBytes(StreamEncoder.java:242)
	at java.base/sun.nio.cs.StreamEncoder.implFlushBuffer(StreamEncoder.java:321)
	at java.base/sun.nio.cs.StreamEncoder.flushBuffer(StreamEncoder.java:110)
	at java.base/java.io.OutputStreamWriter.flushBuffer(OutputStreamWriter.java:181)
	at java.base/java.io.PrintStream.write(PrintStream.java:699)
	at java.base/java.io.PrintStream.print(PrintStream.java:863)
	at org.gradle.internal.io.LinePerThreadBufferingOutputStream.println(LinePerThreadBufferingOutputStream.java:240)
	at java.base/sun.security.util.Debug.println(Debug.java:184)
	at java.base/java.security.AccessControlContext.checkPermission(AccessControlContext.java:478)
	at java.base/java.security.AccessController.checkPermission(AccessController.java:1036)
	at java.base/java.lang.SecurityManager.checkPermission(SecurityManager.java:408)
	at java.base/java.lang.reflect.AccessibleObject.checkPermission(AccessibleObject.java:92)
	at java.base/java.lang.reflect.Method.setAccessible(Method.java:189)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:35)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
	at org.gradle.internal.event.AbstractBroadcastDispatch.dispatch(AbstractBroadcastDispatch.java:43)
	at org.gradle.internal.event.BroadcastDispatch$SingletonDispatch.dispatch(BroadcastDispatch.java:245)
	at org.gradle.internal.event.BroadcastDispatch$SingletonDispatch.dispatch(BroadcastDispatch.java:157)
	at org.gradle.internal.event.ListenerBroadcast.dispatch(ListenerBroadcast.java:141)
	at org.gradle.internal.event.ListenerBroadcast.dispatch(ListenerBroadcast.java:37)
	at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)
	at com.sun.proxy.$Proxy0.onOutput(Unknown Source)
	at org.gradle.internal.logging.sink.OutputEventTransformer.onOutput(OutputEventTransformer.java:104)
	at org.gradle.internal.logging.sink.OutputEventRenderer.onOutput(OutputEventRenderer.java:431)
	at org.gradle.internal.logging.sink.OutputEventListenerManager$1.onOutput(OutputEventListenerManager.java:36)
	at org.gradle.internal.logging.services.TextStreamOutputEventListener.onTextEvent(TextStreamOutputEventListener.java:58)
	at org.gradle.internal.logging.services.TextStreamOutputEventListener.onOutput(TextStreamOutputEventListener.java:42)
	at org.gradle.internal.logging.source.PrintStreamLoggingSystem$OutputEventDestination.onOutput(PrintStreamLoggingSystem.java:173)
	at org.gradle.internal.logging.source.PrintStreamLoggingSystem$1.text(PrintStreamLoggingSystem.java:45)
	at org.gradle.internal.io.LineBufferingOutputStream.flush(LineBufferingOutputStream.java:96)
	at org.gradle.internal.io.LineBufferingOutputStream.write(LineBufferingOutputStream.java:80)
	at java.base/java.io.OutputStream.write(OutputStream.java:162)
	at java.base/java.io.PrintStream.write(PrintStream.java:568)
	at java.base/sun.nio.cs.StreamEncoder.writeBytes(StreamEncoder.java:242)
	at java.base/sun.nio.cs.StreamEncoder.implFlushBuffer(StreamEncoder.java:321)
	at java.base/sun.nio.cs.StreamEncoder.flushBuffer(StreamEncoder.java:110)
	at java.base/java.io.OutputStreamWriter.flushBuffer(OutputStreamWriter.java:181)
	at java.base/java.io.PrintStream.write(PrintStream.java:699)
	at java.base/java.io.PrintStream.print(PrintStream.java:863)
	at org.gradle.internal.io.LinePerThreadBufferingOutputStream.println(LinePerThreadBufferingOutputStream.java:240)
	at java.base/sun.security.util.Debug.println(Debug.java:184)
	at java.base/java.security.AccessControlContext.checkPermission(AccessControlContext.java:478)
	at java.base/java.security.AccessController.checkPermission(AccessController.java:1036)
	at java.base/java.lang.SecurityManager.checkPermission(SecurityManager.java:408)
	at java.base/java.lang.reflect.AccessibleObject.checkPermission(AccessibleObject.java:92)
	at java.base/java.lang.reflect.Method.setAccessible(Method.java:189)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:35)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
	at org.gradle.internal.event.AbstractBroadcastDispatch.dispatch(AbstractBroadcastDispatch.java:43)
	at org.gradle.internal.event.BroadcastDispatch$SingletonDispatch.dispatch(BroadcastDispatch.java:245)
	at org.gradle.internal.event.BroadcastDispatch$SingletonDispatch.dispatch(BroadcastDispatch.java:157)
	at org.gradle.internal.event.ListenerBroadcast.dispatch(ListenerBroadcast.java:141)
	at org.gradle.internal.event.ListenerBroadcast.dispatch(ListenerBroadcast.java:37)
	at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)
	at com.sun.proxy.$Proxy0.onOutput(Unknown Source)
	at org.gradle.internal.logging.sink.OutputEventTransformer.onOutput(OutputEventTransformer.java:104)
	at org.gradle.internal.logging.sink.OutputEventRenderer.onOutput(OutputEventRenderer.java:431)
	at org.gradle.internal.logging.sink.OutputEventListenerManager$1.onOutput(OutputEventListenerManager.java:36)
	at org.gradle.internal.logging.services.TextStreamOutputEventListener.onTextEvent(TextStreamOutputEventListener.java:58)
	at org.gradle.internal.logging.services.TextStreamOutputEventListener.onOutput(TextStreamOutputEventListener.java:42)
	at org.gradle.internal.logging.source.PrintStreamLoggingSystem$OutputEventDestination.onOutput(PrintStreamLoggingSystem.java:173)
	at org.gradle.internal.logging.source.PrintStreamLoggingSystem$1.text(PrintStreamLoggingSystem.java:45)
	at org.gradle.internal.io.LineBufferingOutputStream.flush(LineBufferingOutputStream.java:96)
	at org.gradle.internal.io.LineBufferingOutputStream.write(LineBufferingOutputStream.java:80)
	at java.base/java.io.OutputStream.write(OutputStream.java:162)
	at java.base/java.io.PrintStream.write(PrintStream.java:568)
	at java.base/sun.nio.cs.StreamEncoder.writeBytes(StreamEncoder.java:242)
	at java.base/sun.nio.cs.StreamEncoder.implFlushBuffer(StreamEncoder.java:321)
	at java.base/sun.nio.cs.StreamEncoder.flushBuffer(StreamEncoder.java:110)
	at java.base/java.io.OutputStreamWriter.flushBuffer(OutputStreamWriter.java:181)
	at java.base/java.io.PrintStream.write(PrintStream.java:699)
	at java.base/java.io.PrintStream.print(PrintStream.java:863)
	at org.gradle.internal.io.LinePerThreadBufferingOutputStream.println(LinePerThreadBufferingOutputStream.java:240)
	at java.base/sun.security.util.Debug.println(Debug.java:184)
	at java.base/java.security.AccessControlContext.checkPermission(AccessControlContext.java:478)
	at java.base/java.security.AccessController.checkPermission(AccessController.java:1036)
	at java.base/java.lang.SecurityManager.checkPermission(SecurityManager.java:408)
	at java.base/java.lang.reflect.AccessibleObject.checkPermission(AccessibleObject.java:92)
	at java.base/java.lang.reflect.Method.setAccessible(Method.java:189)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:35)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
	at org.gradle.internal.event.AbstractBroadcastDispatch.dispatch(AbstractBroadcastDispatch.java:43)
	at org.gradle.internal.event.BroadcastDispatch$SingletonDispatch.dispatch(BroadcastDispatch.java:245)
	at org.gradle.internal.event.BroadcastDispatch$SingletonDispatch.dispatch(BroadcastDispatch.java:157)
	at org.gradle.internal.event.ListenerBroadcast.dispatch(ListenerBroadcast.java:141)
	at org.gradle.internal.event.ListenerBroadcast.dispatch(ListenerBroadcast.java:37)
	at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)
	at com.sun.proxy.$Proxy0.onOutput(Unknown Source)
	at org.gradle.internal.logging.sink.OutputEventTransformer.onOutput(OutputEventTransformer.java:104)
	at org.gradle.internal.logging.sink.OutputEventRenderer.onOutput(OutputEventRenderer.java:431)
	at org.gradle.internal.logging.sink.OutputEventListenerManager$1.onOutput(OutputEventListenerManager.java:36)
	at org.gradle.internal.logging.services.TextStreamOutputEventListener.onTextEvent(TextStreamOutputEventListener.java:58)
	at org.gradle.internal.logging.services.TextStreamOutputEventListener.onOutput(TextStreamOutputEventListener.java:42)
	at org.gradle.internal.logging.source.PrintStreamLoggingSystem$OutputEventDestination.onOutput(PrintStreamLoggingSystem.java:173)
	at org.gradle.internal.logging.source.PrintStreamLoggingSystem$1.text(PrintStreamLoggingSystem.java:45)
	at org.gradle.internal.io.LineBufferingOutputStream.flush(LineBufferingOutputStream.java:96)
	at org.gradle.internal.io.LineBufferingOutputStream.write(LineBufferingOutputStream.java:80)
	at java.base/java.io.OutputStream.write(OutputStream.java:162)
	at java.base/java.io.PrintStream.write(PrintStream.java:568)
	at java.base/sun.nio.cs.StreamEncoder.writeBytes(StreamEncoder.java:242)
	at java.base/sun.nio.cs.StreamEncoder.implFlushBuffer(StreamEncoder.java:321)
	at java.base/sun.nio.cs.StreamEncoder.flushBuffer(StreamEncoder.java:110)
	at java.base/java.io.OutputStreamWriter.flushBuffer(OutputStreamWriter.java:181)
	at java.base/java.io.PrintStream.write(PrintStream.java:699)
	at java.base/java.io.PrintStream.print(PrintStream.java:863)
	at org.gradle.internal.io.LinePerThreadBufferingOutputStream.println(LinePerThreadBufferingOutputStream.java:240)
	at java.base/sun.security.util.Debug.println(Debug.java:184)
	at java.base/java.security.AccessControlContext.checkPermission(AccessControlContext.java:478)
	at java.base/java.security.AccessController.checkPermission(AccessController.java:1036)
	at java.base/java.lang.SecurityManager.checkPermission(SecurityManager.java:408)
	at java.base/java.lang.reflect.AccessibleObject.checkPermission(AccessibleObject.java:92)
	at java.base/java.lang.reflect.Method.setAccessible(Method.java:189)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:35)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
	at org.gradle.internal.event.AbstractBroadcastDispatch.dispatch(AbstractBroadcastDispatch.java:43)
	at org.gradle.internal.event.BroadcastDispatch$SingletonDispatch.dispatch(BroadcastDispatch.java:245)
	at org.gradle.internal.event.BroadcastDispatch$SingletonDispatch.dispatch(BroadcastDispatch.java:157)
	at org.gradle.internal.event.ListenerBroadcast.dispatch(ListenerBroadcast.java:141)
	at org.gradle.internal.event.ListenerBroadcast.dispatch(ListenerBroadcast.java:37)
	at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)
	at com.sun.proxy.$Proxy0.onOutput(Unknown Source)
	at org.gradle.internal.logging.sink.OutputEventTransformer.onOutput(OutputEventTransformer.java:104)
	at org.gradle.internal.logging.sink.OutputEventRenderer.onOutput(OutputEventRenderer.java:431)
	at org.gradle.internal.logging.sink.OutputEventListenerManager$1.onOutput(OutputEventListenerManager.java:36)
	at org.gradle.internal.logging.services.TextStreamOutputEventListener.onTextEvent(TextStreamOutputEventListener.java:58)
	at org.gradle.internal.logging.services.TextStreamOutputEventListener.onOutput(TextStreamOutputEventListener.java:42)
	at org.gradle.internal.logging.source.PrintStreamLoggingSystem$OutputEventDestination.onOutput(PrintStreamLoggingSystem.java:173)
	at org.gradle.internal.logging.source.PrintStreamLoggingSystem$1.text(PrintStreamLoggingSystem.java:45)
	at org.gradle.internal.io.LineBufferingOutputStream.flush(LineBufferingOutputStream.java:96)
	at org.gradle.internal.io.LineBufferingOutputStream.write(LineBufferingOutputStream.java:80)
	at java.base/java.io.OutputStream.write(OutputStream.java:162)

@dweiss
Copy link
Author

dweiss commented Sep 1, 2021

@big-guy I think the above comment means the issue can be reopened? I don't think it makes sense to file a new one?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
5 participants