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 "Alastair Rae (JIRA)" <ji...@apache.org> on 2017/04/01 15:11:41 UTC

[jira] [Updated] (DERBY-6930) Embedded driver database remains locked after close

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

Alastair Rae updated DERBY-6930:
--------------------------------
    Description: 
1 Open and close a local embedded database in one process.
2 Open the database from another process - it fails with ERROR XJ040
Simple test program:
{code}
public static void main(String[] args) {
        Properties p = new Properties();
        p.setProperty("user", "dummy");
        p.setProperty("password", "dummy");
        String url = "jdbc:derby:/tmp/database;create=true";
        try {
            Connection c = DriverManager.getConnection(url, p);
            c.close();
            System.out.println("closed");
            Thread.sleep(10000L);
            System.out.println("ok");
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
{code}
After the first close I can see:
{quote}
$ fuser /tmp/database/*
/tmp/database/dbex.lck: 13060
{quote}


  was:
1 Open and close a local embedded database in one process.
2 Open the database from anther process - it fails with ERROR XJ040
Simple test program:
{code}
public static void main(String[] args) {
        Properties p = new Properties();
        p.setProperty("user", "dummy");
        p.setProperty("password", "dummy");
        String url = "jdbc:derby:/tmp/database;create=true";
        try {
            Connection c = DriverManager.getConnection(url, p);
            c.close();
            System.out.println("closed");
            Thread.sleep(10000L);
            System.out.println("ok");
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
{code}
After the first close I can see:
{quote}
$ fuser /tmp/database/*
/tmp/database/dbex.lck: 13060
{quote}



> Embedded driver database remains locked after close
> ---------------------------------------------------
>
>                 Key: DERBY-6930
>                 URL: https://issues.apache.org/jira/browse/DERBY-6930
>             Project: Derby
>          Issue Type: Bug
>          Components: Miscellaneous
>    Affects Versions: 10.12.1.1
>         Environment: OS X and Ubuntu
>            Reporter: Alastair Rae
>            Priority: Minor
>
> 1 Open and close a local embedded database in one process.
> 2 Open the database from another process - it fails with ERROR XJ040
> Simple test program:
> {code}
> public static void main(String[] args) {
>         Properties p = new Properties();
>         p.setProperty("user", "dummy");
>         p.setProperty("password", "dummy");
>         String url = "jdbc:derby:/tmp/database;create=true";
>         try {
>             Connection c = DriverManager.getConnection(url, p);
>             c.close();
>             System.out.println("closed");
>             Thread.sleep(10000L);
>             System.out.println("ok");
>         } catch (Exception e) {
>             e.printStackTrace();
>         }
>     }
> {code}
> After the first close I can see:
> {quote}
> $ fuser /tmp/database/*
> /tmp/database/dbex.lck: 13060
> {quote}



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)