Commit Graph

6 Commits

Author SHA1 Message Date
Wez Furlong b6633b95dc sqlite: bind params as strings, fixup empty rows case
We were binding as blobs which we could read back as strings,
but which didn't match string inputs! Very confusing!
Always bind as strings.

For the empty rows case: don't return the affected row count
unless the query has 0 columns, as we otherwise cannot distinguish
between no matching results and a single column with 0.
2023-03-22 17:01:07 -07:00
Wez Furlong c2cb5b798b fix centos7 build, adjust docker to use /opt/kumomta
Revert building static/bundled sqlite, as the logic deep in sqlite3-src
makes no attempt to deal with this mess on centos7:

  = note: /opt/rh/devtoolset-9/root/usr/libexec/gcc/x86_64-redhat-linux/9/ld: /__w/kumomta/kumomta/target/release/deps/libsqlite3_src-b3c44e6f34aac065.rlib(sqlite3.o):(.data.rel.aSyscall+0xb0): undefined reference to `fcntl64'
          collect2: error: ld returned 1 exit status

(I don't blame it!)

Deal with that in the docker image by simply installing sqlite
in the docker image.

And since I'm touching the docker stuff, adjust its install
path and layout to match that of the rpm and deb packages.
2023-03-14 14:14:37 -07:00
Wez Furlong b287db1944 ensure that we statically link sqlite
This avoids picking up a dynamic dep on libsqlite3.so
when we build the docker image.
2023-03-13 19:41:33 -07:00
Wez Furlong 8e0583b6cf adopt tokio::task::Builder to label tasks 2023-03-06 09:38:18 -07:00
Wez Furlong eaaddbb6b6 add redis client 2023-03-05 09:57:03 -07:00
Wez Furlong 2cf3d2387c add sqlite data access
A bit of a big commit because I wanted sqlite queries to run
async and there isn't a sane way to tell in mlua whether a
given context is safe to yield for an await, which meant making
every case where we call into lua be fully async.

This adds a simple but powerful binding to sqlite that performs
its IO in a blocking tokio thread pool, and returns the results
back to lua.

There is no implicit caching of queries, and no implicit connection
pooling.
2023-03-04 18:07:31 -07:00