[
https://issues.apache.org/jira/browse/DERBY-4172?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12702337#action_12702337
]
Rick Hillegas commented on DERBY-4172:
--------------------------------------
Hi Dag,
Thanks for bringing up this issue. I agree that those two logical names should
be considered the same. We could add another rule for the default directory
subprotocol and say that the full logical name involves the canonicalized
version of the directory name. I don't think this issue comes up with the other
subprotocols, does it?
> You can open a read-write connection to a database which was originally
> opened by another thread using the classpath subprotocol
> --------------------------------------------------------------------------------------------------------------------------------
>
> Key: DERBY-4172
> URL: https://issues.apache.org/jira/browse/DERBY-4172
> Project: Derby
> Issue Type: Bug
> Components: JDBC
> Affects Versions: 10.6.0.0
> Reporter: Rick Hillegas
>
> The original connection, using the classpath subprotocol, was supposed to
> open the DATABASE (not the connection) as read-only, according to the
> Developer's Guide section titled "Database connection examples". However, I
> am able to write to this database in another connection which opens the
> database using the default, file-based protocol.
> At a minimum, the documentation is wrong. But the documentation may be trying
> to impose a consistent, easily described model on the behavior of our
> subprotocols. It may be that the behavior of our subprotocols cannot be
> described by a simple set of rules that users can grasp easily.
> To show this problem, I created a database and then moved it into a directory
> on my classpath (in this case, trunk/classes). Here is a script which shows
> this behavior:
> connect 'jdbc:derby:classpath:derby10.6' as conn1;
> -- fails because a database which is opened on the classpath is supposed to
> be marked as read-only
> insert into t( a ) values 1;
> connect 'jdbc:derby:trunk/classes/derby10.6' as conn2;
> -- this succeeds even though the database is supposed to be read-only
> -- according to the Developer's Guide section "Database connection examples"
> insert into t( a ) values 2;
> select * from t;
> delete from t;
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.