[ 
https://issues.apache.org/jira/browse/DERBY-4171?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12701123#action_12701123
 ] 

Knut Anders Hatlen commented on DERBY-4171:
-------------------------------------------

Thanks for the fix Kristian. I've verified that it works.

Should we also set colon = name.indexOf(':') in the body of the new if 
statement? The if statement right below it is supposed to return immediately if 
the subsubprotocol doesn't match, but since colon is still -1, that code is not 
executed. Not that it appears to cause any problems.

Alternatively, and perhaps clearer, I think we could change the if statement 
like this:

        if (colon == -1 && !getType().equals(PersistentService.DIRECTORY)) {
            // no subsubprotocol specified, and this is not the default service
            return null;
        }

> Connections to on-disk db go to in-memory db if in-memory db with same name 
> is booted
> -------------------------------------------------------------------------------------
>
>                 Key: DERBY-4171
>                 URL: https://issues.apache.org/jira/browse/DERBY-4171
>             Project: Derby
>          Issue Type: Bug
>          Components: Store
>    Affects Versions: 10.5.1.1
>            Reporter: Knut Anders Hatlen
>         Attachments: derby-4171-1a-fix.diff
>
>
> When an in-memory database has been booted, subsequent attempts to connect to 
> an ordinary (on-disk) database with the same name as the in-memory database 
> will connect to the in-memory db.
> ij version 10.5
> ij> connect 'jdbc:derby:memory:MyDB;create=true'; -- with subprotocol memory
> ij> create table t (x varchar(30));
> 0 rows inserted/updated/deleted
> ij> insert into t values 'This is the in-memory backend';
> 1 row inserted/updated/deleted
> ij> connect 'jdbc:derby:MyDB;create=true'; --without subprotocol memory, 
> should create disk db
> WARNING 01J01: Database 'MyDB' not created, connection made to existing 
> database instead.
> ij(CONNECTION1)> select * from t;
> X                             
> ------------------------------
> This is the in-memory backend 
> 1 row selected

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

Reply via email to