Skip to content
This repository was archived by the owner on Oct 13, 2025. It is now read-only.
This repository was archived by the owner on Oct 13, 2025. It is now read-only.

StackOverflowError when serializing Scala enum #13

@wajda

Description

@wajda
object TestEnum extends Enumeration {
  type TestEnum = Value
  val Foo: TestEnum = Value("foo")
  val Bar: TestEnum = Value("bar")
}

new VPack.Builder()
  .registerModule(new VPackScalaModule)
  .build()
  .serialize(TestEnum.Foo)

produces

java.lang.StackOverflowError
	at java.util.ArrayList.grow(ArrayList.java:260)
	at java.util.ArrayList.ensureExplicitCapacity(ArrayList.java:241)
	at java.util.ArrayList.ensureCapacityInternal(ArrayList.java:233)
	at java.util.ArrayList.add(ArrayList.java:464)
	at com.arangodb.velocypack.VPackBuilder.reportAdd(VPackBuilder.java:872)
	at com.arangodb.velocypack.VPackBuilder.addInternal(VPackBuilder.java:647)
	at com.arangodb.velocypack.VPackBuilder.addInternal(VPackBuilder.java:632)
	at com.arangodb.velocypack.VPackBuilder.add(VPackBuilder.java:413)
	at com.arangodb.velocypack.internal.VPackSerializers$1.serialize(VPackSerializers.java:55)
	at com.arangodb.velocypack.internal.VPackSerializers$1.serialize(VPackSerializers.java:48)
	at com.arangodb.velocypack.VPack.addValue(VPack.java:858)
	at com.arangodb.velocypack.VPack.serializeField(VPack.java:839)
	at com.arangodb.velocypack.VPack.serializeFields(VPack.java:816)
	at com.arangodb.velocypack.VPack.serializeObject(VPack.java:803)
	at com.arangodb.velocypack.VPack.addValue(VPack.java:882)
	at com.arangodb.velocypack.VPack.addValue(VPack.java:879)
	at com.arangodb.velocypack.VPack.serializeField(VPack.java:839)
	at com.arangodb.velocypack.VPack.serializeFields(VPack.java:816)
	at com.arangodb.velocypack.VPack.serializeObject(VPack.java:803)
	at com.arangodb.velocypack.VPack.addValue(VPack.java:882)
	at com.arangodb.velocypack.VPack.addValue(VPack.java:879)
	at com.arangodb.velocypack.VPack.serializeField(VPack.java:839)
	at com.arangodb.velocypack.VPack.serializeFields(VPack.java:816)
	at com.arangodb.velocypack.VPack.serializeObject(VPack.java:803)
	at com.arangodb.velocypack.VPack.addValue(VPack.java:882)
	at com.arangodb.velocypack.VPack.addValue(VPack.java:879)
	at com.arangodb.velocypack.VPack.serializeField(VPack.java:839)
	at com.arangodb.velocypack.VPack.serializeFields(VPack.java:816)
	at com.arangodb.velocypack.VPack.serializeObject(VPack.java:803)
	at com.arangodb.velocypack.VPack.addValue(VPack.java:882)
	at com.arangodb.velocypack.VPack.addValue(VPack.java:879)
	at com.arangodb.velocypack.VPack.serializeField(VPack.java:839)
	at com.arangodb.velocypack.VPack.serializeFields(VPack.java:816)
	at com.arangodb.velocypack.VPack.serializeObject(VPack.java:803)
	at com.arangodb.velocypack.VPack.addValue(VPack.java:882)
	at com.arangodb.velocypack.VPack.addValue(VPack.java:879)
	at com.arangodb.velocypack.VPack.serializeField(VPack.java:839)
	at com.arangodb.velocypack.VPack.serializeFields(VPack.java:816)
	at com.arangodb.velocypack.VPack.serializeObject(VPack.java:803)
	at com.arangodb.velocypack.VPack.addValue(VPack.java:882)
        ...

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions