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

Knut Anders Hatlen updated DERBY-534:
-------------------------------------

    Attachment: derby-534-09-a-drop-column-deps.diff

derby-534-09-a-drop-column-deps.diff adds tests that verify dependencies are 
tracked so that dropping an object referenced in a WHEN clause won't silently 
succeed.

For columns referenced in NEW/OLD transition variables and transition tables, 
the dependency tracking seemed to be working already.

For other columns referenced in the WHEN clause (via sub-queries) the 
dependencies were not tracked. The patch fixes this by generalizing the 
existing AlterTableConstantNode.columnDroppedAndTriggerDependencies() that 
detects these dependencies in the triggered SQL statement, and applying that 
method on the WHEN clause too.

Dependencies are not tracked for other objects than columns. This is because of 
DERBY-2041, which also affects triggers without a WHEN clause.

I'm running regression tests on the patch now.

> Support use of the WHEN clause in CREATE TRIGGER statements
> -----------------------------------------------------------
>
>                 Key: DERBY-534
>                 URL: https://issues.apache.org/jira/browse/DERBY-534
>             Project: Derby
>          Issue Type: Improvement
>          Components: SQL
>            Reporter: Kristian Waagan
>            Assignee: Knut Anders Hatlen
>            Priority: Minor
>              Labels: derby_triage10_11
>         Attachments: derby-534-01-a-syntax.diff, 
> derby-534-02-a-refactor.diff, derby-534-03-a-npe-testcase.diff, 
> derby-534-04-a-referencing.diff, derby-534-05-a-generated-cols.diff, 
> derby-534-06-a-temptables.diff, derby-534-07-a-more-restrictions.diff, 
> derby-534-08-a-test-invalidation.diff, derby-534-09-a-drop-column-deps.diff, 
> parser.diff, WhenClause.html, WhenClause.html, WhenClause.html, 
> WhenClause.html
>
>
> Support use of the WHEN clause in CREATE TRIGGER statements. The clause is 
> described in the SQL standard (2003) in chapter "11.39 <trigger definition>" 
> under "<triggered action>".
> There are traces in the code that suggests some work has been done on this 
> earlier. If anyone knows something about this, please add a comment to this 
> issue.



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to