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

Raise StackOverflowError with latest version sdk (3.23.9.1) #141

Open
Shawyeok opened this issue Dec 8, 2023 · 3 comments
Open

Raise StackOverflowError with latest version sdk (3.23.9.1) #141

Shawyeok opened this issue Dec 8, 2023 · 3 comments

Comments

@Shawyeok
Copy link

Shawyeok commented Dec 8, 2023

Runtime JDK 11, with sdk com.huaweicloud:esdk-obs-java-bundle:3.23.9.1

2023-12-08T06:14:55.533Z [ArchiveThread-persistent://data/uu/feature.plain.result.queue-partition-0] ERROR com.xxx.archive.PartitionArchive - Last message archive upload failed, exit message archive
com.obs.services.exception.ObsException: OBS service Error Message. Request Error: java.lang.StackOverflowError
	at com.obs.services.internal.utils.ServiceUtils.changeFromServiceException(ServiceUtils.java:540)
	at com.obs.services.AbstractClient.doActionWithResult(AbstractClient.java:398)
	at com.obs.services.AbstractObjectClient.putObject(AbstractObjectClient.java:284)
	at com.obs.services.AbstractObjectClient.putObject(AbstractObjectClient.java:321)
	at com.xxx.obs.HuaweiObjectStorageService.lambda$putArchive$0(HuaweiObjectStorageService.java:86)
	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:834)
Caused by: java.lang.StackOverflowError
	at java.base/java.util.Collections$UnmodifiableCollection.isEmpty(Collections.java:1033)
	at java.base/java.util.Collections$UnmodifiableCollection.isEmpty(Collections.java:1033)
	at java.base/java.util.Collections$UnmodifiableCollection.isEmpty(Collections.java:1033)
	at java.base/java.util.Collections$UnmodifiableCollection.isEmpty(Collections.java:1033)
	at java.base/java.util.Collections$UnmodifiableCollection.isEmpty(Collections.java:1033)
	at java.base/java.util.Collections$UnmodifiableCollection.isEmpty(Collections.java:1033)
	at java.base/java.util.Collections$UnmodifiableCollection.isEmpty(Collections.java:1033)
	at java.base/java.util.Collections$UnmodifiableCollection.isEmpty(Collections.java:1033)
	at java.base/java.util.Collections$UnmodifiableCollection.isEmpty(Collections.java:1033)
	at java.base/java.util.Collections$UnmodifiableCollection.isEmpty(Collections.java:1033)
...

Client putObject code below:
image

Observed once in production, cause currently unknown.

@liqiuqiu111
Copy link

检查jvm参数xss, 建议将xss参数设置为1M。xss是jvm启动的每个线程分配的内存大小,默认JDK1.4中是256K,JDK1.5+中是1M。

@Shawyeok
Copy link
Author

检查jvm参数xss, 建议将xss参数设置为1M。xss是jvm启动的每个线程分配的内存大小,默认JDK1.4中是256K,JDK1.5+中是1M。

We do use the default value for xss. According to the stacktrace, it looks like a infinite recursive call, no idea what's happened here.

@Shawyeok
Copy link
Author

Shawyeok commented Jan 6, 2024

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

2 participants