Hello Max, > 1. Are there any real reasons for having dual-licensed commercial > partial reimplementation of SQLite in Java? Any examples? We're following licensing policy of another project we're working on (SVNKit), plus BDB JE was an example for us in that area, ever since SleepyCat times.
The reason for reimplementation itself is that in another project we have (SVNKit) we need to work with SQLite databases with maximum portability (which excludes JNI), relatively good performance (which excludes NestedVM) and, preferably, with means to control the code. Another reason is that having this project (SQLJet) opens us ways for other projects that are not that tightly connected to SQLite and not just to have sort of SQLite 'replacement'. > 2. When do you expecting to have SQL API? Now we face two options for the next major version: first one is to work on and open BTree-level API (i.e. add custom comparators support, like in BDB, provide examples, etc) and second one is SQL queries support. I hope we'll find enough resources to work in both directions, but first one (low level BTree API) has higher priority at the moment. I expect next major version to be published early next year. > 3. Are you targeting for having 100% SQLite unit-tests passes? Yes, we'd like to be able to run SQLite tests and of course get 100% coverage, but, as you know, to do that we need first to have SQL support. > 4. Have you ever thought about collaborating with and contributing to > http://code.google.com/p/csharp-sqlite/ since it's easier to port > C#->Java than C->Java? We wasn't aware of C# version at the moment we've started SQLJet - otherwise you're right, it could save time. As for contributing - we're not experts in C#, but in general we're open for collaboration :) > 5. Any benchmarks comparing to native? So far SQLJet is slower than JNI-based JDBC, but faster than NestedVM-based version (more than twice). To run benchmarks one should do the following: $ svn export http://svn.sqljet.com/repos/sqljet/trunk sqljet $ cd sqljet $ ant benchmarks On my Linux box output is: [junit] Testsuite: org.tmatesoft.sqljet.benchmarks.SqlJetBenchmark [junit] Tests run: 7, Failures: 0, Errors: 0, Time elapsed: 18.621 sec [junit] [junit] Testcase: clear took 1.505 sec [junit] Testcase: nothing took 0.009 sec [junit] Testcase: selectAll took 1.573 sec [junit] Testcase: updateAll took 3.938 sec [junit] Testcase: deleteAll took 0.846 sec [junit] Testcase: insertRandoms took 4.278 sec [junit] Testcase: locate took 6.322 sec [junit] Testsuite: org.tmatesoft.sqljet.benchmarks.NestedVmBenchmark [junit] Tests run: 7, Failures: 0, Errors: 0, Time elapsed: 44.009 sec [junit] [junit] Testcase: clear took 2.991 sec [junit] Testcase: nothing took 0.011 sec [junit] Testcase: selectAll took 6.362 sec [junit] Testcase: updateAll took 7.96 sec [junit] Testcase: deleteAll took 1.492 sec [junit] Testcase: insertRandoms took 9.183 sec [junit] Testcase: locate took 15.908 sec This comparison is not of course absolutely 'fair', as for NEstedVM we use SQL queries, while SQLJet is measured using API. Also, while SQLJet outperform NestedVM it is still slower than native and performance optimization is another task for the next major version of SQLJet. Alexander Kitaev, TMate Software, http://svnkit.com/ - Java [Sub]Versioning Library! http://sqljet.com/ - Java SQLite Library! Kosenko Max wrote: > > Alexander Kitaev-3 wrote: >> We're glad to announce that SQLJet 1.0.0 has been released and available >> for download at http://sqljet.com/ web site. >> > > Hi. > > Several questions: > 1. Are there any real reasons for having dual-licensed commercial partial > reimplementation of SQLite in Java? Any examples? > 2. When do you expecting to have SQL API? > 3. Are you targeting for having 100% SQLite unit-tests passes? > 4. Have you ever thought about collaborating with and contributing to > http://code.google.com/p/csharp-sqlite/ since it's easier to port C#->Java > than C->Java? > 5. Any benchmarks comparing to native? > > Thanks. > > Max. > > ----- > Best Regards. > Max Kosenko. _______________________________________________ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users