[ 
https://issues.apache.org/jira/browse/DERBY-3330?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Mike Matrigali updated DERBY-3330:
----------------------------------

    Derby Info: [Patch Available, Release Note Needed]  (was: [Release Note 
Needed, Patch Available])

looking at it more carefully, would it be possible to not have any sorter 
changes and handle the required functionality in the
new UniqueWithDuplicateNullsIndexSortObserver ?  Basically use the existing 
sorter to sort on all columns and then in the observer look at each row and if 
it has a null let it through.  If it doesn't have a null compare it with the 
next row and throw an error if it has a duplicate violation?   I know there is 
some existing code for doing this kind of compare - see 
CardinalityCounter.java.  



> provide support for unique constraint over keys that include one or more 
> nullable columns.
> ------------------------------------------------------------------------------------------
>
>                 Key: DERBY-3330
>                 URL: https://issues.apache.org/jira/browse/DERBY-3330
>             Project: Derby
>          Issue Type: New Feature
>          Components: Store
>    Affects Versions: 10.4.0.0
>         Environment: all
>            Reporter: Anurag Shekhar
>            Assignee: Anurag Shekhar
>         Attachments: BTreeController.diff, db2Compatibility-v2.diff, 
> db2Compatibility.diff, derby-3330-testcase.diff, 
> derby-3330-UpgradeTests.diff, derby-3330.diff, derby-3330_followup_1.diff, 
> derby-3330v10.diff, derby-3330v11.diff, derby-3330v12.diff, 
> derby-3330v13.diff, derby-3330v2.diff, derby-3330v3.diff, derby-3330v4.diff, 
> derby-3330v5.diff, derby-3330v6.diff, derby-3330v7.diff, derby-3330v8.diff, 
> derby-3330v9.diff, derbyall_report.txt, FunctionalSpec_DERBY-3330-V2.html, 
> FunctionalSpec_DERBY-3330.html, UniqueConstraint_Implementation.html, 
> UniqueConstraint_Implementation_V2.html, 
> UniqueConstraint_Implementation_V3.html, 
> UniqueConstraint_Implementation_V4.html
>
>
> Allow unique constraint over keys which include one or more nullable fields.  
> Prior to this change Derby only supported unique constraints on keys that 
> included no nullable columns.  The new constraint will allow unlimited 
> inserts of any key with one more null columns, but will limit insert of keys 
> with no null columns to 1 unique value per table.
> There is no change to existing or newly created unique indexes on null 
> columns (as opposed to unique constraints on null columns).  Also there is no 
> change to existing or newly created constraints on keys with no nullable 
> columns.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to