[
https://issues.apache.org/jira/browse/DERBY-3570?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Rick Hillegas updated DERBY-3570:
---------------------------------
Attachment: derby-3570-01-aa-introduceDeterminismField.diff
Attaching derby-3570-01-aa-introduceDeterminismField.diff. This allocates a bit
in RoutineAliasInfo so that we can record whether a routine is deterministic.
If this patch seems ok and is checked in, then the actual persistent
representation of this information can be changed. I believe that Dan expressed
an interest in reworking this (see the comments on the related DERBY-481
issue). Regression tests run cleanly for me. Touches the following files:
M java/engine/org/apache/derby/catalog/types/RoutineAliasInfo.java
Allocates a bit out of the sqlAllowed field in order to record whether a
routine is deterministic and changes the constructors to allow callers to
declare whether a routine is deterministic. To rework the internal bits of this
class, just look for the field sqlOptions.
M java/engine/org/apache/derby/impl/sql/catalog/DataDictionaryImpl.java
Uses the new determinism-aware constructors of RoutineAliasInfo. All system
procedures are created as non-deterministic. All system functions are created
as deterministic except for RANDOM and RAND.
M java/engine/org/apache/derby/impl/sql/compile/CreateAliasNode.java
M java/engine/org/apache/derby/impl/sql/compile/sqlgrammar.jj
All user-created routines are marked as the default right now, that is, as
non-deterministic.
A
java/testing/org/apache/derbyTesting/functionTests/tests/lang/GeneratedColumnsTest.java
M java/testing/org/apache/derbyTesting/functionTests/tests/lang/_Suite.java
A small test which verifies that, by default, user-created routines are
non-deterministic and that all system procedures are non-deterministic.
> Implement DETERMINISTIC keyword for procedures and functions
> ------------------------------------------------------------
>
> Key: DERBY-3570
> URL: https://issues.apache.org/jira/browse/DERBY-3570
> Project: Derby
> Issue Type: New Feature
> Components: SQL
> Reporter: Rick Hillegas
> Attachments: derby-3570-01-aa-introduceDeterminismField.diff
>
>
> We will need DETERMINISTIC functions when we implement generated columns
> (DERBY-481). The syntax and behavior of the DETERMINISTIC keyword are defined
> in the functional spec attached to DERBY-481.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.