Yes, unique value validation uses indexing. Try turning indexing and auto-create indexes off, then turning unique value validation on for a field, and see what happens.
The indexing on text fields is limited to the first several characters — apparently 120 according to your results. If you have FileMaker 13, there's a way around this. FileMaker 13 introduced the GetContainerAttribute function, and one of the attributes you can get is anMD5 hash. The function was apparently created with container data in mind, but the MD5 attribute can be used with arbitrary text instead. You can use this to create a reasonably unique 32-character string short enough to be indexed based on your data which are sometimes too long to index. Create a separate stored calculation field based on GetContainerAttribute ( Table::sourceTextField ; "MD5" ), then validate the uniqueness of this calculation field.
I believe the value index is used for unique validation. According to the FTS Advanced, page 87, the first 100 characters of each value (defined as a return-separated item) in the field comprise the index entry for the field.
Jeremy's suggestion for MD5 hashing is an excellent solution for the problem if there's only one value in the field (i.e., only zero or one carriage return) and the "uniqueness" of the field is in question because its length goes beyond that. You can also use a calculation that breaks the field into 100-character chunks and inserts carriage returns to validate against, should you choose.
Many thanks for your input - the solution is unfortunately in FM11 - the rebuild in FM13 is planned after completion in FM11 - so I'll need to do a CF for the hashing ...
Again, many thanks indeed for the clarity you chaps have provided ...
The idea of splitting it into two lines - that's very interesting. But after some thinking, I think the hashing is the correct way to go...
Still, both you input is greatly appreciated