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

IoUringTest.ioUringIsAvailableOnLinux() #2585

Open
Scottmitch opened this issue May 8, 2023 · 8 comments · Fixed by #2767
Open

IoUringTest.ioUringIsAvailableOnLinux() #2585

Scottmitch opened this issue May 8, 2023 · 8 comments · Fixed by #2767
Assignees
Labels
flaky tests Unit tests are flaky

Comments

@Scottmitch
Copy link
Member

Scottmitch commented May 8, 2023

https://github.com/apple/servicetalk/pull/2584/checks?check_run_id=13318053938

Possible duplicate: #2265

Suppressed: java.lang.InterruptedException
		at java.base/java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1048)
		at java.base/java.util.concurrent.CountDownLatch.await(CountDownLatch.java:230)
		at io.servicetalk.concurrent.api.SourceToFuture.get(SourceToFuture.java:91)
		at io.servicetalk.http.netty.IoUringTest.ioUringIsAvailableOnLinux(IoUringTest.java:96)
@idelpivnitskiy
Copy link
Member

https://github.com/apple/servicetalk/pull/2646/checks?check_run_id=14929019291

	Suppressed: java.lang.InterruptedException
		at java.base/java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1100)
		at java.base/java.util.concurrent.CountDownLatch.await(CountDownLatch.java:230)
		at io.servicetalk.concurrent.api.SourceToFuture.get(SourceToFuture.java:94)
		at io.servicetalk.http.netty.IoUringTest.ioUringIsAvailableOnLinux(IoUringTest.java:95)
		at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
		at java.base/java.lang.reflect.Method.invoke(Method.java:578)
		at org.junit.platform.commons.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:727)
		at org.junit.jupiter.engine.execution.MethodInvocation.proceed(MethodInvocation.java:60)
		at org.junit.jupiter.engine.execution.InvocationInterceptorChain$ValidatingInvocation.proceed(InvocationInterceptorChain.java:131)
		at org.junit.jupiter.engine.extension.SameThreadTimeoutInvocation.proceed(SameThreadTimeoutInvocation.java:45)
		... 105 more

@idelpivnitskiy
Copy link
Member

https://github.com/apple/servicetalk/pull/2688/checks?check_run_id=16492447366

Suppressed: java.lang.InterruptedException
		at java.base/java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1100)
		at java.base/java.util.concurrent.CountDownLatch.await(CountDownLatch.java:230)
		at io.servicetalk.concurrent.api.SourceToFuture.get(SourceToFuture.java:94)
		at io.servicetalk.http.netty.IoUringTest.ioUringIsAvailableOnLinux(IoUringTest.java:95)
		at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
		at java.base/java.lang.reflect.Method.invoke(Method.java:578)
		at org.junit.platform.commons.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:727)

@Scottmitch
Copy link
Member Author

https://github.com/apple/servicetalk/pull/2684/checks?check_run_id=17275743063

IoUringTest.ioUringIsAvailableOnLinux(boolean) [1] noOffloading=false

java.util.concurrent.TimeoutException: ioUringIsAvailableOnLinux(boolean) timed out after 30 seconds

	Suppressed: java.lang.InterruptedException
		at java.base/java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1040)
		at java.base/java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1345)
		at java.base/java.util.concurrent.CountDownLatch.await(CountDownLatch.java:232)
		at io.servicetalk.concurrent.api.SourceToFuture.get(SourceToFuture.java:94)
		at io.servicetalk.http.netty.IoUringTest.ioUringIsAvailableOnLinux(IoUringTest.java:95)

@idelpivnitskiy
Copy link
Member

idelpivnitskiy commented Oct 10, 2023

https://github.com/apple/servicetalk/pull/2728/checks?check_run_id=17577062467

IoUringTest.ioUringIsAvailableOnLinux(boolean) [1] noOffloading=false

java.util.concurrent.TimeoutException: ioUringIsAvailableOnLinux(boolean) timed out after 30 seconds
...
	Suppressed: java.lang.InterruptedException
		at java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1000)
		at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1308)
		at java.util.concurrent.CountDownLatch.await(CountDownLatch.java:231)
		at io.servicetalk.concurrent.api.SourceToFuture.get(SourceToFuture.java:94)
		at io.servicetalk.http.netty.IoUringTest.ioUringIsAvailableOnLinux(IoUringTest.java:95)
		at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
		at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
		at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
		at java.lang.reflect.Method.invoke(Method.java:498)

@bryce-anderson
Copy link
Contributor

https://github.com/apple/servicetalk/actions/runs/6871425148/job/18688226181?pr=2760

IoUringTest > ioUringIsAvailableOnLinux(boolean) > ioUringIsAvailableOnLinux(boolean) [2] noOffloading=true FAILED
    java.util.concurrent.TimeoutException: ioUringIsAvailableOnLinux(boolean) timed out after 30 seconds
        at org.junit.jupiter.engine.extension.TimeoutExceptionFactory.create(TimeoutExceptionFactory.java:29)
    ...

There wasn't an attached suppressed exception.

@bryce-anderson
Copy link
Contributor

It turns out this is a netty bug that affects short lived loops. netty/netty-incubator-transport-io_uring#227

@idelpivnitskiy
Copy link
Member

Happened again:
https://github.com/apple/servicetalk/pull/2777/checks?check_run_id=19459240771

java.util.concurrent.TimeoutException: ioUringIsAvailableOnLinux(boolean) timed out after 30 seconds
...
	Suppressed: java.lang.InterruptedException
		at java.base/java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1100)
		at java.base/java.util.concurrent.CountDownLatch.await(CountDownLatch.java:230)
		at io.servicetalk.concurrent.api.SourceToFuture.get(SourceToFuture.java:94)
		at io.servicetalk.http.netty.IoUringTest.ioUringIsAvailableOnLinux(IoUringTest.java:95)
		at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
		at java.base/java.lang.reflect.Method.invoke(Method.java:580)
		at org.junit.platform.commons.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:727)
		at org.junit.jupiter.engine.execution.MethodInvocation.proceed(MethodInvocation.java:60)
		at org.junit.jupiter.engine.execution.InvocationInterceptorChain$ValidatingInvocation.proceed(InvocationInterceptorChain.java:131)
		at org.junit.jupiter.engine.extension.SameThreadTimeoutInvocation.proceed(SameThreadTimeoutInvocation.java:45)
		... 105 more

@idelpivnitskiy idelpivnitskiy reopened this Dec 8, 2023
@idelpivnitskiy
Copy link
Member

https://github.com/apple/servicetalk/pull/2832/checks?check_run_id=21461628619

IoUringTest.ioUringIsAvailableOnLinux(boolean) [1] noOffloading=false
java.util.concurrent.TimeoutException: ioUringIsAvailableOnLinux(boolean) timed out after 30 seconds
	at org.junit.jupiter.engine.extension.TimeoutExceptionFactory.create(TimeoutExceptionFactory.java:29)
...
	Suppressed: java.lang.InterruptedException
		at java.base/java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1100)
		at java.base/java.util.concurrent.CountDownLatch.await(CountDownLatch.java:230)
		at io.servicetalk.concurrent.api.SourceToFuture.get(SourceToFuture.java:94)
		at io.servicetalk.http.netty.IoUringTest.ioUringIsAvailableOnLinux(IoUringTest.java:95)
		at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
		at java.base/java.lang.reflect.Method.invoke(Method.java:580)
		at org.junit.platform.commons.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:727)
		at org.junit.jupiter.engine.execution.MethodInvocation.proceed(MethodInvocation.java:60)
		at org.junit.jupiter.engine.execution.InvocationInterceptorChain$ValidatingInvocation.proceed(InvocationInterceptorChain.java:131)
		at org.junit.jupiter.engine.extension.SameThreadTimeoutInvocation.proceed(SameThreadTimeoutInvocation.java:45)
		... 105 more

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
flaky tests Unit tests are flaky
Projects
None yet
3 participants