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

[Bug] eagerappcds 与transmittable-thread-local的 agent 无法兼容 #632

Open
wangshiyu13 opened this issue May 7, 2024 · 1 comment

Comments

@wangshiyu13
Copy link

Description
eagerappcds 在 trace 阶段正常,replay 阶段会出现Bootstrap loader class path中期望的 jar 顺序与实际顺序不一致的情况。

JDK version
openjdk version "1.8.0_402"
OpenJDK Runtime Environment (Alibaba Dragonwell Extended Edition 8.18.19) (build 1.8.0_402-b01)
OpenJDK 64-Bit Server VM (Alibaba Dragonwell Extended Edition 8.18.19) (build 25.402-b01, mixed mode)

java -server -javaagent:/transmittable-thread-local-2.13.0-SNAPSHOT.jar -XX:-OmitStackTraceInFastThrow -XX:+TraceClassPaths -Xquickstart:path=/root/alibaba.quickstart.sharedcache  -Xquickstart:verbose -Dzeusrpc-appkey=moqipobing.wanba.report -Dwb.appname=report -Dserver.port=80 -XX:+UnlockExperimentalVMOptions -XX:+UseCGroupMemoryLimitForHeap -Dmicroserver.host=0.0.0.0 -Dmicroserver.port=80 -Dlog4j.log.dir=80 -Dmicroserver.maxThreads=400 -Dmicroserver.minThreads=50 -Dmicroserver.queueCapacity=12000 -Dmicroserver.queueGrowBy=100 -Dfastjson.parser.safeMode=true -Dwb.env=develop -jar /tmp/test.jar
[classpath: /tmp/test.jar]
cache path is set from -Xquickstart:path=/root/alibaba.quickstart.sharedcache
Running as replayer
[Bootstrap loader class path=/jw/dragonwell-8.18.19/jre/lib/resources.jar:/jw/dragonwell-8.18.19/jre/lib/rt.jar:/jw/dragonwell-8.18.19/jre/lib/sunrsasign.jar:/jw/dragonwell-8.18.19/jre/lib/jsse.jar:/jw/dragonwell-8.18.19/jre/lib/jce.jar:/jw/dragonwell-8.18.19/jre/lib/charsets.jar:/jw/dragonwell-8.18.19/jre/lib/jfr.jar:/jw/dragonwell-8.18.19/jre/classes:/jw/dragonwell-8.18.19/jre/lib/amd64/serverless/serverless-adapter.jar:/transmittable-thread-local-2.13.0-SNAPSHOT.jar]
[type=BOOT Expecting -Dsun.boot.class.path=/jw/dragonwell-8.18.19/jre/lib/resources.jar:/jw/dragonwell-8.18.19/jre/lib/rt.jar:/jw/dragonwell-8.18.19/jre/lib/sunrsasign.jar:/jw/dragonwell-8.18.19/jre/lib/jsse.jar:/jw/dragonwell-8.18.19/jre/lib/jce.jar:/jw/dragonwell-8.18.19/jre/lib/charsets.jar:/jw/dragonwell-8.18.19/jre/lib/jfr.jar:/jw/dragonwell-8.18.19/jre/classes:/jw/dragonwell-8.18.19/jre/lib/amd64/serverless/serverless-adapter.jar]
[BOOT classpath mismatch, actual: -Dsun.boot.class.path=/jw/dragonwell-8.18.19/jre/lib/resources.jar:/jw/dragonwell-8.18.19/jre/lib/rt.jar:/jw/dragonwell-8.18.19/jre/lib/sunrsasign.jar:/jw/dragonwell-8.18.19/jre/lib/jsse.jar:/jw/dragonwell-8.18.19/jre/lib/jce.jar:/jw/dragonwell-8.18.19/jre/lib/charsets.jar:/jw/dragonwell-8.18.19/jre/lib/jfr.jar:/jw/dragonwell-8.18.19/jre/classes:/jw/dragonwell-8.18.19/jre/lib/amd64/serverless/serverless-adapter.jar:/transmittable-thread-local-2.13.0-SNAPSHOT.jar]
An error has occurred while processing the shared archive file.
shared class paths mismatch (hint: enable -XX:+TraceClassPaths to diagnose the failure)
Error occurred during initialization of VM
Unable to use shared archive.
@wangshiyu13
Copy link
Author

对启动信息提取后发现 quickstart 对 ttl 无法正常生成shared_classpath_index

FIXME shared_classpath_index is wrong: com.alibaba.ttl.TransmittableThreadLocal 0
FIXME shared_classpath_index is wrong: com.alibaba.ttl.TransmittableThreadLocal 0
FIXME shared_classpath_index is wrong: sun.security.ec.SunEC -1
FIXME shared_classpath_index is wrong: sun.security.ec.SunEC -1
[Opened /jw/dragonwell-8.18.19/jre/lib/jsse.jar]
[Opened /jw/dragonwell-8.18.19/jre/lib/jce.jar]
FIXME shared_classpath_index is wrong: sun.security.ec.SunEC$1 -1
FIXME shared_classpath_index is wrong: sun.security.ec.SunECEntries -1
FIXME shared_classpath_index is wrong: com.sun.crypto.provider.SunJCE -1
FIXME shared_classpath_index is wrong: com.sun.crypto.provider.SunJCE -1
FIXME shared_classpath_index is wrong: com.sun.crypto.provider.SunJCE$1 -1
FIXME shared_classpath_index is wrong: com.sun.crypto.provider.AESCipher$General -1
FIXME shared_classpath_index is wrong: com.sun.crypto.provider.AESCipher -1
FIXME shared_classpath_index is wrong: com.sun.crypto.provider.SymmetricCipher -1
FIXME shared_classpath_index is wrong: com.sun.crypto.provider.AESCrypt -1
FIXME shared_classpath_index is wrong: com.sun.crypto.provider.AESConstants -1
FIXME shared_classpath_index is wrong: com.sun.crypto.provider.CipherCore -1
FIXME shared_classpath_index is wrong: com.sun.crypto.provider.FeedbackCipher -1
FIXME shared_classpath_index is wrong: com.sun.crypto.provider.ElectronicCodeBook -1
FIXME shared_classpath_index is wrong: com.sun.crypto.provider.Padding -1
FIXME shared_classpath_index is wrong: com.sun.crypto.provider.CipherBlockChaining -1
FIXME shared_classpath_index is wrong: com.sun.crypto.provider.CipherTextStealing -1
FIXME shared_classpath_index is wrong: com.sun.crypto.provider.CounterMode -1
FIXME shared_classpath_index is wrong: com.sun.crypto.provider.GaloisCounterMode -1
FIXME shared_classpath_index is wrong: com.sun.crypto.provider.CipherFeedback -1
FIXME shared_classpath_index is wrong: com.sun.crypto.provider.OutputFeedback -1
FIXME shared_classpath_index is wrong: com.sun.crypto.provider.PCBC -1
FIXME shared_classpath_index is wrong: com.sun.crypto.provider.PKCS5Padding -1
FIXME shared_classpath_index is wrong: com.sun.crypto.provider.GCTR -1
FIXME shared_classpath_index is wrong: com.sun.crypto.provider.GHASH -1
FIXME shared_classpath_index is wrong: com.sun.crypto.provider.RangeUtil -1
FIXME shared_classpath_index is wrong: com.sun.crypto.provider.Preconditions -1
FIXME shared_classpath_index is wrong: com.sun.crypto.provider.Preconditions$1 -1

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

No branches or pull requests

1 participant