private boolean indexValueOutOfRange(IndexField f) throws IOException {
			Field val = null;
			if (min != null && min.usesTruncatedFieldValue() && min.hasSameIndexValue(f)) {
				DBRecord rec = primaryTable.getRecord(f.getPrimaryKey());
				val = rec.getField(indexColumn);
				if (val.compareTo(min.getNonTruncatedIndexField()) < 0) {
					return true;
				}
			}
			if (max != null && max.usesTruncatedFieldValue() && max.hasSameIndexValue(f)) {
				if (val == null) {
					DBRecord rec = primaryTable.getRecord(f.getPrimaryKey());
					val = rec.getField(indexColumn);
				}
				if (val.compareTo(max.getNonTruncatedIndexField()) > 0) {
					return true;
				}
			}
			return false;
		}
If min or max index values was truncated, a comparison of the actual
indexed field value (i.e., primary table value) is done with the min and/or max values.
@param f index field from index table iterator
@return true if field value corresponding to f is outside the min/max range.
It is assumed that the underlying table iterator will not return index values
out of range which do not have the same truncated index value.
@throws IOException thrown if IO error occurs
Ghidra/Framework/DB/src/main/java/db/FieldIndexTable.java