SortObserver
public class UniqueWithDuplicateNullsIndexSortObserver extends BasicSortObserver
Modifier and Type | Field | Description |
---|---|---|
private UUID |
constraintId |
|
private boolean |
deferrable |
|
private boolean |
deferred |
|
private BackingStoreHashtable |
deferredDuplicates |
|
private java.lang.String |
indexOrConstraintName |
|
private LanguageConnectionContext |
lcc |
|
private java.lang.String |
tableName |
distinct, doClone
Constructor | Description |
---|---|
UniqueWithDuplicateNullsIndexSortObserver(LanguageConnectionContext lcc,
UUID constraintId,
boolean doClone,
boolean deferrable,
boolean deferred,
java.lang.String indexOrConstraintName,
ExecRow execRow,
boolean reuseWrappers,
java.lang.String tableName) |
Constructs an object of UniqueWithDuplicateNullsIndexSortObserver
|
Modifier and Type | Method | Description |
---|---|---|
boolean |
deferrable() |
Overridden by subclasses that observe sorters with uniqueness checking.
|
boolean |
deferred() |
Overridden by subclasses that observe sorters with uniqueness checking.
|
DataValueDescriptor[] |
insertDuplicateKey(DataValueDescriptor[] in,
DataValueDescriptor[] dup) |
Methods to check if the duplicate key can be inserted or not.
|
void |
rememberDuplicate(DataValueDescriptor[] row) |
Overridden by subclasses that observe sorters with uniqueness checking.
|
addToFreeList, getArrayClone, insertNonDuplicateKey
private final java.lang.String indexOrConstraintName
private final java.lang.String tableName
private final boolean deferrable
private final boolean deferred
private final LanguageConnectionContext lcc
private final UUID constraintId
private BackingStoreHashtable deferredDuplicates
public UniqueWithDuplicateNullsIndexSortObserver(LanguageConnectionContext lcc, UUID constraintId, boolean doClone, boolean deferrable, boolean deferred, java.lang.String indexOrConstraintName, ExecRow execRow, boolean reuseWrappers, java.lang.String tableName)
lcc
- Language Connection contextconstraintId
- Id of the constraint (only used for
deferrable constraints)doClone
- If true, then rows that are retained
by the sorter will be cloned. This is needed
if language is reusing row wrappers.deferrable
- deferrable constraintdeferred
- constraint mode is deferredindexOrConstraintName
- name of index of constraintexecRow
- ExecRow to use as source of clone for store.reuseWrappers
- Whether or not we can reuse the wrapperstableName
- name of the tablepublic DataValueDescriptor[] insertDuplicateKey(DataValueDescriptor[] in, DataValueDescriptor[] dup) throws StandardException
insertDuplicateKey
in interface SortObserver
insertDuplicateKey
in class BasicSortObserver
in
- new keydup
- the new key is duplicate of this keyStandardException
- is the duplicate key has all non null partspublic boolean deferred()
SortObserver
deferred
in interface SortObserver
deferred
in class BasicSortObserver
public boolean deferrable()
SortObserver
deferrable
in interface SortObserver
deferrable
in class BasicSortObserver
public void rememberDuplicate(DataValueDescriptor[] row) throws StandardException
SortObserver
rememberDuplicate
in interface SortObserver
rememberDuplicate
in class BasicSortObserver
row
- data of offending keyStandardException
- standard error policyApache Derby V10.14 Internals - Copyright © 2004,2018 The Apache Software Foundation. All Rights Reserved.