diff --git a/commons/src/main/java/org/archive/bdb/KryoBinding.java b/commons/src/main/java/org/archive/bdb/KryoBinding.java index 6b960949..97561e9b 100644 --- a/commons/src/main/java/org/archive/bdb/KryoBinding.java +++ b/commons/src/main/java/org/archive/bdb/KryoBinding.java @@ -21,10 +21,13 @@ package org.archive.bdb; import com.esotericsoftware.kryo.Kryo; import com.esotericsoftware.kryo.io.Input; import com.esotericsoftware.kryo.io.Output; +import com.esotericsoftware.kryo.serializers.DefaultSerializers; import com.esotericsoftware.kryo.util.Pool; import com.sleepycat.bind.EntryBinding; import com.sleepycat.je.DatabaseEntry; +import java.util.concurrent.atomic.AtomicInteger; + /** * Binding for use with BerkeleyDB-JE that uses Kryo serialization rather * than BDB's (custom version of) Java serialization. @@ -39,6 +42,7 @@ public class KryoBinding implements EntryBinding { Pool kryoPool = new Pool(true, false, POOL_SIZE) { protected AutoKryo create () { AutoKryo kryo = new AutoKryo(); + kryo.addDefaultSerializer(AtomicInteger.class, DefaultSerializers.AtomicIntegerSerializer.class); kryo.autoregister(baseClass); kryo.setRegistrationRequired(false); kryo.setWarnUnregisteredClasses(true);