-
Notifications
You must be signed in to change notification settings - Fork 2
Open
Description
Looks like we might have to review the thread safety. Noticed the CI failure:
[INFO] -------------------------------------------------------
[INFO] T E S T S
[INFO] -------------------------------------------------------
[INFO] Running io.roastedroot.proxywasm.jaxrs.example.tests.HttpCallTest
Jun 03, 2025 5:27:49 PM org.glassfish.jersey.message.internal.MessagingBinders$EnabledProvidersBinder bindToBinder
WARNING: A class jakarta.activation.DataSource for a default provider MessageBodyWriter<jakarta.activation.DataSource> was not found. The provider is not available.
Jun 03, 2025 5:27:49 PM org.glassfish.jersey.server.wadl.WadlFeature configure
WARNING: JAX-B API not found . WADL feature is disabled.
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.codehaus.groovy.vmplugin.v9.Java9 (file:/Users/runner/.m2/repository/org/apache/groovy/groovy/4.0.22/groovy-4.0.22.jar) to constructor java.lang.AssertionError(java.lang.String)
WARNING: Please consider reporting this to the maintainers of org.codehaus.groovy.vmplugin.v9.Java9
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
panic: invalid context id on proxy_on_response_headers
goroutine 1 [running]:
github.com/proxy-wasm/proxy-wasm-go-sdk/proxywasm/internal.proxyOnResponseHeaders(0x2, 0xe, 0x0)
/go/pkg/mod/github.com/proxy-wasm/[email protected]/proxywasm/internal/abi_callback_l7.go:70 +0x11
Jun 03, 2025 5:27:55 PM org.glassfish.jersey.server.ServerRuntime$Responder process
SEVERE: Error occurred when processing a response created from an already mapped exception.
Jun 03, 2025 5:27:55 PM org.glassfish.jersey.server.ServerRuntime$Responder process
WARNING: An exception mapping did not successfully produce and processed a response. Logging the exception propagated to the default exception mapper.
org.glassfish.jersey.server.internal.process.MappableException: com.dylibso.chicory.runtime.TrapException: Trapped on unreachable instruction
at org.glassfish.jersey.server.ContainerFilteringStage$ResponseFilterStage.apply(ContainerFilteringStage.java:174)
at org.glassfish.jersey.server.ContainerFilteringStage$ResponseFilterStage.apply(ContainerFilteringStage.java:139)
at org.glassfish.jersey.process.internal.Stages.process(Stages.java:147)
at org.glassfish.jersey.server.ServerRuntime$Responder.processResponse(ServerRuntime.java:396)
at org.glassfish.jersey.server.ServerRuntime$Responder.process(ServerRuntime.java:450)
at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:282)
at org.glassfish.jersey.internal.Errors$1.call(Errors.java:248)
at org.glassfish.jersey.internal.Errors$1.call(Errors.java:244)
at org.glassfish.jersey.internal.Errors.process(Errors.java:292)
at org.glassfish.jersey.internal.Errors.process(Errors.java:274)
at org.glassfish.jersey.internal.Errors.process(Errors.java:244)
at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:266)
at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:253)
at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:696)
at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:397)
at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:349)
at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:358)
at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:312)
at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:205)
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:764)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:529)
at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:221)
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1580)
at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:221)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1381)
at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:176)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:484)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1553)
at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:174)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1303)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:129)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:122)
at org.eclipse.jetty.server.Server.handle(Server.java:563)
at org.eclipse.jetty.server.HttpChannel$RequestDispatchable.dispatch(HttpChannel.java:1598)
at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:753)
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:501)
at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:287)
at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:314)
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:100)
at org.eclipse.jetty.io.SelectableChannelEndPoint$1.run(SelectableChannelEndPoint.java:53)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:969)
at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.doRunJob(QueuedThreadPool.java:1194)
at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1149)
at java.base/java.lang.Thread.run(Thread.java:829)
Caused by: com.dylibso.chicory.runtime.TrapException: Trapped on unreachable instruction
at com.dylibso.chicory.$gen.CompiledMachineShaded.throwTrapException(Shaded.java:187)
at com.dylibso.chicory.$gen.CompiledMachineFuncGroup_0.func_1281(Unknown Source)
at com.dylibso.chicory.$gen.CompiledMachineFuncGroup_0.func_646(Unknown Source)
at com.dylibso.chicory.$gen.CompiledMachineFuncGroup_0.func_1219(Unknown Source)
at com.dylibso.chicory.$gen.CompiledMachineFuncGroup_0.func_1750(Unknown Source)
at com.dylibso.chicory.$gen.CompiledMachineFuncGroup_0.func_1789(Unknown Source)
at com.dylibso.chicory.$gen.CompiledMachineFuncGroup_0.call_1789(Unknown Source)
at com.dylibso.chicory.$gen.CompiledMachineDispatch_0.call_dispatch_0(Unknown Source)
at com.dylibso.chicory.$gen.CompiledMachineMachineCall.call(Unknown Source)
at com.dylibso.chicory.$gen.CompiledMachine.call(wasm)
at com.dylibso.chicory.runtime.Instance$Exports.lambda$function$0(Instance.java:214)
at io.roastedroot.proxywasm.internal.ABI.proxyOnResponseHeaders(ABI.java:1230)
at io.roastedroot.proxywasm.internal.HttpContext.callOnResponseHeaders(HttpContext.java:36)
at io.roastedroot.proxywasm.jaxrs.ProxyWasmFilter.filter(ProxyWasmFilter.java:[258](https://github.com/roastedroot/proxy-wasm-java-host/actions/runs/15423840134/job/43405677268#step:4:259))
at io.roastedroot.proxywasm.jaxrs.ProxyWasmFilter.filter(ProxyWasmFilter.java:239)
at org.glassfish.jersey.server.ContainerFilteringStage$ResponseFilterStage.apply(ContainerFilteringStage.java:172)
... 43 more
panic: invalid context id on proxy_on_response_headers
fatal error: panic during malloc
panic during panic
goroutine 1 gp=0x4001c0 m=0 mp=0x194920 [running]:
runtime.throw({0x35742, 0x13})
/usr/local/go/src/runtime/panic.go:1101 +0x3 fp=0x43eda8 sp=0x43ed80 pc=0x14ad0003
panic({0x14840, 0x5baf0})
/usr/local/go/src/runtime/panic.go:763 +0x4d fp=0x43ee50 sp=0x43eda8 pc=0x14a8004d
github.com/proxy-wasm/proxy-wasm-go-sdk/proxywasm/internal.proxyOnResponseHeaders(0x2, 0x2, 0x0)
/go/pkg/mod/github.com/proxy-wasm/[email protected]/proxywasm/internal/abi_callback_l7.go:70 +0x11 fp=0x43ee80 sp=0x43ee50 pc=0x16bb0011
proxy_on_response_headers()
<autogenerated>:1 +0x1 fp=0x43eea0 sp=0x43ee80 pc=0x16e20001
runtime.crash(...)
/usr/local/go/src/runtime/os_wasm.go:100
runtime.fatalpanic(0x43ef10)
/usr/local/go/src/runtime/panic.go:1328 +0x6 fp=0x43eee8 sp=0x43eea0 pc=0x126b0006
panic({0x14840, 0x5baf0})
/usr/local/go/src/runtime/panic.go:811 +0x23 fp=0x43ef90 sp=0x43eee8 pc=0x14a80023
github.com/proxy-wasm/proxy-wasm-go-sdk/proxywasm/internal.proxyOnResponseHeaders(0x2, 0xe, 0x0)
/go/pkg/mod/github.com/proxy-wasm/[email protected]/proxywasm/internal/abi_callback_l7.go:70 +0x11 fp=0x43efc0 sp=0x43ef90 pc=0x16bb0011
proxy_on_response_headers()
<autogenerated>:1 +0x1 fp=0x43efe0 sp=0x43efc0 pc=0x16e20001
runtime.goexit({})
/usr/local/go/src/runtime/asm_wasm.s:434 +0x1 fp=0x43efe8 sp=0x43efe0 pc=0x150f0001
goroutine 2 gp=0x400380 m=nil [force gc (idle)]:
runtime.gopark(0x3cda0, 0x1937d0, 0x11, 0xa, 0x1)
/usr/local/go/src/runtime/proc.go:435 +0x22 fp=0x42efb0 sp=0x42ef88 pc=0x14ae0022
runtime.goparkunlock(...)
/usr/local/go/src/runtime/proc.go:441
runtime.forcegchelper()
/usr/local/go/src/runtime/proc.go:348 +0x1b fp=0x42efe0 sp=0x42efb0 pc=0x128a001b
runtime.goexit({})
/usr/local/go/src/runtime/asm_wasm.s:434 +0x1 fp=0x42efe8 sp=0x42efe0 pc=0x150f0001
created by runtime.init.6 in goroutine 1
/usr/local/go/src/runtime/proc.go:336 +0x2
goroutine 3 gp=0x400540 m=nil [GC sweep wait]:
runtime.gopark(0x3cda0, 0x193920, 0xc, 0x9, 0x1)
/usr/local/go/src/runtime/proc.go:435 +0x22 fp=0x42f790 sp=0x42f768 pc=0x14ae0022
runtime.goparkunlock(...)
/usr/local/go/src/runtime/proc.go:441
runtime.bgsweep(0x432000)
/usr/local/go/src/runtime/mgcsweep.go:276 +0xc fp=0x42f7d0 sp=0x42f790 pc=0x11aa000c
runtime.gcenable.gowrap1()
/usr/local/go/src/runtime/mgc.go:204 +0x2 fp=0x42f7e0 sp=0x42f7d0 pc=0x112e0002
runtime.goexit({})
/usr/local/go/src/runtime/asm_wasm.s:434 +0x1 fp=0x42f7e8 sp=0x42f7e0 pc=0x150f0001
created by runtime.gcenable in goroutine 1
/usr/local/go/src/runtime/mgc.go:204 +0x6
goroutine 4 gp=0x400700 m=nil [GC scavenge wait]:
runtime.gopark(0x3cda0, 0x193b40, 0xd, 0xa, 0x2)
/usr/local/go/src/runtime/proc.go:435 +0x22 fp=0x42ff80 sp=0x42ff58 pc=0x14ae0022
runtime.goparkunlock(...)
/usr/local/go/src/runtime/proc.go:441
runtime.(*scavengerState).park(0x193b40)
/usr/local/go/src/runtime/mgcscavenge.go:425 +0xc fp=0x42ffa8 sp=0x42ff80 pc=0x1188000c
runtime.bgscavenge(0x432000)
/usr/local/go/src/runtime/mgcscavenge.go:653 +0x4 fp=0x42ffd0 sp=0x42ffa8 pc=0x118d0004
runtime.gcenable.gowrap2()
/usr/local/go/src/runtime/mgc.go:205 +0x2 fp=0x42ffe0 sp=0x42ffd0 pc=0x112d0002
runtime.goexit({})
/usr/local/go/src/runtime/asm_wasm.s:434 +0x1 fp=0x42ffe8 sp=0x42ffe0 pc=0x150f0001
created by runtime.gcenable in goroutine 1
/usr/local/go/src/runtime/mgc.go:205 +0xa
goroutine 5 gp=0x4008c0 m=nil [runnable]:
runtime.runfinq()
/usr/local/go/src/runtime/mfinal.go:179 fp=0x42e7e0 sp=0x42e7d8 pc=0x11240000
runtime.goexit({})
/usr/local/go/src/runtime/asm_wasm.s:434 +0x1 fp=0x42e7e8 sp=0x42e7e0 pc=0x150f0001
created by runtime.createfing in goroutine 1
/usr/local/go/src/runtime/mfinal.go:166 +0xc
fatal error: unlock of unlocked lock
stack trace unavailable
Jun 03, 2025 5:27:57 PM org.glassfish.jersey.server.wadl.WadlFeature configure
WARNING: JAX-B API not found . WADL feature is disabled.
Error: Tests run: 2, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 14.38 s <<< FAILURE! -- in io.roastedroot.proxywasm.jaxrs.example.tests.HttpCallTest
Error: io.roastedroot.proxywasm.jaxrs.example.tests.HttpCallTest.httpCallTestsAndFFI -- Time elapsed: 11.09 s <<< FAILURE!
java.lang.AssertionError:
1 expectation failed.
Expected status code <200> but was <500>.
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
at org.codehaus.groovy.reflection.CachedConstructor.invoke(CachedConstructor.java:73)
at org.codehaus.groovy.reflection.CachedConstructor.doConstructorInvoke(CachedConstructor.java:60)
at org.codehaus.groovy.runtime.callsite.ConstructorSite$ConstructorSiteNoUnwrap.callConstructor(ConstructorSite.java:86)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallConstructor(CallSiteArray.java:57)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callConstructor(AbstractCallSite.java:[263](https://github.com/roastedroot/proxy-wasm-java-host/actions/runs/15423840134/job/43405677268#step:4:264))
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callConstructor(AbstractCallSite.java:277)
at io.restassured.internal.ResponseSpecificationImpl$HamcrestAssertionClosure.validate(ResponseSpecificationImpl.groovy:512)
at io.restassured.internal.ResponseSpecificationImpl$HamcrestAssertionClosure$validate$1.call(Unknown Source)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:45)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:125)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:139)
at io.restassured.internal.ResponseSpecificationImpl.validateResponseIfRequired(ResponseSpecificationImpl.groovy:696)
at io.restassured.internal.ResponseSpecificationImpl.this$2$validateResponseIfRequired(ResponseSpecificationImpl.groovy)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at org.codehaus.groovy.runtime.callsite.PlainObjectMetaMethodSite.doInvoke(PlainObjectMetaMethodSite.java:43)
at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite$PogoCachedMethodSiteNoUnwrapNoCoerce.invoke(PogoMetaMethodSite.java:198)
at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.callCurrent(PogoMetaMethodSite.java:62)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:49)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:171)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:185)
at io.restassured.internal.ResponseSpecificationImpl.statusCode(ResponseSpecificationImpl.groovy:135)
at io.restassured.specification.ResponseSpecification$statusCode$0.callCurrent(Unknown Source)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:49)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:171)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:185)
at io.restassured.internal.ResponseSpecificationImpl.statusCode(ResponseSpecificationImpl.groovy:143)
at io.restassured.internal.ValidatableResponseOptionsImpl.statusCode(ValidatableResponseOptionsImpl.java:89)
at io.roastedroot.proxywasm.jaxrs.example.tests.HttpCallTest.httpCallTestsAndFFI(HttpCallTest.java:28)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1541)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1541)
[INFO] Running io.roastedroot.proxywasm.jaxrs.example.tests.HeadersTest
Jun 03, 2025 5:28:00 PM org.glassfish.jersey.server.wadl.WadlFeature configure
WARNING: JAX-B API not found . WADL feature is disabled.
Jun 03, 2025 5:28:03 PM org.glassfish.jersey.server.wadl.WadlFeature configure
WARNING: JAX-B API not found . WADL feature is disabled.
[INFO] Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 7.456 s -- in io.roastedroot.proxywasm.jaxrs.example.tests.HeadersTest
[INFO] Running io.roastedroot.proxywasm.jaxrs.example.tests.FFITest
Jun 03, 2025 5:28:07 PM org.glassfish.jersey.server.wadl.WadlFeature configure
WARNING: JAX-B API not found . WADL feature is disabled.
[INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 3.[291](https://github.com/roastedroot/proxy-wasm-java-host/actions/runs/15423840134/job/43405677268#step:4:292) s -- in io.roastedroot.proxywasm.jaxrs.example.tests.FFITest
[INFO] Running io.roastedroot.proxywasm.jaxrs.example.tests.TickTest
Jun 03, 2025 5:28:11 PM org.glassfish.jersey.server.wadl.WadlFeature configure
WARNING: JAX-B API not found . WADL feature is disabled.
[INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 4.217 s -- in io.roastedroot.proxywasm.jaxrs.example.tests.TickTest
[INFO]
[INFO] Results:
[INFO]
Error: Failures:
Error: HttpCallTest.httpCallTestsAndFFI:28 1 expectation failed.
Expected status code <200> but was <500>.
Metadata
Metadata
Assignees
Labels
No labels