Return-Path: X-Original-To: apmail-db-derby-dev-archive@www.apache.org Delivered-To: apmail-db-derby-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 675406294 for ; Thu, 30 Jun 2011 09:55:09 +0000 (UTC) Received: (qmail 7403 invoked by uid 500); 30 Jun 2011 09:55:08 -0000 Delivered-To: apmail-db-derby-dev-archive@db.apache.org Received: (qmail 7168 invoked by uid 500); 30 Jun 2011 09:54:56 -0000 Mailing-List: contact derby-dev-help@db.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: Delivered-To: mailing list derby-dev@db.apache.org Received: (qmail 7153 invoked by uid 99); 30 Jun 2011 09:54:51 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 30 Jun 2011 09:54:51 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=5.0 tests=ALL_TRUSTED,T_RP_MATCHES_RCVD X-Spam-Check-By: apache.org Received: from [140.211.11.116] (HELO hel.zones.apache.org) (140.211.11.116) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 30 Jun 2011 09:54:50 +0000 Received: from hel.zones.apache.org (hel.zones.apache.org [140.211.11.116]) by hel.zones.apache.org (Postfix) with ESMTP id 1BE7B43B785 for ; Thu, 30 Jun 2011 09:54:30 +0000 (UTC) Date: Thu, 30 Jun 2011 09:54:30 +0000 (UTC) From: "Dag H. Wanvik (JIRA)" To: derby-dev@db.apache.org Message-ID: <1747304352.5040.1309427670111.JavaMail.tomcat@hel.zones.apache.org> In-Reply-To: <790802027.29851.1308762407377.JavaMail.tomcat@hel.zones.apache.org> Subject: [jira] [Commented] (DERBY-5292) SQLAuthorisation and views MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/DERBY-5292?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13057727#comment-13057727 ] Dag H. Wanvik commented on DERBY-5292: -------------------------------------- The problem appears to be a missing definition in TableOperatorNode of disablePrivilegeCollection. For views the premissions collection is disabled from tables in the query from-list with this QueryTreeNode#disablePrivilegeCollection. In the repro, where explicit JOINs are used, the disabling is not propagated down to the left and right tables of the join. The same error would appear for other subclasses of TableOperatorNode, e.g. set operations. > SQLAuthorisation and views > -------------------------- > > Key: DERBY-5292 > URL: https://issues.apache.org/jira/browse/DERBY-5292 > Project: Derby > Issue Type: Bug > Components: SQL > Affects Versions: 10.7.1.1 > Environment: windows xp > Reporter: Thomas Hill > Attachments: output.txt, script.txt > > > Hi, > in some cases there seem to be issues with SQLAuthorisation in conjunction with database VIEWS. > Please see attached files as repro (script.txt has only the SQL I executed, output is the output resulting when running the script). > I would think identical results should be returned in all cases and independent on how the view has been defined, but this to my surprise not being the case: > 1) Trying to select from view appl."VW_MyTasks" - which is a simple view defined on just one table - leads to expected results, i.e. "my" tasks are being returned. > 2) Trying to select from view appl."VW_MyPriorityTasks - which is a view defined on two joined tables without using an inner join clause - leads to expected results, i.e. "my" priority tasks are being returned. > 3) Trying to select from view appl."VW2_MyPriorityTasks - which is the same view but now the two tables joined using an inner join clause - leads to an error and no tasks returned (when the same results as in 2) above were expected). > 4) Trying to select from view appl."VW3_MyPriorityTasks" - which is a view defined using a subselect - also unexpectedly leads to an error. > Note: While I could rewrite each inner join clause with changing the syntax like in 2) above, this provides a simple work-around for such cases. May be there is a work-around for subselects also (not sure if every subselect could be rewritten to a join?). However when depending on using EXISTS constructs in the query there unfortunately is no way (I would know of) to get around this problem. Unfortuanetly a view that makes use of EXISTS is also one I would need to define in my data base... > Thanks -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira