You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I think 0.9.0 introduced regression where ByteBuffers comparison has changed.
This likely is a result of a change in #199
where custom comparator for byte[] and ByteBuffer has been swapped for Arrays.compare(o1, o2);
It seems original implementation was always using unsigned bytes.
Now default implementation uses unsigned bytes.
As far as I understand this can be modified by passing MDB_INTEGERKEY to _env.openDb and this is a setting persisted in Db.
This was never a requirement in previous versions so it seems existing databases are not compatible unless the flag is added in the code.
When I try to add that flag my tests still fail unable to either get key/value or iterate through them (iterator is empty).
Hi
I think 0.9.0 introduced regression where ByteBuffers comparison has changed.
This likely is a result of a change in #199
where custom comparator for byte[] and ByteBuffer has been swapped for Arrays.compare(o1, o2);
It seems original implementation was always using unsigned bytes.
Now default implementation uses unsigned bytes.
As far as I understand this can be modified by passing MDB_INTEGERKEY to _env.openDb and this is a setting persisted in Db.
This was never a requirement in previous versions so it seems existing databases are not compatible unless the flag is added in the code.
When I try to add that flag my tests still fail unable to either get key/value or iterate through them (iterator is empty).
This is likely related to
#228