What is the following warning about -- 'Could not find nbtr iterator.. skipping !'

The Aerospike Knowledge Base has moved to https://support.aerospike.com. Content on https://discuss.aerospike.com is being migrated to either https://support.aerospike.com or https://docs.aerospike.com. Maintenance on articles stored in this repository ceased on December 31st 2022 and this article may be stale. If you have any questions, please do not hesitate to raise a case via https://support.aerospike.com.

The following warning is seen in the logs: ‘Could not find nbtr iterator… skipping !!’?

Explanation

Jan 15 2020 07:05:01 GMT: WARNING (query): (ai_btree.c:568) Could not find nbtr iterator.. skipping !!

The warning indicates that there is a secondary index key with no corresponding digests (a bin value for which there are no records). It could be because a primary index (and corresponding record) got deleted, but the secondary index still exists even though garbage collection worked as expected in the previous run.

Or this would occur when a running query had issues traversing the secondary index tree for that particular query and could not find an iterator for that particular section of the secondary index tree.

The impact could be minimal or none at all if there was no relevant data from that part of the tree. It could potentially mean that partial results were returned during that query.

Solution

If warning is seen frequently, it could mean that there is a structure issues with the secondary index. If this is the case, dropping and re-creating the index can be attempted to recover.

If warning occured only once, it could mean that this is a benign issue and the subsequent round of garbage collection corrected the tree structure.

Keywords

SINDEX SECONDARY INDEX NBTR ITERATOR

Timestamp

January 2020