You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-dev@db.apache.org by "Rick Hillegas (JIRA)" <ji...@apache.org> on 2007/01/18 16:37:30 UTC
[jira] Created: (DERBY-2252) Add Jar IDs to the EXTERNAL names in
routine declarations
Add Jar IDs to the EXTERNAL names in routine declarations
---------------------------------------------------------
Key: DERBY-2252
URL: https://issues.apache.org/jira/browse/DERBY-2252
Project: Derby
Issue Type: New Feature
Components: Security, SQL
Reporter: Rick Hillegas
Fix For: 10.3.0.0
This is phase (2) of the work described in the master JIRA DERBY-2206, motivated by the wiki page http://wiki.apache.org/db-derby/JavaRoutineSecurity
This task involves adding Jar IDs to the external names in CREATE PROCEDURE and CREATE FUNCTION statements. This task also involves providing support for the pseudo-jars SYS.CLASSPATH and SYS.JRE.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] Commented: (DERBY-2252) Add Jar IDs to the EXTERNAL names in
routine declarations
Posted by "Daniel John Debrunner (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/DERBY-2252?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12469544 ]
Daniel John Debrunner commented on DERBY-2252:
----------------------------------------------
Thanks for putting up with all my comments Rick.
> 3) The System Tables section now explains my reasons for tracking jar IDs in a new SYSALIASES.FILEID column. The issue here was not dependency tracking but rather the construction of the jar-specific classpath.
I look forward to seeing that, I don't see how the definition of an entry point is related to the jar specific class path, but I haven't thought a lot about how to implement it.
> Add Jar IDs to the EXTERNAL names in routine declarations
> ---------------------------------------------------------
>
> Key: DERBY-2252
> URL: https://issues.apache.org/jira/browse/DERBY-2252
> Project: Derby
> Issue Type: New Feature
> Components: Security, SQL
> Reporter: Rick Hillegas
> Attachments: jarIDs.html
>
>
> This is phase (2) of the work described in the master JIRA DERBY-2206, motivated by the wiki page http://wiki.apache.org/db-derby/JavaRoutineSecurity
> This task involves adding Jar IDs to the external names in CREATE PROCEDURE and CREATE FUNCTION statements.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (DERBY-2252) Add Jar IDs to the EXTERNAL names in
routine declarations
Posted by "Rick Hillegas (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/DERBY-2252?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12469517 ]
Rick Hillegas commented on DERBY-2252:
--------------------------------------
Thanks for the feedback, Dan. I have incorporated your improvements in the next revs of this spec and the companion spec for phase 3 (DERBY-2253). I will wait a bit to collect more feedback before posting the new revs.
1) I added signatures to the syntax of the EXTERNAL NAMEs as you suggested.
2) I clarified class/method resolution rules.
3) The System Tables section now explains my reasons for tracking jar IDs in a new SYSALIASES.FILEID column. The issue here was not dependency tracking but rather the construction of the jar-specific classpath. That is addressed in the phase 3 spec but I can see that some explanation is needed in this spec too. I agree that we could reconstruct this information from the dependency system. But I think that modelling the jar ID in SYSALIASES will make it more straightforward to construct the jar-specific classpath and it will make it easier for tech support to figure out that classpath from the catalogs.
4) I have improved the REVOKE USAGE explanation as you suggested.
> Add Jar IDs to the EXTERNAL names in routine declarations
> ---------------------------------------------------------
>
> Key: DERBY-2252
> URL: https://issues.apache.org/jira/browse/DERBY-2252
> Project: Derby
> Issue Type: New Feature
> Components: Security, SQL
> Reporter: Rick Hillegas
> Attachments: jarIDs.html
>
>
> This is phase (2) of the work described in the master JIRA DERBY-2206, motivated by the wiki page http://wiki.apache.org/db-derby/JavaRoutineSecurity
> This task involves adding Jar IDs to the external names in CREATE PROCEDURE and CREATE FUNCTION statements.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (DERBY-2252) Add Jar IDs to the EXTERNAL names in
routine declarations
Posted by "Rick Hillegas (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/DERBY-2252?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Rick Hillegas updated DERBY-2252:
---------------------------------
Description:
This is phase (2) of the work described in the master JIRA DERBY-2206, motivated by the wiki page http://wiki.apache.org/db-derby/JavaRoutineSecurity
This task involves adding Jar IDs to the external names in CREATE PROCEDURE and CREATE FUNCTION statements.
was:
This is phase (2) of the work described in the master JIRA DERBY-2206, motivated by the wiki page http://wiki.apache.org/db-derby/JavaRoutineSecurity
This task involves adding Jar IDs to the external names in CREATE PROCEDURE and CREATE FUNCTION statements. This task also involves providing support for the pseudo-jars SYS.CLASSPATH and SYS.JRE.
Removed sentence on SYS.CLASSPATH and SYS.JRE from the JIRA description.
> Add Jar IDs to the EXTERNAL names in routine declarations
> ---------------------------------------------------------
>
> Key: DERBY-2252
> URL: https://issues.apache.org/jira/browse/DERBY-2252
> Project: Derby
> Issue Type: New Feature
> Components: Security, SQL
> Reporter: Rick Hillegas
>
> This is phase (2) of the work described in the master JIRA DERBY-2206, motivated by the wiki page http://wiki.apache.org/db-derby/JavaRoutineSecurity
> This task involves adding Jar IDs to the external names in CREATE PROCEDURE and CREATE FUNCTION statements.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (DERBY-2252) Add Jar IDs to the EXTERNAL names in
routine declarations
Posted by "Daniel John Debrunner (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/DERBY-2252?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12469257 ]
Daniel John Debrunner commented on DERBY-2252:
----------------------------------------------
Spec looks good, fairly clean, some minor clarifications/comments:
- FYI - The MethodName in a EXTERNAL NAME clause can contain a signature, DERBY-2271 was opened to document this.
- "Derby checks to make sure that a class by the given name lives in the jar file and that the class (or one of its superclasses) has a method by the given name. "
Are they any specifics on the checking here, if the class is not public, if the method is not public and/or not static then what happens? If it's a procedure must the method be void? I think you said the signature checking is implementation defined but it would be good to clarify the behaviour for other situations.
- I couldn't see the need to add a FILEID column to SYS.SYSALIASES. The routine should be able to create a dependency on the jar file, thus hooking into the existing mechanism to control removing the jar file or revoking permissions.
- "An error is raised if you try to strip jar file USAGE privilege"
Maybe picky, but by "strip" I assume you mean "REVOKE". I wonder if use of non-standard terms will cause confusion for non-native English speakers. Seems simpler & clearer to use consistent technical terms.
> Add Jar IDs to the EXTERNAL names in routine declarations
> ---------------------------------------------------------
>
> Key: DERBY-2252
> URL: https://issues.apache.org/jira/browse/DERBY-2252
> Project: Derby
> Issue Type: New Feature
> Components: Security, SQL
> Reporter: Rick Hillegas
> Attachments: jarIDs.html
>
>
> This is phase (2) of the work described in the master JIRA DERBY-2206, motivated by the wiki page http://wiki.apache.org/db-derby/JavaRoutineSecurity
> This task involves adding Jar IDs to the external names in CREATE PROCEDURE and CREATE FUNCTION statements.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (DERBY-2252) Add Jar IDs to the EXTERNAL names in
routine declarations
Posted by "Rick Hillegas (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/DERBY-2252?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Rick Hillegas updated DERBY-2252:
---------------------------------
Attachment: jarIDs.html
Attaching first rev of functional spec for this subtask. Your feedback is appreciated.
> Add Jar IDs to the EXTERNAL names in routine declarations
> ---------------------------------------------------------
>
> Key: DERBY-2252
> URL: https://issues.apache.org/jira/browse/DERBY-2252
> Project: Derby
> Issue Type: New Feature
> Components: Security, SQL
> Reporter: Rick Hillegas
> Attachments: jarIDs.html
>
>
> This is phase (2) of the work described in the master JIRA DERBY-2206, motivated by the wiki page http://wiki.apache.org/db-derby/JavaRoutineSecurity
> This task involves adding Jar IDs to the external names in CREATE PROCEDURE and CREATE FUNCTION statements.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.