Skip to content
This repository was archived by the owner on Aug 31, 2022. It is now read-only.

Preliminary, work-in-progress SQLite support#79

Open
csachs wants to merge 4 commits intosorm:masterfrom
csachs:sqlite
Open

Preliminary, work-in-progress SQLite support#79
csachs wants to merge 4 commits intosorm:masterfrom
csachs:sqlite

Conversation

@csachs
Copy link
Copy Markdown
Contributor

@csachs csachs commented Sep 5, 2016

While I thought that development of SORM might be inactive, some recent commits have proven the opposite, so I'd like to propose another addition ...
I'm using SORM and I'm quite happy with it, but I would prefer to use SQLite over other embedded databases, as SQLite interoperability with other languages is much easier than e.g. H2.

Thus I've looked into adding SQLite support to SORM.

The patch so far passes many tests, however still has some weak spots:

  • Problems with in-memory databases, I guess due to connection pooling …
  • Some errors in DateTime (de)serialization, might be similar to problems described here, apparently dates can be stored in different ways in SQLite, but the JDBC adapter only understands one ...
  • Missing RegEx functionality. SQLite has no built-in regex engine, however, it could be added by using a user defined function, one would need to circumvent c3p0 to get a real SQLite connection object ...
  • BigDecimal problems …
  • Concurrency problems ... somehow puzzle me as SQLite by itself tend to handle concurrency really well, maybe some default options lead to overzealous locking …

I'm putting it here, as I guess it might already be in a state where it might be useful to others, and furthermore, some problems (like the DateTime serialization issue) might be much easier fixed if someone with more in-depth knowledge to SORM might take a look at it.

What do you think? I'll further take a look at the problems, but I'd be really happy if someone can point me to the right points; and afterwards this new database support could get added.

Best regards,
Christian

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant