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
For some values it's unnecessary to store the values of adjacent DataPointers. For example, if we have 10 key "abcd"'s, we don't need to store "abcd" 10 times, we can store it once and write a byte that indicates that the next keys are identical.
Note: this is a little tricky when splitting nodes as we cannot cross node boundaries. In that light, it would be best to make this change in MarshalBinary/UnmarshalBinary and let the nodes store multiple copies in the actual memory representation. Essentially, in MarshalBinary, add a flag bit (maybe the first bit of the length? not sure what to do for fixed width) that indicates if it's a repeated value. If it is, skip encoding the value. In UnmarshalBinary, do the opposite.
The text was updated successfully, but these errors were encountered:
For some values it's unnecessary to store the values of adjacent DataPointers. For example, if we have 10 key "abcd"'s, we don't need to store "abcd" 10 times, we can store it once and write a byte that indicates that the next keys are identical.
Note: this is a little tricky when splitting nodes as we cannot cross node boundaries. In that light, it would be best to make this change in
MarshalBinary
/UnmarshalBinary
and let the nodes store multiple copies in the actual memory representation. Essentially, inMarshalBinary
, add a flag bit (maybe the first bit of the length? not sure what to do for fixed width) that indicates if it's a repeated value. If it is, skip encoding the value. InUnmarshalBinary
, do the opposite.The text was updated successfully, but these errors were encountered: