It is acceptable correctness-wise for things that are not equal to have the same hash value -- just leads to poor hashing performance if you have too many such objects with the same hash value in the same hashable collection simultaneously.
You would get terrible hashing performance if the hash of every object/value was 0, but it would not break equality semantics.