Looks like data has gotten corrupted. The database is listed:
>> java com.sleepycat.je.util.DbDump -h . -l
... more entities ..
but always throws a DatabaseNotFoundException when accessed:
>> java com.sleepycat.je.util.DbDump -h . -s persist#DB1#com.example.model.entity.EntityName
com.sleepycat.je.DatabaseNotFoundException: (JE 5.0.103) Database persist#DB1#com.example.model.entity.EntityName not found.
If I trace through the code, it looks like the database is getting created each time the application starts. None of the changes made to this entity are persisted. When I attempt to replicate the DB, I get a ReplicaWriteException, as the replica attempts to create this DB.
Worth noting that this entity was the target of a mutation earlier, a Renamer to be exact (before the Environment was converted into a ReplicatedEnvironment). Also verified this issue exists on a copy of the non-replicated environment I had saved up. All data of this entity appears to have been lost (scary!)
I need to have this entity disabled to let replication happen.
Any idea what's going on?
I don't think we've seen a situation before where DbDump -l lists the database and DbDump -s throws DatabaseNotFoundException. As you say, this seems to be a corruption.
Were you using transactions (EntityStore.setTransactional(true)) when you applied the renamer mutation?
If you can demonstrate the problem, especially without replication, please contact me separately (mark.hayes at the obvious domain) so that you can send me your test program and/or corrupted environment files.