In another thread Mark Brown wrote:
<quote>
"Luke Webber" <luke (AT) webber (DOT) com.au> wrote
Quote:
But it's really not as simple as that, is it? We've been over that limit
for ages, but have only just started to see problems. I really wish I knew
more about the internals of this thing. |
Luke,
It looks like this:
keydata <vm> id <vm> id <vm> id <sm>
when you want to add a new ID for the same key, you have to use a LOCATE
command.
The same limitation exists with LOCATE. It uses a command called SICD scan
incrementing counting delimiters. The counter it uses is only two bytes
long and has been since forever. 64K is the highest number you can store in
2 bytes unsigned integer (xFFFF).
Mark Brown
</quote>
After some testing on D3/Linux 7.2.1 I have created and successfully located
a value in the 5026711th attribute.
Seems that the 64k limit is no longer, at least in the Linux side of things.
And I don't know what the upper limit is! The way I figure it, if you are
looking that for down a list of attributes, values, or sub-values, you
probably have a bad data structure.
Don't know what this does for the indexing situation that this came out of.
I do note that there is/was a message in the messages file stating that a
key had more than 64k values and to selected a better key.
Regards,
Dale