[jOOQ/jOOQ#11261] Interpreter cannot find unique key if foreign key references columns in different order
This commit is contained in:
parent
d7810d9d59
commit
43cf60192e
@ -61,11 +61,13 @@ import java.util.ArrayDeque;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Deque;
|
||||
import java.util.HashMap;
|
||||
import java.util.HashSet;
|
||||
import java.util.Iterator;
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.List;
|
||||
import java.util.Locale;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
||||
import org.jooq.Catalog;
|
||||
import org.jooq.Check;
|
||||
@ -1727,12 +1729,14 @@ final class Interpreter {
|
||||
}
|
||||
|
||||
final MutableUniqueKey uniqueKey(List<MutableField> mrfs) {
|
||||
Set<MutableField> set = new HashSet<>(mrfs);
|
||||
|
||||
if (primaryKey != null)
|
||||
if (primaryKey.fields.equals(mrfs))
|
||||
if (set.equals(new HashSet<>(primaryKey.fields)))
|
||||
return primaryKey;
|
||||
|
||||
for (MutableUniqueKey mu : uniqueKeys)
|
||||
if (mu.fields.equals(mrfs))
|
||||
if (set.equals(new HashSet<>(mu.fields)))
|
||||
return mu;
|
||||
|
||||
return null;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user