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

Flaky Test: ClientEffectiveStrategyTest #2245

Open
bondolo opened this issue Jun 8, 2022 · 29 comments
Open

Flaky Test: ClientEffectiveStrategyTest #2245

bondolo opened this issue Jun 8, 2022 · 29 comments
Assignees
Labels
flaky tests Unit tests are flaky

Comments

@bondolo
Copy link
Contributor

bondolo commented Jun 8, 2022

https://github.com/apple/servicetalk/pull/2244/checks?check_run_id=6799736339

ClientEffectiveStrategyTest.Type=SINGLE_BUILDER builder=DEFAULT_HTTP_EXECUTION_STRATEGY filter=OFFLOAD_NEVER_STRATEGY LB=OFFLOAD_NEVER_STRATEGY CF=null
java.lang.AssertionError: API=BLOCKING_AGGREGATED, clientStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY, apiStrategy=OFFLOAD_EVENT_STRATEGY. Async Errors! See suppressed

java.lang.AssertionError: API=BLOCKING_AGGREGATED, clientStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY, apiStrategy=OFFLOAD_EVENT_STRATEGY. Async Errors! See suppressed
	at io.servicetalk.test.resources.TestUtils.assertNoAsyncErrors(TestUtils.java:58)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.verifyOffloads(ClientEffectiveStrategyTest.java:501)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest.clientStrategy(ClientEffectiveStrategyTest.java:282)
	at jdk.internal.reflect.GeneratedMethodAccessor15.invoke(Unknown Source)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:568)
	at org.junit.platform.commons.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:725)
	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.TimeoutInvocation.proceed(TimeoutInvocation.java:46)
	at org.junit.jupiter.engine.extension.TimeoutExtension.intercept(TimeoutExtension.java:149)
	at org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestableMethod(TimeoutExtension.java:140)
	at org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestTemplateMethod(TimeoutExtension.java:92)
	at org.junit.jupiter.engine.execution.ExecutableInvoker$ReflectiveInterceptorCall.lambda$ofVoidMethod$0(ExecutableInvoker.java:115)
	at org.junit.jupiter.engine.execution.ExecutableInvoker.lambda$invoke$0(ExecutableInvoker.java:105)
	at org.junit.jupiter.engine.execution.InvocationInterceptorChain$InterceptedInvocation.proceed(InvocationInterceptorChain.java:106)
	at org.junit.jupiter.engine.execution.InvocationInterceptorChain.proceed(InvocationInterceptorChain.java:64)
	at org.junit.jupiter.engine.execution.InvocationInterceptorChain.chainAndInvoke(InvocationInterceptorChain.java:45)
	at org.junit.jupiter.engine.execution.InvocationInterceptorChain.invoke(InvocationInterceptorChain.java:37)
	at org.junit.jupiter.engine.execution.ExecutableInvoker.invoke(ExecutableInvoker.java:104)
	at org.junit.jupiter.engine.execution.ExecutableInvoker.invoke(ExecutableInvoker.java:98)
	at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$invokeTestMethod$7(TestMethodTestDescriptor.java:214)
	at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
	at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.invokeTestMethod(TestMethodTestDescriptor.java:210)
	at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:135)
	at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:66)
	at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:151)
	at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
	at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141)
	at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)
	at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139)
	at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
	at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138)
	at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95)
	at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService$ExclusiveTask.compute(ForkJoinPoolHierarchicalTestExecutorService.java:185)
	at java.base/java.util.concurrent.RecursiveAction.exec(RecursiveAction.java:194)
	at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:373)
	at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1182)
	at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1655)
	at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1622)
	at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:165)
	Suppressed: java.lang.AssertionError: Expected IoThread or ForkJoinPool-1-worker-3 at Send, but was running on an offloading executor thread: client-executor-3-5. clientStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY, requestStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.lambda$recordThread$0(ClientEffectiveStrategyTest.java:490)
		at java.base/java.util.concurrent.ConcurrentHashMap.compute(ConcurrentHashMap.java:1940)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.recordThread(ClientEffectiveStrategyTest.java:472)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder$1.lambda$request$0(ClientEffectiveStrategyTest.java:462)
		at io.servicetalk.concurrent.api.PublisherDoOnUtils$5.request(PublisherDoOnUtils.java:141)
		at io.servicetalk.concurrent.api.WhenSubscriptionPublisher$DoSubscriptionPublisherSubscriber$BeforeSubscription.request(WhenSubscriptionPublisher.java:83)
		at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:48)
		at io.servicetalk.concurrent.internal.DelayedSubscription.request(DelayedSubscription.java:77)
		at io.servicetalk.concurrent.api.DelayedCancellableThenSubscription.request(DelayedCancellableThenSubscription.java:46)
		at io.servicetalk.concurrent.api.SingleConcatWithPublisher$ConcatDeferNextSubscriber.request(SingleConcatWithPublisher.java:263)
		at io.servicetalk.concurrent.api.ScanWithPublisher$ScanWithSubscriber$1.request(ScanWithPublisher.java:112)
		at io.servicetalk.concurrent.api.TaskBasedAsyncPublisherOperator$OffloadedSubscription.executeTask(TaskBasedAsyncPublisherOperator.java:436)
		at io.servicetalk.concurrent.api.ContextPreservingRunnable.run(ContextPreservingRunnable.java:46)
		at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
		at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
		at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
		at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
		at java.base/java.lang.Thread.run(Thread.java:833)
@bondolo bondolo added the flaky tests Unit tests are flaky label Jun 8, 2022
@Scottmitch
Copy link
Member

https://github.com/apple/servicetalk/pull/2254/checks?check_run_id=6941365663

ClientEffectiveStrategyTest.Type=MULTI_DEFAULT_STRATEGY_SINGLE_BUILDER builder=OFFLOAD_NONE_STRATEGY filter=OFFLOAD_NEVER_STRATEGY LB=OFFLOAD_SEND_STRATEGY CF=null

java.lang.AssertionError: API=BLOCKING_AGGREGATED, apiStrategy=OFFLOAD_EVENT_STRATEGY, clientStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY. Async Errors! See suppressed
	at io.servicetalk.test.resources.TestUtils.assertNoAsyncErrors(TestUtils.java:58)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.verifyOffloads(ClientEffectiveStrategyTest.java:562)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest.clientStrategy(ClientEffectiveStrategyTest.java:328)

	Suppressed: java.lang.AssertionError: Expected IoThread or ForkJoinPool-1-worker-1 at Send, but was running on an offloading executor thread: client-executor-5-2. clientStrategy=OFFLOAD_NONE_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY, requestStrategy=OFFLOAD_ALL_STRATEGY
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.lambda$recordThread$0(ClientEffectiveStrategyTest.java:550)
		at java.base/java.util.concurrent.ConcurrentHashMap.compute(ConcurrentHashMap.java:1916)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.recordThread(ClientEffectiveStrategyTest.java:532)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder$1.lambda$request$0(ClientEffectiveStrategyTest.java:522)
		at io.servicetalk.concurrent.api.PublisherDoOnUtils$5.request(PublisherDoOnUtils.java:141)
		at io.servicetalk.concurrent.api.WhenSubscriptionPublisher$DoSubscriptionPublisherSubscriber$BeforeSubscription.request(WhenSubscriptionPublisher.java:83)
		at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:48)
		at io.servicetalk.concurrent.internal.DelayedSubscription.request(DelayedSubscription.java:77)
		at io.servicetalk.concurrent.api.DelayedCancellableThenSubscription.request(DelayedCancellableThenSubscription.java:46)
		at io.servicetalk.concurrent.api.SingleConcatWithPublisher$ConcatDeferNextSubscriber.request(SingleConcatWithPublisher.java:263)
		at io.servicetalk.concurrent.api.ScanWithPublisher$ScanWithSubscriber$1.request(ScanWithPublisher.java:112)
		at io.servicetalk.concurrent.api.TaskBasedAsyncPublisherOperator$OffloadedSubscription.executeTask(TaskBasedAsyncPublisherOperator.java:436)
		at io.servicetalk.concurrent.api.ContextPreservingRunnable.run(ContextPreservingRunnable.java:46)
		at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
		at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
		at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
		at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
		at java.base/java.lang.Thread.run(Thread.java:833)

@Scottmitch
Copy link
Member

https://github.com/apple/servicetalk/runs/7156620156

ClientEffectiveStrategyTest.Type=MULTI_DEFAULT_STRATEGY_SINGLE_BUILDER builder=DEFAULT_HTTP_EXECUTION_STRATEGY filter=OFFLOAD_NEVER_STRATEGY LB=OFFLOAD_NONE_STRATEGY CF=OFFLOAD_NEVER_STRATEGY

java.lang.AssertionError: API=BLOCKING_AGGREGATED, apiStrategy=OFFLOAD_EVENT_STRATEGY, clientStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY. Async Errors! See suppressed
	at io.servicetalk.test.resources.TestUtils.assertNoAsyncErrors(TestUtils.java:58)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.verifyOffloads(ClientEffectiveStrategyTest.java:562)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest.clientStrategy(ClientEffectiveStrategyTest.java:328)
	

	Suppressed: java.lang.AssertionError: Expected IoThread or ForkJoinPool-1-worker-1 at Send, but was running on an offloading executor thread: client-executor-5-5. clientStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY, requestStrategy=OFFLOAD_ALL_STRATEGY
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.lambda$recordThread$0(ClientEffectiveStrategyTest.java:550)
		at java.util.concurrent.ConcurrentHashMap.compute(ConcurrentHashMap.java:1877)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.recordThread(ClientEffectiveStrategyTest.java:532)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder$1.lambda$null$0(ClientEffectiveStrategyTest.java:522)
		at io.servicetalk.concurrent.api.PublisherDoOnUtils$5.request(PublisherDoOnUtils.java:141)
		at io.servicetalk.concurrent.api.WhenSubscriptionPublisher$DoSubscriptionPublisherSubscriber$BeforeSubscription.request(WhenSubscriptionPublisher.java:83)
		at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:48)
		at io.servicetalk.concurrent.internal.DelayedSubscription.request(DelayedSubscription.java:77)
		at io.servicetalk.concurrent.api.DelayedCancellableThenSubscription.request(DelayedCancellableThenSubscription.java:46)
		at io.servicetalk.concurrent.api.SingleConcatWithPublisher$ConcatDeferNextSubscriber.request(SingleConcatWithPublisher.java:263)
		at io.servicetalk.concurrent.api.ScanWithPublisher$ScanWithSubscriber$1.request(ScanWithPublisher.java:112)
		at io.servicetalk.concurrent.api.TaskBasedAsyncPublisherOperator$OffloadedSubscription.executeTask(TaskBasedAsyncPublisherOperator.java:436)
		at io.servicetalk.concurrent.api.ContextPreservingRunnable.run(ContextPreservingRunnable.java:46)
		at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
		at java.util.concurrent.FutureTask.run(FutureTask.java:266)
		at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
		at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
		at java.lang.Thread.run(Thread.java:750)

@Scottmitch
Copy link
Member

https://github.com/apple/servicetalk/runs/7158092150

ClientEffectiveStrategyTest.Type=SINGLE_BUILDER builder=null filter=null LB=null CF=null

java.lang.AssertionError: API=BLOCKING_AGGREGATED, apiStrategy=OFFLOAD_EVENT_STRATEGY, clientStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY. Async Errors! See suppressed
	at io.servicetalk.test.resources.TestUtils.assertNoAsyncErrors(TestUtils.java:58)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.verifyOffloads(ClientEffectiveStrategyTest.java:562)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest.clientStrategy(ClientEffectiveStrategyTest.java:328)
	

	Suppressed: java.lang.AssertionError: Expected IoThread or ForkJoinPool-1-worker-3 at Send, but was running on an offloading executor thread: client-executor-5-2. clientStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY, requestStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.lambda$recordThread$0(ClientEffectiveStrategyTest.java:550)
		at java.base/java.util.concurrent.ConcurrentHashMap.compute(ConcurrentHashMap.java:1932)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.recordThread(ClientEffectiveStrategyTest.java:532)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder$1.lambda$request$0(ClientEffectiveStrategyTest.java:522)
		at io.servicetalk.concurrent.api.PublisherDoOnUtils$5.request(PublisherDoOnUtils.java:141)
		at io.servicetalk.concurrent.api.WhenSubscriptionPublisher$DoSubscriptionPublisherSubscriber$BeforeSubscription.request(WhenSubscriptionPublisher.java:83)
		at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:48)
		at io.servicetalk.concurrent.internal.DelayedSubscription.request(DelayedSubscription.java:77)
		at io.servicetalk.concurrent.api.DelayedCancellableThenSubscription.request(DelayedCancellableThenSubscription.java:46)
		at io.servicetalk.concurrent.api.SingleConcatWithPublisher$ConcatDeferNextSubscriber.request(SingleConcatWithPublisher.java:263)
		at io.servicetalk.concurrent.api.ScanWithPublisher$ScanWithSubscriber$1.request(ScanWithPublisher.java:112)
		at io.servicetalk.concurrent.api.TaskBasedAsyncPublisherOperator$OffloadedSubscription.executeTask(TaskBasedAsyncPublisherOperator.java:436)
		at io.servicetalk.concurrent.api.ContextPreservingRunnable.run(ContextPreservingRunnable.java:46)
		at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
		at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
		at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
		at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
		at java.base/java.lang.Thread.run(Thread.java:829)

@Scottmitch
Copy link
Member

https://github.com/apple/servicetalk/runs/7158091706

ClientEffectiveStrategyTest.Type=MULTI_DEFAULT_STRATEGY_SINGLE_BUILDER builder=OFFLOAD_NEVER_STRATEGY filter=null LB=DEFAULT_HTTP_EXECUTION_STRATEGY CF=OFFLOAD_SEND_STRATEGY

java.lang.AssertionError: API=BLOCKING_AGGREGATED, apiStrategy=OFFLOAD_EVENT_STRATEGY, clientStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY. Async Errors! See suppressed
	at io.servicetalk.test.resources.TestUtils.assertNoAsyncErrors(TestUtils.java:58)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.verifyOffloads(ClientEffectiveStrategyTest.java:562)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest.clientStrategy(ClientEffectiveStrategyTest.java:328)
	

	Suppressed: java.lang.AssertionError: Expected IoThread or ForkJoinPool-1-worker-1 at Send, but was running on an offloading executor thread: client-executor-5-2. clientStrategy=OFFLOAD_NEVER_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY, requestStrategy=OFFLOAD_ALL_STRATEGY
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.lambda$recordThread$0(ClientEffectiveStrategyTest.java:550)
		at java.util.concurrent.ConcurrentHashMap.compute(ConcurrentHashMap.java:1877)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.recordThread(ClientEffectiveStrategyTest.java:532)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder$1.lambda$null$0(ClientEffectiveStrategyTest.java:522)
		at io.servicetalk.concurrent.api.PublisherDoOnUtils$5.request(PublisherDoOnUtils.java:141)
		at io.servicetalk.concurrent.api.WhenSubscriptionPublisher$DoSubscriptionPublisherSubscriber$BeforeSubscription.request(WhenSubscriptionPublisher.java:83)
		at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:48)
		at io.servicetalk.concurrent.internal.DelayedSubscription.request(DelayedSubscription.java:77)
		at io.servicetalk.concurrent.api.DelayedCancellableThenSubscription.request(DelayedCancellableThenSubscription.java:46)
		at io.servicetalk.concurrent.api.SingleConcatWithPublisher$ConcatDeferNextSubscriber.request(SingleConcatWithPublisher.java:263)
		at io.servicetalk.concurrent.api.ScanWithPublisher$ScanWithSubscriber$1.request(ScanWithPublisher.java:112)
		at io.servicetalk.concurrent.api.TaskBasedAsyncPublisherOperator$OffloadedSubscription.executeTask(TaskBasedAsyncPublisherOperator.java:436)
		at io.servicetalk.concurrent.api.ContextPreservingRunnable.run(ContextPreservingRunnable.java:46)
		at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
		at java.util.concurrent.FutureTask.run(FutureTask.java:266)
		at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
		at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
		at java.lang.Thread.run(Thread.java:750)
ClientEffectiveStrategyTest.Type=MULTI_DEFAULT_STRATEGY_SINGLE_BUILDER builder=OFFLOAD_NEVER_STRATEGY filter=OFFLOAD_SEND_STRATEGY LB=OFFLOAD_ALL_STRATEGY CF=OFFLOAD_NEVER_STRATEGY

java.lang.AssertionError: API=BLOCKING_AGGREGATED, apiStrategy=OFFLOAD_EVENT_STRATEGY, clientStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY. Async Errors! See suppressed
	at io.servicetalk.test.resources.TestUtils.assertNoAsyncErrors(TestUtils.java:58)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.verifyOffloads(ClientEffectiveStrategyTest.java:562)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest.clientStrategy(ClientEffectiveStrategyTest.java:337)


	Suppressed: java.lang.AssertionError: Expected IoThread or ForkJoinPool-1-worker-1 at Send, but was running on an offloading executor thread: client-executor-5-2. clientStrategy=OFFLOAD_NEVER_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY, requestStrategy=OFFLOAD_ALL_STRATEGY
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.lambda$recordThread$0(ClientEffectiveStrategyTest.java:550)
		at java.util.concurrent.ConcurrentHashMap.compute(ConcurrentHashMap.java:1853)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.recordThread(ClientEffectiveStrategyTest.java:532)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder$1.lambda$null$0(ClientEffectiveStrategyTest.java:522)
		at io.servicetalk.concurrent.api.PublisherDoOnUtils$5.request(PublisherDoOnUtils.java:141)
		at io.servicetalk.concurrent.api.WhenSubscriptionPublisher$DoSubscriptionPublisherSubscriber$BeforeSubscription.request(WhenSubscriptionPublisher.java:83)
		at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:48)
		at io.servicetalk.concurrent.internal.DelayedSubscription.request(DelayedSubscription.java:77)
		at io.servicetalk.concurrent.api.DelayedCancellableThenSubscription.request(DelayedCancellableThenSubscription.java:46)
		at io.servicetalk.concurrent.api.SingleConcatWithPublisher$ConcatDeferNextSubscriber.request(SingleConcatWithPublisher.java:263)
		at io.servicetalk.concurrent.api.ScanWithPublisher$ScanWithSubscriber$1.request(ScanWithPublisher.java:112)
		at io.servicetalk.concurrent.api.TaskBasedAsyncPublisherOperator$OffloadedSubscription.executeTask(TaskBasedAsyncPublisherOperator.java:436)
		at io.servicetalk.concurrent.api.ContextPreservingRunnable.run(ContextPreservingRunnable.java:46)
		at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
		at java.util.concurrent.FutureTask.run(FutureTask.java:266)
		at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
		at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
		at java.lang.Thread.run(Thread.java:750)

@Scottmitch
Copy link
Member

https://github.com/apple/servicetalk/pull/2257/checks?check_run_id=7158336577

ClientEffectiveStrategyTest.Type=MULTI_DEFAULT_STRATEGY_SINGLE_BUILDER builder=OFFLOAD_NONE_STRATEGY filter=DEFAULT_HTTP_EXECUTION_STRATEGY LB=OFFLOAD_NEVER_STRATEGY CF=DEFAULT_HTTP_EXECUTION_STRATEGY

java.lang.AssertionError: API=BLOCKING_AGGREGATED, apiStrategy=OFFLOAD_EVENT_STRATEGY, clientStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY. Async Errors! See suppressed
	at io.servicetalk.test.resources.TestUtils.assertNoAsyncErrors(TestUtils.java:58)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.verifyOffloads(ClientEffectiveStrategyTest.java:562)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest.clientStrategy(ClientEffectiveStrategyTest.java:328)


	Suppressed: java.lang.AssertionError: Expected IoThread or ForkJoinPool-1-worker-3 at Send, but was running on an offloading executor thread: client-executor-5-1. clientStrategy=OFFLOAD_NONE_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY, requestStrategy=OFFLOAD_ALL_STRATEGY
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.lambda$recordThread$0(ClientEffectiveStrategyTest.java:550)
		at java.base/java.util.concurrent.ConcurrentHashMap.compute(ConcurrentHashMap.java:1908)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.recordThread(ClientEffectiveStrategyTest.java:532)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder$1.lambda$request$0(ClientEffectiveStrategyTest.java:522)
		at io.servicetalk.concurrent.api.PublisherDoOnUtils$5.request(PublisherDoOnUtils.java:141)
		at io.servicetalk.concurrent.api.WhenSubscriptionPublisher$DoSubscriptionPublisherSubscriber$BeforeSubscription.request(WhenSubscriptionPublisher.java:83)
		at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:48)
		at io.servicetalk.concurrent.internal.DelayedSubscription.request(DelayedSubscription.java:77)
		at io.servicetalk.concurrent.api.DelayedCancellableThenSubscription.request(DelayedCancellableThenSubscription.java:46)
		at io.servicetalk.concurrent.api.SingleConcatWithPublisher$ConcatDeferNextSubscriber.request(SingleConcatWithPublisher.java:263)
		at io.servicetalk.concurrent.api.ScanWithPublisher$ScanWithSubscriber$1.request(ScanWithPublisher.java:112)
		at io.servicetalk.concurrent.api.TaskBasedAsyncPublisherOperator$OffloadedSubscription.executeTask(TaskBasedAsyncPublisherOperator.java:436)
		at io.servicetalk.concurrent.api.ContextPreservingRunnable.run(ContextPreservingRunnable.java:46)
		at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
		at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
		at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
		at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
		at java.base/java.lang.Thread.run(Thread.java:829)
ClientEffectiveStrategyTest.Type=MULTI_DEFAULT_STRATEGY_SINGLE_BUILDER builder=DEFAULT_HTTP_EXECUTION_STRATEGY filter=null LB=null CF=OFFLOAD_NEVER_STRATEGY

java.lang.AssertionError: API=BLOCKING_AGGREGATED, apiStrategy=OFFLOAD_EVENT_STRATEGY, clientStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY. Async Errors! See suppressed
	at io.servicetalk.test.resources.TestUtils.assertNoAsyncErrors(TestUtils.java:58)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.verifyOffloads(ClientEffectiveStrategyTest.java:562)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest.clientStrategy(ClientEffectiveStrategyTest.java:328)


	Suppressed: java.lang.AssertionError: Expected IoThread or ForkJoinPool-1-worker-1 at Send, but was running on an offloading executor thread: client-executor-5-4. clientStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY, requestStrategy=OFFLOAD_ALL_STRATEGY
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.lambda$recordThread$0(ClientEffectiveStrategyTest.java:550)
		at java.util.concurrent.ConcurrentHashMap.compute(ConcurrentHashMap.java:1877)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.recordThread(ClientEffectiveStrategyTest.java:532)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder$1.lambda$null$0(ClientEffectiveStrategyTest.java:522)
		at io.servicetalk.concurrent.api.PublisherDoOnUtils$5.request(PublisherDoOnUtils.java:141)
		at io.servicetalk.concurrent.api.WhenSubscriptionPublisher$DoSubscriptionPublisherSubscriber$BeforeSubscription.request(WhenSubscriptionPublisher.java:83)
		at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:48)
		at io.servicetalk.concurrent.internal.DelayedSubscription.request(DelayedSubscription.java:77)
		at io.servicetalk.concurrent.api.DelayedCancellableThenSubscription.request(DelayedCancellableThenSubscription.java:46)
		at io.servicetalk.concurrent.api.SingleConcatWithPublisher$ConcatDeferNextSubscriber.request(SingleConcatWithPublisher.java:263)
		at io.servicetalk.concurrent.api.ScanWithPublisher$ScanWithSubscriber$1.request(ScanWithPublisher.java:112)
		at io.servicetalk.concurrent.api.TaskBasedAsyncPublisherOperator$OffloadedSubscription.executeTask(TaskBasedAsyncPublisherOperator.java:436)
		at io.servicetalk.concurrent.api.ContextPreservingRunnable.run(ContextPreservingRunnable.java:46)
		at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
		at java.util.concurrent.FutureTask.run(FutureTask.java:266)
		at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
		at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
		at java.lang.Thread.run(Thread.java:750)

@bondolo bondolo self-assigned this Jul 18, 2022
@Scottmitch
Copy link
Member

https://github.com/apple/servicetalk/runs/7815903522 (snapshot build)

ClientEffectiveStrategyTest.Type=MULTI_DEFAULT_STRATEGY_SINGLE_BUILDER builder=DEFAULT_HTTP_EXECUTION_STRATEGY filter=OFFLOAD_NONE_STRATEGY LB=OFFLOAD_NONE_STRATEGY CF=OFFLOAD_NEVER_STRATEGY

java.lang.AssertionError: API=BLOCKING_AGGREGATED, apiStrategy=OFFLOAD_EVENT_STRATEGY, clientStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY. Async Errors! See suppressed
	at io.servicetalk.test.resources.TestUtils.assertNoAsyncErrors(TestUtils.java:58)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.verifyOffloads(ClientEffectiveStrategyTest.java:562)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest.clientStrategy(ClientEffectiveStrategyTest.java:328)
	

Suppressed: java.lang.AssertionError: Expected IoThread or ForkJoinPool-1-worker-1 at Send, but was running on an offloading executor thread: client-executor-5-1. clientStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY, requestStrategy=OFFLOAD_ALL_STRATEGY
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.lambda$recordThread$0(ClientEffectiveStrategyTest.java:550)
		at java.util.concurrent.ConcurrentHashMap.compute(ConcurrentHashMap.java:1877)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.recordThread(ClientEffectiveStrategyTest.java:532)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder$1.lambda$null$0(ClientEffectiveStrategyTest.java:522)
		at io.servicetalk.concurrent.api.PublisherDoOnUtils$5.request(PublisherDoOnUtils.java:141)
		at io.servicetalk.concurrent.api.WhenSubscriptionPublisher$DoSubscriptionPublisherSubscriber$BeforeSubscription.request(WhenSubscriptionPublisher.java:83)
		at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:48)
		at io.servicetalk.concurrent.internal.DelayedSubscription.request(DelayedSubscription.java:77)
		at io.servicetalk.concurrent.api.DelayedCancellableThenSubscription.request(DelayedCancellableThenSubscription.java:46)
		at io.servicetalk.concurrent.api.SingleConcatWithPublisher$ConcatDeferNextSubscriber.request(SingleConcatWithPublisher.java:263)
		at io.servicetalk.concurrent.api.ScanWithPublisher$ScanWithSubscriber$1.request(ScanWithPublisher.java:112)
		at io.servicetalk.concurrent.api.TaskBasedAsyncPublisherOperator$OffloadedSubscription.executeTask(TaskBasedAsyncPublisherOperator.java:436)
		at io.servicetalk.concurrent.api.ContextPreservingRunnable.run(ContextPreservingRunnable.java:46)
		at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
		at java.util.concurrent.FutureTask.run(FutureTask.java:266)
		at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
		at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
		at java.lang.Thread.run(Thread.java:750)

@tkountis
Copy link
Contributor

ClientEffectiveStrategyTest.Type=MULTI_BUILDER builder=OFFLOAD_ALL_STRATEGY filter=OFFLOAD_NEVER_STRATEGY LB=null CF=OFFLOAD_NEVER_STRATEGY
java.lang.AssertionError: API=BLOCKING_STREAMING, apiStrategy=OFFLOAD_ALL_STRATEGY, clientStrategy=OFFLOAD_ALL_STRATEGY, expectedStrategy=OFFLOAD_ALL_STRATEGY. Async Errors! See suppressed


java.lang.AssertionError: API=BLOCKING_STREAMING, apiStrategy=OFFLOAD_ALL_STRATEGY, clientStrategy=OFFLOAD_ALL_STRATEGY, expectedStrategy=OFFLOAD_ALL_STRATEGY. Async Errors! See suppressed
	at io.servicetalk.test.resources.TestUtils.assertNoAsyncErrors(TestUtils.java:58)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.verifyOffloads(ClientEffectiveStrategyTest.java:562)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest.clientStrategy(ClientEffectiveStrategyTest.java:337)

https://github.com/apple/servicetalk/pull/2348/checks?check_run_id=8310753563

@Scottmitch
Copy link
Member

https://github.com/apple/servicetalk/pull/2440/checks?check_run_id=9676646223

ClientEffectiveStrategyTest.Type=MULTI_BUILDER builder=null filter=OFFLOAD_NEVER_STRATEGY LB=OFFLOAD_NEVER_STRATEGY CF=OFFLOAD_NONE_STRATEGY

java.lang.AssertionError: API=BLOCKING_AGGREGATED, apiStrategy=OFFLOAD_EVENT_STRATEGY, clientStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY. Async Errors! See suppressed
	at io.servicetalk.test.resources.TestUtils.assertNoAsyncErrors(TestUtils.java:58)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.verifyOffloads(ClientEffectiveStrategyTest.java:562)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest.clientStrategy(ClientEffectiveStrategyTest.java:328)
	

	Suppressed: java.lang.AssertionError: Expected IoThread or ForkJoinPool-1-worker-1 at Send, but was running on an offloading executor thread: client-executor-5-4. clientStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY, requestStrategy=OFFLOAD_ALL_STRATEGY
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.lambda$recordThread$0(ClientEffectiveStrategyTest.java:550)
		at java.base/java.util.concurrent.ConcurrentHashMap.compute(ConcurrentHashMap.java:1940)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.recordThread(ClientEffectiveStrategyTest.java:532)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder$1.lambda$request$0(ClientEffectiveStrategyTest.java:522)
		at io.servicetalk.concurrent.api.PublisherDoOnUtils$5.request(PublisherDoOnUtils.java:141)
		at io.servicetalk.concurrent.api.WhenSubscriptionPublisher$DoSubscriptionPublisherSubscriber$BeforeSubscription.request(WhenSubscriptionPublisher.java:83)
		at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:48)
		at io.servicetalk.concurrent.internal.DelayedSubscription.request(DelayedSubscription.java:77)
		at io.servicetalk.concurrent.api.DelayedCancellableThenSubscription.request(DelayedCancellableThenSubscription.java:46)
		at io.servicetalk.concurrent.api.SingleConcatWithPublisher$ConcatDeferNextSubscriber.request(SingleConcatWithPublisher.java:366)
		at io.servicetalk.concurrent.api.ScanWithPublisher$ScanWithSubscriber$1.request(ScanWithPublisher.java:112)
		at io.servicetalk.concurrent.api.TaskBasedAsyncPublisherOperator$OffloadedSubscription.executeTask(TaskBasedAsyncPublisherOperator.java:436)
		at io.servicetalk.concurrent.api.ContextPreservingRunnable.run(ContextPreservingRunnable.java:46)
		

@Scottmitch
Copy link
Member

https://github.com/apple/servicetalk/pull/2444/checks?check_run_id=9677905936

ClientEffectiveStrategyTest.Type=SINGLE_BUILDER builder=null filter=null LB=OFFLOAD_NEVER_STRATEGY CF=null

java.lang.AssertionError: API=BLOCKING_AGGREGATED, apiStrategy=OFFLOAD_EVENT_STRATEGY, clientStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY. Async Errors! See suppressed
	at io.servicetalk.test.resources.TestUtils.assertNoAsyncErrors(TestUtils.java:58)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.verifyOffloads(ClientEffectiveStrategyTest.java:562)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest.clientStrategy(ClientEffectiveStrategyTest.java:328)
	
	Suppressed: java.lang.AssertionError: Expected IoThread or ForkJoinPool-1-worker-1 at Send, but was running on an offloading executor thread: client-executor-5-5. clientStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY, requestStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.lambda$recordThread$0(ClientEffectiveStrategyTest.java:550)
		at java.util.concurrent.ConcurrentHashMap.compute(ConcurrentHashMap.java:1877)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.recordThread(ClientEffectiveStrategyTest.java:532)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder$1.lambda$null$0(ClientEffectiveStrategyTest.java:522)
		at io.servicetalk.concurrent.api.PublisherDoOnUtils$5.request(PublisherDoOnUtils.java:141)
		at io.servicetalk.concurrent.api.WhenSubscriptionPublisher$DoSubscriptionPublisherSubscriber$BeforeSubscription.request(WhenSubscriptionPublisher.java:83)
		at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:48)
		at io.servicetalk.concurrent.internal.DelayedSubscription.request(DelayedSubscription.java:77)
		at io.servicetalk.concurrent.api.DelayedCancellableThenSubscription.request(DelayedCancellableThenSubscription.java:46)
		at io.servicetalk.concurrent.api.SingleConcatWithPublisher$ConcatDeferNextSubscriber.request(SingleConcatWithPublisher.java:366)
		at io.servicetalk.concurrent.api.ScanWithPublisher$ScanWithSubscriber$1.request(ScanWithPublisher.java:112)
		at io.servicetalk.concurrent.api.TaskBasedAsyncPublisherOperator$OffloadedSubscription.executeTask(TaskBasedAsyncPublisherOperator.java:436)
		at io.servicetalk.concurrent.api.ContextPreservingRunnable.run(ContextPreservingRunnable.java:46)
	

@idelpivnitskiy
Copy link
Member

https://github.com/apple/servicetalk/pull/2520/checks?check_run_id=11633533654

ClientEffectiveStrategyTest.Type=MULTI_BUILDER builder=null filter=OFFLOAD_NEVER_STRATEGY LB=OFFLOAD_NONE_STRATEGY CF=null

java.lang.AssertionError: API=BLOCKING_AGGREGATED, apiStrategy=OFFLOAD_EVENT_STRATEGY, clientStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY. Async Errors! See suppressed
	at io.servicetalk.test.resources.TestUtils.assertNoAsyncErrors(TestUtils.java:58)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.verifyOffloads(ClientEffectiveStrategyTest.java:562)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest.clientStrategy(ClientEffectiveStrategyTest.java:328)
	at jdk.internal.reflect.GeneratedMethodAccessor42.invoke(Unknown Source)
	Suppressed: java.lang.AssertionError: Expected IoThread or ForkJoinPool-1-worker-3 at Send, but was running on an offloading executor thread: client-executor-5-1. clientStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY, requestStrategy=OFFLOAD_ALL_STRATEGY
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.lambda$recordThread$0(ClientEffectiveStrategyTest.java:550)
		at java.base/java.util.concurrent.ConcurrentHashMap.compute(ConcurrentHashMap.java:1908)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.recordThread(ClientEffectiveStrategyTest.java:532)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder$1.lambda$request$0(ClientEffectiveStrategyTest.java:522)
		at io.servicetalk.concurrent.api.PublisherDoOnUtils$5.request(PublisherDoOnUtils.java:141)
		at io.servicetalk.concurrent.api.WhenSubscriptionPublisher$DoSubscriptionPublisherSubscriber$BeforeSubscription.request(WhenSubscriptionPublisher.java:83)
		at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:48)
		at io.servicetalk.concurrent.internal.DelayedSubscription.request(DelayedSubscription.java:77)
		at io.servicetalk.concurrent.api.DelayedCancellableThenSubscription.request(DelayedCancellableThenSubscription.java:46)
		at io.servicetalk.concurrent.api.SingleConcatWithPublisher$ConcatDeferNextSubscriber.request(SingleConcatWithPublisher.java:366)
		at io.servicetalk.concurrent.api.ScanWithPublisher$ScanWithSubscriber$1.request(ScanWithPublisher.java:112)
		at io.servicetalk.concurrent.api.TaskBasedAsyncPublisherOperator$OffloadedSubscription.executeTask(TaskBasedAsyncPublisherOperator.java:436)
		at io.servicetalk.concurrent.api.ContextPreservingRunnable.run(ContextPreservingRunnable.java:46)
		at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
		at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
		at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
		at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
		at java.base/java.lang.Thread.run(Thread.java:829)

@Scottmitch
Copy link
Member

https://github.com/apple/servicetalk/pull/2555/checks?check_run_id=12913256561

ClientEffectiveStrategyTest.Type=MULTI_DEFAULT_STRATEGY_SINGLE_BUILDER builder=OFFLOAD_ALL_STRATEGY filter=OFFLOAD_NEVER_STRATEGY LB=DEFAULT_HTTP_EXECUTION_STRATEGY CF=DEFAULT_HTTP_EXECUTION_STRATEGY

java.lang.AssertionError: API=BLOCKING_AGGREGATED, apiStrategy=OFFLOAD_EVENT_STRATEGY, clientStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY, expectedStrategy=OFFLOAD_ALL_STRATEGY. Async Errors! See suppressed
	at io.servicetalk.test.resources.TestUtils.assertNoAsyncErrors(TestUtils.java:58)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.verifyOffloads(ClientEffectiveStrategyTest.java:562)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest.clientStrategy(ClientEffectiveStrategyTest.java:328)
	at jdk.internal.reflect.GeneratedMethodAccessor46.invoke(Unknown Source)


	Suppressed: java.lang.AssertionError: Expected IoThread or ForkJoinPool-1-worker-1 at Send, but was running on an offloading executor thread: client-executor-5-3. clientStrategy=OFFLOAD_ALL_STRATEGY, expectedStrategy=OFFLOAD_ALL_STRATEGY, requestStrategy=OFFLOAD_ALL_STRATEGY
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.lambda$recordThread$0(ClientEffectiveStrategyTest.java:550)
		at java.base/java.util.concurrent.ConcurrentHashMap.compute(ConcurrentHashMap.java:1916)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.recordThread(ClientEffectiveStrategyTest.java:532)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder$1.lambda$request$0(ClientEffectiveStrategyTest.java:522)
		at io.servicetalk.concurrent.api.PublisherDoOnUtils$5.request(PublisherDoOnUtils.java:141)
		at io.servicetalk.concurrent.api.WhenSubscriptionPublisher$DoSubscriptionPublisherSubscriber$BeforeSubscription.request(WhenSubscriptionPublisher.java:83)
		at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:48)
		at io.servicetalk.concurrent.internal.DelayedSubscription.request(DelayedSubscription.java:77)
		at io.servicetalk.concurrent.api.DelayedCancellableThenSubscription.request(DelayedCancellableThenSubscription.java:46)
		at io.servicetalk.concurrent.api.SingleConcatWithPublisher$ConcatDeferNextSubscriber.request(SingleConcatWithPublisher.java:366)
		at io.servicetalk.concurrent.api.ScanWithPublisher$ScanWithSubscriber$1.request(ScanWithPublisher.java:112)
		at io.servicetalk.concurrent.api.TaskBasedAsyncPublisherOperator$OffloadedSubscription.executeTask(TaskBasedAsyncPublisherOperator.java:436)
		at io.servicetalk.concurrent.api.ContextPreservingRunnable.run(ContextPreservingRunnable.java:46)
		at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
		at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
		at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
		at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
		at java.base/java.lang.Thread.run(Thread.java:833)

@idelpivnitskiy
Copy link
Member

https://github.com/apple/servicetalk/pull/2614/checks?check_run_id=13905833089

ClientEffectiveStrategyTest.Type=MULTI_DEFAULT_STRATEGY_SINGLE_BUILDER builder=OFFLOAD_NONE_STRATEGY filter=DEFAULT_HTTP_EXECUTION_STRATEGY LB=OFFLOAD_SEND_STRATEGY CF=OFFLOAD_ALL_STRATEGY

java.lang.AssertionError: API=BLOCKING_AGGREGATED, apiStrategy=OFFLOAD_EVENT_STRATEGY, clientStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY. Async Errors! See suppressed
	at io.servicetalk.test.resources.TestUtils.assertNoAsyncErrors(TestUtils.java:58)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.verifyOffloads(ClientEffectiveStrategyTest.java:562)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest.clientStrategy(ClientEffectiveStrategyTest.java:328)
	at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
	at java.base/java.lang.reflect.Method.invoke(Method.java:578)
...
	Suppressed: java.lang.AssertionError: Expected IoThread or ForkJoinPool-1-worker-1 at Send, but was running on an offloading executor thread: client-executor-5-5. clientStrategy=OFFLOAD_NONE_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY, requestStrategy=OFFLOAD_ALL_STRATEGY
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.lambda$recordThread$0(ClientEffectiveStrategyTest.java:550)
		at java.base/java.util.concurrent.ConcurrentHashMap.compute(ConcurrentHashMap.java:1940)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.recordThread(ClientEffectiveStrategyTest.java:532)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder$1.lambda$request$0(ClientEffectiveStrategyTest.java:522)
		at io.servicetalk.concurrent.api.PublisherDoOnUtils$5.request(PublisherDoOnUtils.java:141)
		at io.servicetalk.concurrent.api.WhenSubscriptionPublisher$DoSubscriptionPublisherSubscriber$BeforeSubscription.request(WhenSubscriptionPublisher.java:83)
		at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:48)
		at io.servicetalk.concurrent.internal.DelayedSubscription.request(DelayedSubscription.java:77)
		at io.servicetalk.concurrent.api.DelayedCancellableThenSubscription.request(DelayedCancellableThenSubscription.java:46)
		at io.servicetalk.concurrent.api.SingleConcatWithPublisher$ConcatDeferNextSubscriber.request(SingleConcatWithPublisher.java:366)
		at io.servicetalk.concurrent.api.ScanWithPublisher$ScanWithSubscriber$1.request(ScanWithPublisher.java:112)
		at io.servicetalk.concurrent.api.TaskBasedAsyncPublisherOperator$OffloadedSubscription.executeTask(TaskBasedAsyncPublisherOperator.java:436)
		at io.servicetalk.concurrent.api.ContextPreservingRunnable.run(ContextPreservingRunnable.java:46)
		at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:577)
		at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317)
		at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
		at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
		at java.base/java.lang.Thread.run(Thread.java:1623)

@Scottmitch
Copy link
Member

https://github.com/apple/servicetalk/pull/2640/checks?check_run_id=14783343570

ClientEffectiveStrategyTest.Type=MULTI_BUILDER builder=null filter=null LB=null CF=OFFLOAD_NEVER_STRATEGY
java.lang.AssertionError: API=BLOCKING_AGGREGATED, apiStrategy=OFFLOAD_EVENT_STRATEGY, clientStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY. Async Errors! See suppressed
	at io.servicetalk.test.resources.TestUtils.assertNoAsyncErrors(TestUtils.java:58)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.verifyOffloads(ClientEffectiveStrategyTest.java:562)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest.clientStrategy(ClientEffectiveStrategyTest.java:337)
	

	Suppressed: java.lang.AssertionError: Expected IoThread or ForkJoinPool-1-worker-1 at Send, but was running on an offloading executor thread: client-executor-5-2. clientStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY, requestStrategy=OFFLOAD_ALL_STRATEGY
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.lambda$recordThread$0(ClientEffectiveStrategyTest.java:550)
		at java.base/java.util.concurrent.ConcurrentHashMap.compute(ConcurrentHashMap.java:1916)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.recordThread(ClientEffectiveStrategyTest.java:532)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder$1.lambda$request$0(ClientEffectiveStrategyTest.java:522)
		at io.servicetalk.concurrent.api.PublisherDoOnUtils$5.request(PublisherDoOnUtils.java:141)
		at io.servicetalk.concurrent.api.WhenSubscriptionPublisher$DoSubscriptionPublisherSubscriber$BeforeSubscription.request(WhenSubscriptionPublisher.java:83)
		at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:48)
		at io.servicetalk.concurrent.internal.DelayedSubscription.request(DelayedSubscription.java:77)
		at io.servicetalk.concurrent.api.DelayedCancellableThenSubscription.request(DelayedCancellableThenSubscription.java:46)
		at io.servicetalk.concurrent.api.SingleConcatWithPublisher$ConcatDeferNextSubscriber.request(SingleConcatWithPublisher.java:366)
		at io.servicetalk.concurrent.api.ScanWithPublisher$ScanWithSubscriber$1.request(ScanWithPublisher.java:116)
		at io.servicetalk.concurrent.api.TaskBasedAsyncPublisherOperator$OffloadedSubscription.executeTask(TaskBasedAsyncPublisherOperator.java:436)
		at io.servicetalk.concurrent.api.ContextPreservingRunnable.run(ContextPreservingRunnable.java:46)

@Scottmitch
Copy link
Member

https://github.com/apple/servicetalk/runs/16047242078

ClientEffectiveStrategyTest.Type=MULTI_DEFAULT_STRATEGY_SINGLE_BUILDER builder=DEFAULT_HTTP_EXECUTION_STRATEGY filter=OFFLOAD_NONE_STRATEGY LB=OFFLOAD_NONE_STRATEGY CF=null

java.lang.AssertionError: API=BLOCKING_AGGREGATED, apiStrategy=OFFLOAD_EVENT_STRATEGY, clientStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY. Async Errors! See suppressed
	at io.servicetalk.test.resources.TestUtils.assertNoAsyncErrors(TestUtils.java:58)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.verifyOffloads(ClientEffectiveStrategyTest.java:562)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest.clientStrategy(ClientEffectiveStrategyTest.java:328)


	Suppressed: java.lang.AssertionError: Expected IoThread or ForkJoinPool-1-worker-1 at Send, but was running on an offloading executor thread: client-executor-7-4. clientStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY, requestStrategy=OFFLOAD_ALL_STRATEGY
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.lambda$recordThread$0(ClientEffectiveStrategyTest.java:550)
		at java.base/java.util.concurrent.ConcurrentHashMap.compute(ConcurrentHashMap.java:1940)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.recordThread(ClientEffectiveStrategyTest.java:532)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder$1.lambda$request$0(ClientEffectiveStrategyTest.java:522)
		at io.servicetalk.concurrent.api.PublisherDoOnUtils$5.request(PublisherDoOnUtils.java:141)
		at io.servicetalk.concurrent.api.WhenSubscriptionPublisher$DoSubscriptionPublisherSubscriber$BeforeSubscription.request(WhenSubscriptionPublisher.java:83)
		at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:48)
		at io.servicetalk.concurrent.internal.DelayedSubscription.request(DelayedSubscription.java:77)
		at io.servicetalk.concurrent.api.DelayedCancellableThenSubscription.request(DelayedCancellableThenSubscription.java:46)
		at io.servicetalk.concurrent.api.SingleConcatWithPublisher$ConcatDeferNextSubscriber.request(SingleConcatWithPublisher.java:366)
		at io.servicetalk.concurrent.api.ScanWithPublisher$ScanWithSubscriber$1.request(ScanWithPublisher.java:117)
		at io.servicetalk.concurrent.api.TaskBasedAsyncPublisherOperator$OffloadedSubscription.executeTask(TaskBasedAsyncPublisherOperator.java:436)
		at io.servicetalk.concurrent.api.ContextPreservingRunnable.run(ContextPreservingRunnable.java:46)

@Scottmitch
Copy link
Member

https://github.com/apple/servicetalk/pull/2678/checks?check_run_id=16074782218

ClientEffectiveStrategyTest.Type=SINGLE_BUILDER builder=null filter=null LB=OFFLOAD_NEVER_STRATEGY CF=null

java.lang.AssertionError: API=BLOCKING_AGGREGATED, apiStrategy=OFFLOAD_EVENT_STRATEGY, clientStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY. Async Errors! See suppressed
	at io.servicetalk.test.resources.TestUtils.assertNoAsyncErrors(TestUtils.java:58)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.verifyOffloads(ClientEffectiveStrategyTest.java:562)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest.clientStrategy(ClientEffectiveStrategyTest.java:328)

	Suppressed: java.lang.AssertionError: Expected IoThread or ForkJoinPool-1-worker-1 at Send, but was running on an offloading executor thread: client-executor-7-5. clientStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY, requestStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.lambda$recordThread$0(ClientEffectiveStrategyTest.java:550)
		at java.base/java.util.concurrent.ConcurrentHashMap.compute(ConcurrentHashMap.java:1916)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.recordThread(ClientEffectiveStrategyTest.java:532)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder$1.lambda$request$0(ClientEffectiveStrategyTest.java:522)
		at io.servicetalk.concurrent.api.PublisherDoOnUtils$5.request(PublisherDoOnUtils.java:141)
		at io.servicetalk.concurrent.api.WhenSubscriptionPublisher$DoSubscriptionPublisherSubscriber$BeforeSubscription.request(WhenSubscriptionPublisher.java:83)
		at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:48)
		at io.servicetalk.concurrent.internal.DelayedSubscription.request(DelayedSubscription.java:77)
		at io.servicetalk.concurrent.api.DelayedCancellableThenSubscription.request(DelayedCancellableThenSubscription.java:46)
		at io.servicetalk.concurrent.api.SingleConcatWithPublisher$ConcatDeferNextSubscriber.request(SingleConcatWithPublisher.java:366)
		at io.servicetalk.concurrent.api.ScanWithPublisher$ScanWithSubscriber$1.request(ScanWithPublisher.java:117)
		at io.servicetalk.concurrent.api.TaskBasedAsyncPublisherOperator$OffloadedSubscription.executeTask(TaskBasedAsyncPublisherOperator.java:436)
		at io.servicetalk.concurrent.api.ContextPreservingRunnable.run(ContextPreservingRunnable.java:46)

@Scottmitch
Copy link
Member

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

ClientEffectiveStrategyTest.Type=MULTI_DEFAULT_STRATEGY_SINGLE_BUILDER builder=DEFAULT_HTTP_EXECUTION_STRATEGY filter=null LB=OFFLOAD_NEVER_STRATEGY CF=OFFLOAD_NONE_STRATEGY

java.lang.AssertionError: API=BLOCKING_AGGREGATED, apiStrategy=OFFLOAD_EVENT_STRATEGY, clientStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY. Async Errors! See suppressed
	at io.servicetalk.test.resources.TestUtils.assertNoAsyncErrors(TestUtils.java:58)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.verifyOffloads(ClientEffectiveStrategyTest.java:562)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest.clientStrategy(ClientEffectiveStrategyTest.java:328)


	Suppressed: java.lang.AssertionError: Expected IoThread or ForkJoinPool-1-worker-1 at Send, but was running on an offloading executor thread: client-executor-7-3. clientStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY, requestStrategy=OFFLOAD_ALL_STRATEGY
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.lambda$recordThread$0(ClientEffectiveStrategyTest.java:550)
		at java.base/java.util.concurrent.ConcurrentHashMap.compute(ConcurrentHashMap.java:1916)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.recordThread(ClientEffectiveStrategyTest.java:532)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder$1.lambda$request$0(ClientEffectiveStrategyTest.java:522)
		at io.servicetalk.concurrent.api.PublisherDoOnUtils$5.request(PublisherDoOnUtils.java:141)
		at io.servicetalk.concurrent.api.WhenSubscriptionPublisher$DoSubscriptionPublisherSubscriber$BeforeSubscription.request(WhenSubscriptionPublisher.java:83)
		at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:48)
		at io.servicetalk.concurrent.internal.DelayedSubscription.request(DelayedSubscription.java:77)
		at io.servicetalk.concurrent.api.DelayedCancellableThenSubscription.request(DelayedCancellableThenSubscription.java:46)
		at io.servicetalk.concurrent.api.SingleConcatWithPublisher$ConcatDeferNextSubscriber.request(SingleConcatWithPublisher.java:366)
		at io.servicetalk.concurrent.api.ScanWithPublisher$ScanWithSubscriber$1.request(ScanWithPublisher.java:117)
		at io.servicetalk.concurrent.api.TaskBasedAsyncPublisherOperator$OffloadedSubscription.executeTask(TaskBasedAsyncPublisherOperator.java:436)
		at io.servicetalk.concurrent.api.ContextPreservingRunnable.run(ContextPreservingRunnable.java:46)

@Scottmitch
Copy link
Member

https://github.com/apple/servicetalk/pull/2690/checks?check_run_id=16697253580

ClientEffectiveStrategyTest.Type=MULTI_DEFAULT_STRATEGY_SINGLE_BUILDER builder=OFFLOAD_NONE_STRATEGY filter=null LB=DEFAULT_HTTP_EXECUTION_STRATEGY CF=null

java.lang.AssertionError: API=BLOCKING_AGGREGATED, apiStrategy=OFFLOAD_EVENT_STRATEGY, clientStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY. Async Errors! See suppressed
	at io.servicetalk.test.resources.TestUtils.assertNoAsyncErrors(TestUtils.java:58)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.verifyOffloads(ClientEffectiveStrategyTest.java:562)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest.clientStrategy(ClientEffectiveStrategyTest.java:328)

	Suppressed: java.lang.AssertionError: Expected IoThread or ForkJoinPool-1-worker-3 at Send, but was running on an offloading executor thread: client-executor-7-5. clientStrategy=OFFLOAD_NONE_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY, requestStrategy=OFFLOAD_ALL_STRATEGY
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.lambda$recordThread$0(ClientEffectiveStrategyTest.java:550)
		at java.base/java.util.concurrent.ConcurrentHashMap.compute(ConcurrentHashMap.java:1932)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.recordThread(ClientEffectiveStrategyTest.java:532)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder$1.lambda$request$0(ClientEffectiveStrategyTest.java:522)
		at io.servicetalk.concurrent.api.PublisherDoOnUtils$5.request(PublisherDoOnUtils.java:141)
		at io.servicetalk.concurrent.api.WhenSubscriptionPublisher$DoSubscriptionPublisherSubscriber$BeforeSubscription.request(WhenSubscriptionPublisher.java:83)
		at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:48)
		at io.servicetalk.concurrent.internal.DelayedSubscription.request(DelayedSubscription.java:77)
		at io.servicetalk.concurrent.api.DelayedCancellableThenSubscription.request(DelayedCancellableThenSubscription.java:46)
		at io.servicetalk.concurrent.api.SingleConcatWithPublisher$ConcatDeferNextSubscriber.request(SingleConcatWithPublisher.java:366)
		at io.servicetalk.concurrent.api.ScanWithPublisher$ScanWithSubscriber$1.request(ScanWithPublisher.java:117)
		at io.servicetalk.concurrent.api.TaskBasedAsyncPublisherOperator$OffloadedSubscription.executeTask(TaskBasedAsyncPublisherOperator.java:436)
		at io.servicetalk.concurrent.api.ContextPreservingRunnable.run(ContextPreservingRunnable.java:46)

@daschl daschl self-assigned this Oct 3, 2023
@bryce-anderson
Copy link
Contributor

https://github.com/apple/servicetalk/pull/2737/checks?check_run_id=18060199944
Essentially identical as the last.

ClientEffectiveStrategyTest.Type=SINGLE_BUILDER builder=null filter=OFFLOAD_NONE_STRATEGY LB=null CF=OFFLOAD_NEVER_STRATEGY

java.lang.AssertionError: API=BLOCKING_AGGREGATED, apiStrategy=OFFLOAD_EVENT_STRATEGY, clientStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY. Async Errors! See suppressed
	at io.servicetalk.test.resources.TestUtils.assertNoAsyncErrors(TestUtils.java:58)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.verifyOffloads(ClientEffectiveStrategyTest.java:562)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest.clientStrategy(ClientEffectiveStrategyTest.java:337)
	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)
...

Suppressed: java.lang.AssertionError: Expected IoThread or ForkJoinPool-1-worker-1 at Send, but was running on an offloading executor thread: client-executor-7-3. clientStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY, requestStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.lambda$recordThread$0(ClientEffectiveStrategyTest.java:550)
		at java.base/java.util.concurrent.ConcurrentHashMap.compute(ConcurrentHashMap.java:1916)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.recordThread(ClientEffectiveStrategyTest.java:532)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder$1.lambda$request$0(ClientEffectiveStrategyTest.java:522)
		at io.servicetalk.concurrent.api.PublisherDoOnUtils$5.request(PublisherDoOnUtils.java:141)

@daschl
Copy link
Contributor

daschl commented Oct 27, 2023

@bryce-anderson thanks - good to understand that the last flaky test fixes did not help with this. looking.

@bryce-anderson
Copy link
Contributor

Another failure
https://github.com/apple/servicetalk/actions/runs/7008105255/job/19063661335#step:7:1036

ClientEffectiveStrategyTest > clientStrategy(BuilderType, HttpExecutionStrategy, HttpExecutionStrategy, HttpExecutionStrategy, HttpExecutionStrategy) > Type=SINGLE_BUILDER builder=OFFLOAD_SEND_STRATEGY filter=null LB=OFFLOAD_ALL_STRATEGY CF=OFFLOAD_NEVER_STRATEGY FAILED
    java.lang.AssertionError: API=ASYNC_STREAMING, apiStrategy=OFFLOAD_ALL_STRATEGY, clientStrategy=OFFLOAD_ALL_STRATEGY, expectedStrategy=OFFLOAD_ALL_STRATEGY. Async Errors! See suppressed
        at io.servicetalk.test.resources.TestUtils.assertNoAsyncErrors(TestUtils.java:58)
        at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.verifyOffloads(ClientEffectiveStrategyTest.java:562)
        at io.servicetalk.http.netty.ClientEffectiveStrategyTest.clientStrategy(ClientEffectiveStrategyTest.java:337)

The output didn't seem to contain a suppressed exception.

@Scottmitch
Copy link
Member

https://github.com/apple/servicetalk/pull/2769/checks?check_run_id=19163365328

ClientEffectiveStrategyTest.Type=SINGLE_BUILDER builder=null filter=null LB=OFFLOAD_NONE_STRATEGY CF=OFFLOAD_NONE_STRATEGY

java.lang.AssertionError: API=BLOCKING_AGGREGATED, apiStrategy=OFFLOAD_EVENT_STRATEGY, clientStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY. Async Errors! See suppressed
	at io.servicetalk.test.resources.TestUtils.assertNoAsyncErrors(TestUtils.java:58)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.verifyOffloads(ClientEffectiveStrategyTest.java:562)
	at io.servicetalk.http.netty.ClientEffectiveStrategyTest.clientStrategy(ClientEffectiveStrategyTest.java:328)
...
	Suppressed: java.lang.AssertionError: Expected IoThread or ForkJoinPool-1-worker-1 at Send, but was running on an offloading executor thread: client-executor-7-5. clientStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY, requestStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.lambda$recordThread$0(ClientEffectiveStrategyTest.java:550)
		at java.base/java.util.concurrent.ConcurrentHashMap.compute(ConcurrentHashMap.java:1940)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.recordThread(ClientEffectiveStrategyTest.java:532)
		at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder$1.lambda$request$0(ClientEffectiveStrategyTest.java:522)
		at io.servicetalk.concurrent.api.PublisherDoOnUtils$5.request(PublisherDoOnUtils.java:141)
		at io.servicetalk.concurrent.api.WhenSubscriptionPublisher$DoSubscriptionPublisherSubscriber$BeforeSubscription.request(WhenSubscriptionPublisher.java:83)
		at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:48)
		at io.servicetalk.concurrent.internal.DelayedSubscription.request(DelayedSubscription.java:77)
		at io.servicetalk.concurrent.api.DelayedCancellableThenSubscription.request(DelayedCancellableThenSubscription.java:46)
		at io.servicetalk.concurrent.api.SingleConcatWithPublisher$ConcatDeferNextSubscriber.request(SingleConcatWithPublisher.java:366)
		at io.servicetalk.concurrent.api.ScanWithPublisher$ScanWithSubscriber$1.request(ScanWithPublisher.java:117)
		at io.servicetalk.concurrent.api.TaskBasedAsyncPublisherOperator$OffloadedSubscription.executeTask(TaskBasedAsyncPublisherOperator.java:436)
		at io.servicetalk.concurrent.api.ContextPreservingRunnable.run(ContextPreservingRunnable.java:46)

@Scottmitch
Copy link
Member

https://github.com/apple/servicetalk/actions/runs/10959243976/job/30431175672?pr=3061#step:8:1437

> Task :servicetalk-http-netty:test

ClientEffectiveStrategyTest > clientStrategy(BuilderType, HttpExecutionStrategy, HttpExecutionStrategy, HttpExecutionStrategy, HttpExecutionStrategy) > Type=MULTI_DEFAULT_STRATEGY_SINGLE_BUILDER builder=null filter=OFFLOAD_NONE_STRATEGY LB=null CF=OFFLOAD_NEVER_STRATEGY FAILED
    java.lang.AssertionError: API=BLOCKING_AGGREGATED, apiStrategy=OFFLOAD_EVENT_STRATEGY, clientStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY. Async Errors! See suppressed
        at io.servicetalk.test.resources.TestUtils.assertNoAsyncErrors(TestUtils.java:58)
        at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.verifyOffloads(ClientEffectiveStrategyTest.java:566)
        at io.servicetalk.http.netty.ClientEffectiveStrategyTest.clientStrategy(ClientEffectiveStrategyTest.java:331)

@bryce-anderson
Copy link
Contributor

https://github.com/apple/servicetalk/actions/runs/10966985327/job/30455933910?pr=3062#step:8:1051

ClientEffectiveStrategyTest > clientStrategy(BuilderType, HttpExecutionStrategy, HttpExecutionStrategy, HttpExecutionStrategy, HttpExecutionStrategy) > Type=MULTI_DEFAULT_STRATEGY_SINGLE_BUILDER builder=DEFAULT_HTTP_EXECUTION_STRATEGY filter=null LB=null CF=OFFLOAD_NONE_STRATEGY FAILED
    java.lang.AssertionError: API=BLOCKING_AGGREGATED, apiStrategy=OFFLOAD_EVENT_STRATEGY, clientStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY. Async Errors! See suppressed
        at io.servicetalk.test.resources.TestUtils.assertNoAsyncErrors(TestUtils.java:58)
        at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.verifyOffloads(ClientEffectiveStrategyTest.java:566)
        at io.servicetalk.http.netty.ClientEffectiveStrategyTest.clientStrategy(ClientEffectiveStrategyTest.java:340)

@idelpivnitskiy
Copy link
Member

Failed multiple times in a row for a single PR: https://github.com/apple/servicetalk/actions/runs/11127685633/job/30931918614?pr=3071

> Task :servicetalk-http-netty:test

ClientEffectiveStrategyTest > clientStrategy(BuilderType, HttpExecutionStrategy, HttpExecutionStrategy, HttpExecutionStrategy, HttpExecutionStrategy) > Type=SINGLE_BUILDER builder=DEFAULT_HTTP_EXECUTION_STRATEGY filter=OFFLOAD_NEVER_STRATEGY LB=null CF=null FAILED
    java.lang.AssertionError: API=BLOCKING_AGGREGATED, apiStrategy=OFFLOAD_EVENT_STRATEGY, clientStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY. Async Errors! See suppressed
        at io.servicetalk.test.resources.TestUtils.assertNoAsyncErrors(TestUtils.java:58)
        at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.verifyOffloads(ClientEffectiveStrategyTest.java:566)
        at io.servicetalk.http.netty.ClientEffectiveStrategyTest.clientStrategy(ClientEffectiveStrategyTest.java:340)

@idelpivnitskiy
Copy link
Member

Another PR:
https://github.com/apple/servicetalk/actions/runs/11142084075/job/30964294843?pr=3072

ClientEffectiveStrategyTest > clientStrategy(BuilderType, HttpExecutionStrategy, HttpExecutionStrategy, HttpExecutionStrategy, HttpExecutionStrategy) > Type=MULTI_BUILDER builder=DEFAULT_HTTP_EXECUTION_STRATEGY filter=OFFLOAD_NEVER_STRATEGY LB=OFFLOAD_NONE_STRATEGY CF=null FAILED
    java.lang.AssertionError: API=BLOCKING_AGGREGATED, apiStrategy=OFFLOAD_EVENT_STRATEGY, clientStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY. Async Errors! See suppressed
        at io.servicetalk.test.resources.TestUtils.assertNoAsyncErrors(TestUtils.java:58)
        at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.verifyOffloads(ClientEffectiveStrategyTest.java:566)
        at io.servicetalk.http.netty.ClientEffectiveStrategyTest.clientStrategy(ClientEffectiveStrategyTest.java:331)

@bryce-anderson
Copy link
Contributor

Another in the nightly runs:
https://github.com/apple/servicetalk/actions/runs/11238258274/job/31242591590#step:9:1151

ClientEffectiveStrategyTest > clientStrategy(BuilderType, HttpExecutionStrategy, HttpExecutionStrategy, HttpExecutionStrategy, HttpExecutionStrategy) > Type=MULTI_DEFAULT_STRATEGY_SINGLE_BUILDER builder=OFFLOAD_NEVER_STRATEGY filter=null LB=DEFAULT_HTTP_EXECUTION_STRATEGY CF=OFFLOAD_ALL_STRATEGY FAILED
    java.lang.AssertionError: API=BLOCKING_AGGREGATED, apiStrategy=OFFLOAD_EVENT_STRATEGY, clientStrategy=DEFAULT_HTTP_EXECUTION_STRATEGY, expectedStrategy=OFFLOAD_NONE_STRATEGY. Async Errors! See suppressed
        at io.servicetalk.test.resources.TestUtils.assertNoAsyncErrors(TestUtils.java:58)
        at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.verifyOffloads(ClientEffectiveStrategyTest.java:566)
        at io.servicetalk.http.netty.ClientEffectiveStrategyTest.clientStrategy(ClientEffectiveStrategyTest.java:331)

@bryce-anderson
Copy link
Contributor

I'm concerned that this test is surfacing some of the inherent race behaviors in our async streams. This is a general idea, but we tend to queue events in our async-streams when another thread has 'taken the lock' so to speak, and that causes events to end up being run by threads that didn't submit them. This is tangentially what's happening in #1894. If that's the case, fixing it will be really involved (we'd need to re-think the queue system). In the meantime, I think we should consider disabling this test unless someone has some better ideas for how to debug/de-flake it.

bryce-anderson added a commit to bryce-anderson/servicetalk that referenced this issue Nov 14, 2024
Motivation:

We had previously disabled the clientStrategy test because it's flaky.
According to the notes in the issue (apple#2245) it is only in one part,
and that is in the Send stage which appears to be offloaded when it
shouldn't be.

Modifications:

Re-enable the test and prune those errors, and log them.
bryce-anderson added a commit to bryce-anderson/servicetalk that referenced this issue Nov 14, 2024
Motivation:

We had previously disabled the clientStrategy test because it's flaky.
According to the notes in the issue (apple#2245) it is only in one part,
and that is in the Send stage which appears to be offloaded when it
shouldn't be.

Modifications:

Re-enable the test and prune those errors, and log them.
bryce-anderson added a commit that referenced this issue Nov 14, 2024
…3105)

Motivation:

We had previously disabled the clientStrategy test because it's flaky.
According to the notes in the issue (#2245) it is only in one part,
and that is in the Send stage which appears to be offloaded when it
shouldn't be.

Modifications:

Re-enable the test and prune those errors, and log them.
@bryce-anderson
Copy link
Contributor

Another pop: https://github.com/apple/servicetalk/actions/runs/12204191501/job/34048759889?pr=3131#step:8:963

ClientEffectiveStrategyTest > clientStrategy(BuilderType, HttpExecutionStrategy, HttpExecutionStrategy, HttpExecutionStrategy, HttpExecutionStrategy) > Type=SINGLE_BUILDER builder=DEFAULT_HTTP_EXECUTION_STRATEGY filter=null LB=DEFAULT_HTTP_EXECUTION_STRATEGY CF=DEFAULT_HTTP_EXECUTION_STRATEGY FAILED
    java.lang.AssertionError: API=ASYNC_STREAMING, apiStrategy=OFFLOAD_ALL_STRATEGY, clientStrategy=OFFLOAD_ALL_STRATEGY, expectedStrategy=OFFLOAD_ALL_STRATEGY. Async Errors! See suppressed
        at io.servicetalk.test.resources.TestUtils.assertNoAsyncErrors(TestUtils.java:58)
        at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.verifyOffloads(ClientEffectiveStrategyTest.java:596)
        at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.flakyVerifyOffloads(ClientEffectiveStrategyTest.java:592)
        at io.servicetalk.http.netty.ClientEffectiveStrategyTest.clientStrategy(ClientEffectiveStrategyTest.java:345)

@idelpivnitskiy
Copy link
Member

https://github.com/apple/servicetalk/actions/runs/12438687624/job/34731061698?pr=3152

ClientEffectiveStrategyTest > clientStrategy(BuilderType, HttpExecutionStrategy, HttpExecutionStrategy, HttpExecutionStrategy, HttpExecutionStrategy) > Type=SINGLE_BUILDER builder=DEFAULT_HTTP_EXECUTION_STRATEGY filter=DEFAULT_HTTP_EXECUTION_STRATEGY LB=OFFLOAD_ALL_STRATEGY CF=DEFAULT_HTTP_EXECUTION_STRATEGY FAILED
    java.lang.AssertionError: Unexpected offload points recorded. {Send=offloaded, ReceiveMeta=offloaded, ReceiveData=offloaded}
    Expected: is <3>
         but: was <2>
        at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:20)
        at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.verifyOffloads(ClientEffectiveStrategyTest.java:599)
        at io.servicetalk.http.netty.ClientEffectiveStrategyTest$ClientInvokingThreadRecorder.flakyVerifyOffloads(ClientEffectiveStrategyTest.java:592)
        at io.servicetalk.http.netty.ClientEffectiveStrategyTest.clientStrategy(ClientEffectiveStrategyTest.java:345)

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
Development

No branches or pull requests

6 participants