Skip to content

Split JDBC plugin into dialect modules with Jdbi and Hikari-backed access - #37

Merged
starboyate merged 2 commits into
mainfrom
jdbc-split
Apr 30, 2026
Merged

starboyate merged 2 commits into
mainfrom
jdbc-split

Conversation

@me0106

@me0106 me0106 commented Apr 30, 2026

Copy link
Copy Markdown
Contributor

Summary

This PR restructures the JDBC plugin into a real parent module with separate dialect implementations:

  • Converts memind-plugin-jdbc into a parent POM under memind-plugins/memind-plugin-jdbc
  • Adds separate JDBC modules:
    • memind-plugin-jdbc-core
    • memind-plugin-jdbc-sqlite
    • memind-plugin-jdbc-mysql
    • memind-plugin-jdbc-postgresql
  • Removes the old JdbcStore facade and DriverManagerDataSource
  • Uses HikariDataSource directly for plain Java JDBC access
  • Simplifies JDBC persistence around Jdbi-based access patterns
  • Removes the extra JdbcExecutor wrapper
  • Moves dialect SQL and concrete implementations into each dialect module
  • Updates the Spring Boot JDBC starter to create JdbcMemoryAccess through dialect plugin factories
  • Updates examples and README usage from JdbcStore to direct dialect factories

DataSource Ownership

Plain Java usage creates a HikariDataSource through the dialect plugin factory and the returned JdbcMemoryAccess owns
that pool.

Spring Boot usage relies on Boot-created DataSource / HikariDataSource; the JDBC starter consumes the provided pool
and does not create its own.

Testing

  • mvnd -pl :memind-example-java -am package
  • /opt/homebrew/bin/mvnd clean package
  • git diff --check

Full reactor build passed successfully.

@starboyate
starboyate merged commit 2a74aed into main Apr 30, 2026
1 check passed
@starboyate
starboyate deleted the jdbc-split branch April 30, 2026 09:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants