mumble-voip / grumble

Alternative Mumble server
http://mumble.info/grumble
Other
275 stars 86 forks source link

Introduce compatibility with Murmur SQL databases #22

Open mkrautz opened 6 years ago

mkrautz commented 6 years ago

Related to mumble-voip/grumble#21.

It would be nice if the Murmur "personality" was able to directly store its state into a Murmur SQL database.

That means we'd have to support the same DBs as Murmur: SQLite, MySQL and Postgres.

Everything should use database/sql, taking syntax differences into account for each DB variant. We can worry about which backends to actually ship Murmur with separately. However, the lessons learned during development would come in handy there -- which Go libs worked best? etc.

I've always wanted to play with https://github.com/cznic/sqlite. It's SQLite machine translated to Go. But anything works, including a simple cgo bridge to libsqlite3.

mkrautz commented 6 years ago

At the moment, Murmur can read Murmur SQL databases, but it only imports them into our own freeze files. That works could possibly be leveraged.

mkrautz commented 6 years ago

Note: the different DBs don't need to be implemented all at once. If someone wants to implement SQLite only, just to get things started, that would be great.