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
In Neo4j Community 2.3.1, if I start a database with array_block_size set and then create nodes with large strings and byte arrays, reading the database will fail. Seems like the dynamic string store also uses the array_block_size setting for reading, but not when creating records, so you get InvalidRecordExceptions.
Workaround: set string_array_size to same as array_block_size. Records will now be created with same size, so reading does not crash.
The method can get string or array store, but only keeps one cursor. It should keep one per store. Now if I first read from array store, that cursor will be assigned, and then if I read a string the array store cursor will be reused, which fails with InvalidRecordException. There needs to be one cached cursor per store, basically.
In Neo4j Community 2.3.1, if I start a database with array_block_size set and then create nodes with large strings and byte arrays, reading the database will fail. Seems like the dynamic string store also uses the array_block_size setting for reading, but not when creating records, so you get InvalidRecordExceptions.
Workaround: set string_array_size to same as array_block_size. Records will now be created with same size, so reading does not crash.
Minimal test case attached.
ArrayBlockSizeBugTest.java.zip
The text was updated successfully, but these errors were encountered: