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

Updates to Spring Boot 2.2 and stops using proxyBeanMethods #2864

Merged
merged 2 commits into from
Oct 21, 2019

Conversation

codefromthecrypt
Copy link
Member

proxyBeanMethods is disablable in Spring 5.2, shipped with Spring Boot 2.2

Fixes #2863

@codefromthecrypt
Copy link
Member Author

ITZipkinSelfTracing is the only thing dead..

@codefromthecrypt
Copy link
Member Author

slim starts fine from jar

2019-10-19 07:42:40:304 [main] INFO ZipkinServer - Started ZipkinServer in 1.527 seconds (JVM running for 1.906)

@codefromthecrypt
Copy link
Member Author

best time before this commit for slim

2019-10-19 07:50:03:171 [main] INFO ZipkinServer - Started ZipkinServer in 1.574 seconds (JVM running for 1.932)

@codefromthecrypt
Copy link
Member Author

tested complex run of slim and things wire properly

STORAGE_TYPE=elasticsearch STORAGE_THROTTLE_ENABLED=true SELF_TRACING_ENABLED=true java -jar ./zipkin-server/target/zipkin-server-*slim.jar

also same with cassandra.. though there's an old bug in the executor setup for self-tracing we'll want to sort out.

STORAGE_TYPE=cassandra3 STORAGE_THROTTLE_ENABLED=true SELF_TRACING_ENABLED=true java -jar ./zipkin-server/target/zipkin-server-*exec.jar
2019-10-20 08:21:20.585  WARN 54126 --- [onPool-worker-3] .a.c.b.RequestContextCurrentTraceContext : Attempted to propagate trace context, but no request context available. Did you forget to use RequestContext.contextAwareExecutor() or RequestContext.makeContextAware()?

com.linecorp.armeria.common.brave.RequestContextCurrentTraceContext$LogRequestContextWarningOnce$NoRequestContextException: null
	at com.linecorp.armeria.common.brave.RequestContextCurrentTraceContext$LogRequestContextWarningOnce$ClassLoaderHack.<clinit>(RequestContextCurrentTraceContext.java:289) ~[armeria-brave-0.94.0.jar!/:?]
	at com.linecorp.armeria.common.brave.RequestContextCurrentTraceContext$LogRequestContextWarningOnce.get(RequestContextCurrentTraceContext.java:277) ~[armeria-brave-0.94.0.jar!/:?]
	at com.linecorp.armeria.common.brave.RequestContextCurrentTraceContext$LogRequestContextWarningOnce.get(RequestContextCurrentTraceContext.java:267) ~[armeria-brave-0.94.0.jar!/:?]
	at com.linecorp.armeria.common.RequestContext.mapCurrent(RequestContext.java:108) ~[armeria-0.94.0.jar!/:?]
	at com.linecorp.armeria.common.brave.RequestContextCurrentTraceContext.getRequestContextOrWarnOnce(RequestContextCurrentTraceContext.java:252) ~[armeria-brave-0.94.0.jar!/:?]
	at com.linecorp.armeria.common.brave.RequestContextCurrentTraceContext.get(RequestContextCurrentTraceContext.java:165) ~[armeria-brave-0.94.0.jar!/:?]
	at brave.Tracer.currentSpan(Tracer.java:450) ~[brave-5.8.0.jar!/:?]
	at brave.cassandra.driver.TracingSession.nextSpan(TracingSession.java:118) ~[brave-instrumentation-cassandra-driver-0.10.3.jar!/:?]
	at brave.cassandra.driver.TracingSession.executeAsync(TracingSession.java:76) ~[brave-instrumentation-cassandra-driver-0.10.3.jar!/:?]
	at com.datastax.driver.core.AbstractSession.execute(AbstractSession.java:58) ~[cassandra-driver-core-3.7.2-shaded.jar!/:?]
	at zipkin2.storage.cassandra.CassandraStorage.check(CassandraStorage.java:249) ~[zipkin-storage-cassandra-2.18.3-SNAPSHOT.jar!/:?]
	at zipkin2.storage.ForwardingStorageComponent.check(ForwardingStorageComponent.java:62) ~[zipkin-2.18.3-SNAPSHOT.jar!/:?]
	at zipkin2.server.internal.brave.TracingStorageComponent.check(TracingStorageComponent.java:68) ~[classes!/:?]
	at zipkin2.server.internal.health.ComponentHealth.ofComponent(ComponentHealth.java:27) ~[classes!/:?]
	at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195) [?:?]
	at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1654) [?:?]
	at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484) [?:?]
	at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474) [?:?]
	at java.util.stream.ReduceOps$ReduceTask.doLeaf(ReduceOps.java:952) [?:?]
	at java.util.stream.ReduceOps$ReduceTask.doLeaf(ReduceOps.java:926) [?:?]
	at java.util.stream.AbstractTask.compute(AbstractTask.java:327) [?:?]
	at java.util.concurrent.CountedCompleter.exec(CountedCompleter.java:746) [?:?]
	at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290) [?:?]
	at java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020) [?:?]
	at java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656) [?:?]
	at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594) [?:?]
	at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177) [?:?]

@anuraaga
Copy link
Contributor

Ah that is because we use Stream.parallel in the health component which pushes to an untraced forkjoinpool. I was a bit nervous about that since I tend to find parallel's threading model too opaque, but didn't mention it in the code review. Next time I will though :) I can help untangle that don't think it needs to be in this PR.

@codefromthecrypt codefromthecrypt merged commit 92ae8ca into master Oct 21, 2019
@codefromthecrypt codefromthecrypt deleted the spring-boot-2.2 branch October 21, 2019 02:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Update auto-configuration to use @Configuration(proxyBeanMethods=false)
2 participants