db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Daniel John Debrunner (JIRA)" <j...@apache.org>
Subject [jira] Commented: (DERBY-3095) CALL SYSCS_UTIL.SYSCS_SET_USER_ACCESS(?, null) FAILS
Date Wed, 17 Oct 2007 22:27:50 GMT

    [ https://issues.apache.org/jira/browse/DERBY-3095?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12535769
] 

Daniel John Debrunner commented on DERBY-3095:
----------------------------------------------

> <>Note that the delimited identifier "EVE" represents the user EVE which is the
same user as the regular identifiers eve, EVE and EvE</>

> I didn't take this point into consideration, I therefore have to rethink the problem
partly. It seems quite strange however and not really logical. It seems like saying "just
pull the quotes and you're anyone else" ! 

I think you are misunderstanding what I'm writing. 

User name EVE when represented as a SQL identifier can be any of: "EVE", EVE, eve, eVe (etc.).
This is a single user with multiple ways to represent its value. It's the defined way that
SQL works.

User name eve when represented as a SQL identifier can only be "eve"
User name eVe when represented as a SQL identifier can only be "eVe"
etc.

> Secondly, I think the identifier passed in by an app should be parsed the same way as
individual users retrieved from an accesslist. 

I dont think that's correct. There are different domains where the representation of a user
name takes a different form. An application has to understand that and pass in the appropriate
form. Like the CURRENT USER example, an application might also take a user name from DatabaseMetaData.getUser()
and pass that into a SQL routine, in which case no quotes will exist, the user name will be
in its normal form (see the just added wiki page).

For these routine it's important to note that the format of the user name being passed in
does not match the format of the user name when set as a value of the associated Derby properties,
the routine needs to correctly handle the conversion between them (which it isn't doing at
the moment).

> CALL SYSCS_UTIL.SYSCS_SET_USER_ACCESS(?, null) FAILS
> ----------------------------------------------------
>
>                 Key: DERBY-3095
>                 URL: https://issues.apache.org/jira/browse/DERBY-3095
>             Project: Derby
>          Issue Type: Bug
>          Components: JDBC, Network Client
>    Affects Versions: 10.3.1.4
>         Environment: Linux 2.6.17-13mdv #1 SMP Fri Mar 23 15:18:36 EDT 2007 x86_64 AMD
Athlon(tm) 64 Processor 3000+ GNU/Linux
>            Reporter: EDAH-TALLY
>         Attachments: 3095_00.diff, 3095_01.diff, d3095.sql, REGTEST3095_00.zip, REGTEST3095_01.zip,
Reproduce3095.zip
>
>
> Sorry to bother you again.
> CALL SYSCS_UTIL.SYSCS_SET_USER_ACCESS(?, 'NOACCESS') FAILS and here's the stack trace
: 
> ******************************************************************************************
> java.sql.SQLException: Droit d'accès 'NOACCESS' inconnu.
>         at org.apache.derby.client.am.SQLExceptionFactory40.getSQLException(Unknown Source)
>         at org.apache.derby.client.am.SqlException.getSQLException(Unknown Source)
>         at org.apache.derby.client.am.PreparedStatement.execute(Unknown Source)
>         at com.somecom.createUser(someAPP.java:190)
>         at com.somecom.grantKeys(someAPP.java:288)
>         at com.somecom.showGrantKeys(someAPP.java:269)
>         at com.somecom.MDIMenuClicked(someAPP.java:620)
>         at com.somecom.access$000(someAPP.java:15)
>         at com.somecom$5.actionPerformed(someAPP.java:564)
>         at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
>         at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
>         at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
>         at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
>         at javax.swing.AbstractButton.doClick(AbstractButton.java:357)
>         at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:1216)
>         at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:1257)
>         at java.awt.Component.processMouseEvent(Component.java:6038)
>         at javax.swing.JComponent.processMouseEvent(JComponent.java:3260)
>         at java.awt.Component.processEvent(Component.java:5803)
>         at java.awt.Container.processEvent(Container.java:2058)
>         at java.awt.Component.dispatchEventImpl(Component.java:4410)
>         at java.awt.Container.dispatchEventImpl(Container.java:2116)
>         at java.awt.Component.dispatchEvent(Component.java:4240)
>         at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4322)
>         at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3986)
>         at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3916)
>         at java.awt.Container.dispatchEventImpl(Container.java:2102)
>         at java.awt.Window.dispatchEventImpl(Window.java:2429)
>         at java.awt.Component.dispatchEvent(Component.java:4240)
>         at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
>         at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:273)
>         at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:183)
>         at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:173)
>         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:168)
>         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:160)
>         at java.awt.EventDispatchThread.run(EventDispatchThread.java:121)
> Caused by: org.apache.derby.client.am.SqlException: Droit d'accès 'NOACCESS' inconnu.
>         at org.apache.derby.client.am.Statement.completeExecute(Unknown Source)
>         at org.apache.derby.client.net.NetStatementReply.parseEXCSQLSTTreply(Unknown
Source)
>         at org.apache.derby.client.net.NetStatementReply.readExecuteCall(Unknown Source)
>         at org.apache.derby.client.net.StatementReply.readExecuteCall(Unknown Source)
>         at org.apache.derby.client.net.NetStatement.readExecuteCall_(Unknown Source)
>         at org.apache.derby.client.am.Statement.readExecuteCall(Unknown Source)
>         at org.apache.derby.client.am.PreparedStatement.flowExecute(Unknown Source)
>         at org.apache.derby.client.am.PreparedStatement.executeX(Unknown Source)
>         ... 34 more
> *********************************************************************************************
> FULLACCESS : OK
> READONLYACCESS : OK
> NOACCESS : FAILURE
> By the way, the CONNECTION_PERMISSION parameter in the documentation is not up to date.
> Thank you for considering.

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


Mime
View raw message