Hi,

> Perhaps we can discuss more on the Xerial list? Or via email?

Both is fine with me.

Regards,
Thomas



On Fri, Apr 12, 2013 at 2:40 PM, <[email protected]> wrote:

> Hello Thomas-
>      Thank you so much! I'm sure the Xerial guys will be happy.
>
> With respect to the code, I think you're right - SQLite does not support 2
> phase commit. To be honest, I have a limited understanding of the code. I
> spent only a few hours adapting the classes to work with SQLiteJDBC. I used
> the MiniConnectionPoolManager
> <http://www.source-code.biz/miniconnectionpoolmanager/>as a test harness
> and everything magically worked.
>
> My use case was pretty simple. In my multithreaded web app, I needed a way
> for multiple concurrent clients to update the database. Of course, SQLite
> doesn't support concurrent write operations so I created a connection pool
> with 1 r/w connection that the clients could use to write to the database.
> I had a separate connection pool for read-only connections. This approach
> has worked out really well for several production websites.
>
> I'll certainly update the SQLite ConnectionPoolDataSource as you
> suggested. Perhaps we can discuss more on the Xerial list? Or via email?
>
>
> Thanks Again!
> Peter
>
>
>
> On Friday, April 12, 2013 7:27:31 AM UTC-4, Thomas Mueller wrote:
>
>> Hi,
>>
>> You have my permission to use and change the license for the classes
>> org.h2.jdbcx.JdbcXid and org.h2.jdbcx.JdbcXAConnection.
>>
>> About the code: SQLite does not support 2-phase commit as far as I'm
>> aware, so I wonder if you should change the relevant methods?
>>
>> I think you should set autocommit to true if it was disabled:
>>
>> if (getAutoCommit()==false) rollback();
>> //setAutoCommit(true); //<--Not sure why we need this line
>>
>>
>>
>> Regards,
>> Thomas
>>
>>
>>
>> On Fri, Apr 12, 2013 at 1:08 PM, Peter Borissow <[email protected]>
>> wrote:
>> >
>> > Hello-
>> >     This is my first post to this list so I want to start by saying
>> thank you for H2! It's a great project and I've used it extensively in the
>> past.
>> >
>> > A couple years ago, I was tasked to develop a web app using SQLite and
>> a spatial extension called SpatiaLite. I used Xerial's JDBC driver which
>> unfortunately did not support connection pooling. So, in a pinch, I grabbed
>> 2 classes from H2 to create a ConnectionPoolDataSource for SQLite.
>> >
>> > In the spirit of open source, I would like to release my modified code
>> back to the community and have it integrated into the Xerial SQLiteJDBC
>> project.
>> >
>> > Unfortunately, there's a license compatibility issue. The Xerial
>> SQLiteJDBC project is released under an Apache license. H2 is of course
>> dual licensed under MPL and EPL.
>> >
>> > While the licenses are very similar and appear to be compatible, I was
>> wondering if I could get someone's permission to release my modified code
>> under an Apache license.
>> >
>> > The 2 classes in question are:
>> >  - org.h2.jdbcx.JdbcXid (r3670)
>> >  - org.h2.jdbcx.JdbcXAConnection (r3905)
>> >
>> >
>> > You can compare my code with the original H2 code here:
>> >
>> > http://sourceforge.net/p/**sqlite-connpool/code/HEAD/**
>> tree/trunk/org/sqlite/**SQLiteXid.java<http://sourceforge.net/p/sqlite-connpool/code/HEAD/tree/trunk/org/sqlite/SQLiteXid.java>
>> > http://code.google.com/p/**h2database/source/browse/**
>> trunk/h2/src/main/org/h2/**jdbcx/c.java?spec=svn4734&r=**3670<http://code.google.com/p/h2database/source/browse/trunk/h2/src/main/org/h2/jdbcx/c.java?spec=svn4734&r=3670>
>> >
>> > http://sourceforge.net/p/**sqlite-connpool/code/HEAD/**
>> tree/trunk/org/sqlite/**SQLitePooledConnection.java<http://sourceforge.net/p/sqlite-connpool/code/HEAD/tree/trunk/org/sqlite/SQLitePooledConnection.java>
>> > http://code.google.com/p/**h2database/source/browse/**
>> trunk/h2/src/main/org/h2/**jdbcx/JdbcXAConnection.java?**
>> spec=svn4734&r=3905<http://code.google.com/p/h2database/source/browse/trunk/h2/src/main/org/h2/jdbcx/JdbcXAConnection.java?spec=svn4734&r=3905>
>> >
>> >
>> > Although the differences are quite minor, I hope you'll see that the
>> classes in question represent only a tiny fraction of H2 capabilities. If
>> there's anything else I need to do to make the code more portable (e.g.
>> copyright notices, credits, etc), I'll be more than happy to oblige.
>> >
>> >
>> > My sincere thanks and best regards,
>> > Peter
>>
>  --
> 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?hl=en.
> For more options, visit https://groups.google.com/groups/opt_out.
>
>
>

-- 
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?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to