Hmm, it looks like we are leaking entries in the information_schema.lobs table.

I don't have time to debug this further right now, all I can suggest is that you try using the MV_STORE engine, which doesn't seem to have this problem.

Maybe Thomas (or someone else) will get a chance to look at this.

This is the unit-test I used to show the problem.

private void testCleaningUpLobsOnDelete() throws Exception {
        if (config.mvStore) {
            return;
        }
        deleteDb("lob");
        Connection conn = getConnection("lob");
        Statement stat = conn.createStatement();
        stat.execute("CREATE TABLE test(id int, data CLOB)");
        conn.setAutoCommit(false);

        stat.executeUpdate("insert into test values (1, space(10000))");
        conn.commit();

        ResultSet rs = stat.executeQuery("select count(*) from 
information_schema.lobs");
        rs.next();
        assertEquals(1, rs.getInt(1));
        rs = stat.executeQuery("select count(*) from 
information_schema.lob_data");
        rs.next();
        assertEquals(1, rs.getInt(1));

        stat.execute("delete from test");
        conn.commit();

        rs = stat.executeQuery("select count(*) from information_schema.lobs");
        rs.next();
        assertEquals(0, rs.getInt(1));
        rs = stat.executeQuery("select count(*) from 
information_schema.lob_data");
        rs.next();
        assertEquals(0, rs.getInt(1));

        conn.close();
    }

--
You received this message because you are subscribed to the Google Groups "H2 
Database" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/h2-database.
For more options, visit https://groups.google.com/d/optout.

Reply via email to