Hi,

Further simplified (in case you are interested):

    public static void main(String... args) throws Exception {
        final String url = "jdbc:h2:mem:test";
        Connection conn = DriverManager.getConnection(url);
        Statement stat = conn.createStatement();
        stat.execute("create table lob(id identity, lob blob)");
        stat.execute("insert into lob(id, lob) values(null, '')");
        Thread[] threads = new Thread[3];
        final AtomicBoolean stop = new AtomicBoolean();
        for (int i = 0; i < threads.length; i++) {
            Thread t = new Thread() {
                @Override
                public void run() {
                    try {
                        Connection conn = DriverManager.getConnection(url);
                        PreparedStatement prep = conn.prepareStatement(
                                    "update lob set lob=? where id=1");
                        Statement stat = conn.createStatement();
                        while (!stop.get()) {
                            prep.setBinaryStream(1,
                                    new ByteArrayInputStream(new byte[10]));
                            prep.executeUpdate();
                            ResultSet rs = stat.executeQuery(
                                    "select lob from lob where id=1");
                            rs.next();
                            rs.getBlob(1).getBinaryStream().read();
                        }
                        conn.close();
                    } catch (Exception e) {
                        e.printStackTrace();
                    }
                }
            };
            t.start();
            threads[i] = t;
        }
        Thread.sleep(100000);
        stop.set(true);
        for (Thread t : threads) {
            t.join();
        }
        conn.close();
    }


Regards,
Thomas


On Thu, Nov 20, 2014 at 6:47 PM, Thomas Mueller <
[email protected]> wrote:

> Hi,
>
> I can now reproduce the problem, using the following test case. Thanks a
> lot!
>
> http://h2database.com/p.html#88f131803abed52292b7a80c33631624
>
> Regards,
> Thomas
>
>
> On Thursday, November 20, 2014, Benedikt Waldvogel <[email protected]>
> wrote:
>
>> Hi,
>>
>> On Wed, November 19, 2014 10:25, Thomas Mueller wrote:
>> > To avoid having to change the test case, could you add
>> > ";trace_level_system_out=3" to the database URL, and then send me / post
>> > the resulting output? This should include all the JDBC API calls. That
>> way
>> > it should be quite easy to write a pure JDBC test case. Or append
>> > ";trace_level_file=3" and then send the <databaseName>.trace.db file.
>>
>> please find a trace on https://paste.ee/p/Ri7xi
>>
>> Let me know when you need more info.
>>
>>
>> Best,
>> Benedikt
>>
>> --
>> 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 http://groups.google.com/group/h2-database.
>> For more options, visit https://groups.google.com/d/optout.
>>
>

-- 
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 http://groups.google.com/group/h2-database.
For more options, visit https://groups.google.com/d/optout.

Reply via email to