I suspect that I've found a bug. Using a dbf table, I create an attribute index for a field containing integers. Then when I query the table for records in that field, the query results are wrong. The field in question [RID] is a LONG type, and it has sequential numbers from 1 to 9993. If I query for [RID] = 299, I get zero results. Then, if I delete the RID.atx file (attribute index), the same query returns one result. Similarly, querying for RID < 9993 gives me approximately 2500 results, but then after deleting the RID index, I get 9992 results, which is correct.
If I build the ATX file on a different computer, with ArcMap 10.1 installed, then copy that ATX file to the 10.3 computer, the queries work correctly. Also, the file size of the ATX is bigger.
Building ATX files for non-integer numbers seems to work OK. The file size of ATX files for non-integer fields is the same as that of the file made for the integer field on the Arc 10.1 computer. When I make a new field of type 'float', and fill the values in with the same integer values as the RID, and index that, the resulting index gives incorrect queries. So, the problem seems like it might be related to the values in the field, not the field type.
I have 2 computers with Arc 10.3 installed. Both of them create ATX files for the field in question that yield incorrect results.
I'll try putting my table in a different format - INFO or Geodatabase - and see if the results are different.
I have tried creating the attribute index with Arc Geoprocessing as well as ArcObjects in .NET - iTable.AddIndex method.
Thanks for any input!!!!