NewIndexedIterator returns an 'indexed iterator'. An index is iterator that returns another iterator, a 'data iterator'. A 'data iterator' is the iterator that contains actual key/value pairs.

If strict is true the any 'corruption errors' (i.e errors.IsCorrupted(err) == true) won't be ignored and will halt 'indexed iterator', otherwise the iterator will continue to the next 'data iterator'. Corruption on 'index iterator' will not be ignored and will halt the iterator.