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 2010/07/13 14:59:49 UTC

[jira] Closed: (DERBY-4502) Can't define view against system table when SQL authorization is enabled--attempting to do so kills your connection

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

Rick Hillegas closed DERBY-4502.
--------------------------------

    Fix Version/s: 10.6.1.0
       Resolution: Fixed

> Can't define view against system table when SQL authorization is enabled--attempting to do so kills your connection
> -------------------------------------------------------------------------------------------------------------------
>
>                 Key: DERBY-4502
>                 URL: https://issues.apache.org/jira/browse/DERBY-4502
>             Project: Derby
>          Issue Type: Bug
>          Components: SQL
>            Reporter: Rick Hillegas
>             Fix For: 10.6.1.0
>
>         Attachments: derby-4502-01-aa-dummyUUID.diff
>
>
> Derby fails on an NPE if you try to create the following view when authorization is turned on:
>   create view v2( a ) as select tablename from sys.systables;
> The NPE occurs when the dependency manager trips across a dummy permission constructed on-the-fly. The dummy permission is created by PermissionsCacheable and is supposed to represent the implicit grant to PUBLIC of SELECT privilege on the system table. PermissionsCacheable doesn't bother to give the dummy permission a corresponding dummy UUID. The dependency manager falls down when trying to deference the null UUID of the dummy permission.
> The following script shows this problem:
> connect 'jdbc:derby:memory:dummy;create=true;user=test_dbo;password=test_dbopassword' as test_dbo_conn;
> connect 'jdbc:derby:memory:dummy;user=ruth;password=ruthpassword' as ruth_conn;
> create table t( b int );
> create view v1( a ) as select b from t;
> create view v2( a ) as select tablename from sys.systables;

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