today, I investigated the way the Mavibot Partition is implemented, wrt
to the modifications I've made those past month. There are a few missing
parts, I'm afraid.
First of all, we aren't counting correctly. When we add a <key, value>
tuple, we should increment the counter regardless the fact the key
exists or not. In other words, we count tuples, not keys. That's easy to
A bit more complex : when we create a cursor on top of an index, we
should be able to browse all the tuples back and forth. That means we
should iterate over the keys, and over the values for each key if we
have more than one. It requires some modifications in the way we have
implemented the MavibotCursor. Typically, we have to retain the position
in the BTree, *and* the position in the values associated with the key
we are processing. Currently, it does noy work well.
I'm going to get it fixed.
Thanks for any comment on those findings.