Hi all, I'm sure I'm overlooking something simple. Here's the situation: 

I'm connecting to an embedded h2 file database using a connection string 
like this: 

    jdbc:h2:file:db/mydb

This code is a snippet from a class called LinkDao.update() method. It uses 
spring JdbcDaoSupport (and JdbcTemplate) to update a h2 database like so: 

    int result = getJdbcTemplate().update(sql, values);
    if(result == 1) {
       return true;
    } else { 
       return false;
    }

This is a webapp that crawls some web pages and attempts to find urls. When 
it finds a url, it inserts a row into the h2 database into a table named 
"LINKS". If a row already exists for that url, it does an update. This part 
of the code runs as a quartz job. It's very basic and works fine. 

Another part of the code provides a rest api that allows for updating 
information about the links. The strange part is that when the rest api 
code calls the exact same LinkDao.update() method, the update doesn't 
appear to persist?! I can even debug the code during runtime. During the 
debug session, the update appears to succeed, but then when I query the 
data, it doesn't seem like the update happened. 

I've tried setting AUTOCOMMIT in the connection string like this: 

     jdbc:h2:file:db/mydb;AUTOCOMMIT=ON

I feel like I'm missing something super simple. Maybe I have to explicitly 
call commit after each update or something? Since this is a webapp, there 
are multiple threads accessing the db, maybe I need to configure h2 to 
handle updates from multiple threads?

Any ideas? If not, then I'm sure it's something silly I'm missing in my 
code (unrelated to h2). Thanks for your help, 

Dave

-- 
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