Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for rqlite/rqlite #1601

Open
1 task done
shanduur opened this issue May 28, 2023 · 3 comments
Open
1 task done

Add support for rqlite/rqlite #1601

shanduur opened this issue May 28, 2023 · 3 comments
Labels
future-work Something considered for future relases kind/feature

Comments

@shanduur
Copy link

shanduur commented May 28, 2023

Is there an existing issue for this?

  • I have searched the existing issues

Feature description

Right now we have support for Postgres and MySQL. This gives us opportunity to use other databases that are compatible with those two, like CockroachDB, TiDB and Yugabyte.

However most of them are hard to deploy and quite resource heavy. Using rqlite/rqlite can bring benefits like:

  • fault-tolerant,
  • replication,
  • very easy installation, deployment, and operation

What would the ideal solution look like to you?

Adding new supported backend (rqlite), that can be configured as easy as other backends.

Anything else?

No response

@charithe
Copy link
Contributor

Hi, thanks for suggesting rqlite. Personally, I'd like to support it as well but it currently doesn't have a database/sql driver -- which complicates things for us because we have to build a custom driver for it rather than reusing our common database code.

You could use Cerbos' SQLite driver with Litestream for replication and disaster recovery. It does require some setup work on your end to replicate/restore the database but Cerbos should "just work" with it.

@charithe charithe added future-work Something considered for future relases and removed status/triage labels May 30, 2023
@shanduur
Copy link
Author

As you can see in the rqlite/gorqlite README - Why not a database/sql driver?, database/sql driver is not possible given the rqlite design. However their API is mature enough, and uses concepts similar to database/sql, so writing new driver should be quite easy (although don't quote me on that 😆)

@charithe
Copy link
Contributor

Yeah, I understand why they need a different driver. It's just that we are a really small team and having to implement, test and maintain a separate code path, keeping up-to-date with upstream API changes and providing support for users is quite a big commitment.

I am keeping this issue open because I'd like to add support for rqlite at some point. It's unlikely that it will happen in the near future though.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
future-work Something considered for future relases kind/feature
Projects
None yet
Development

No branches or pull requests

2 participants