Commit graph

527 commits

Author SHA1 Message Date
Ryan Leckey
4bb88e7da2 chore: update dependencies 2020-06-27 05:57:21 -07:00
Marcus Griep
816ea65c39 fix(mysql): improve compatibility with ProxySQL
Joins the MySQL connection setup statements into a single statement to
prevent issues with ProxySQL, which requires special handling of
connections that might be shared between multiple backends.

Fixes #422

Signed-off-by: Marcus Griep <marcus@griep.us>
2020-06-27 05:55:34 -07:00
Ryan Leckey
4989327c97 fix: remove cfg flag on .capacity 2020-06-27 05:51:03 -07:00
Julius de Bruijn
2115d02cb0 Move pg-specific socket options to its options.
Makes tcp connections explicit.
2020-06-27 05:34:23 -07:00
Julius de Bruijn
71ebeb9cc3 Remove warnings on mssql for statement cache 2020-06-27 05:34:23 -07:00
Julius de Bruijn
bcc42644e6 Do not do compile-time checks on pg socket 2020-06-27 05:34:23 -07:00
Julius de Bruijn
0ccfab1f25 Decide host parameter between host and socket
- If starts with a leading `/`, use socket
- If not, use host
2020-06-27 05:34:23 -07:00
Julius de Bruijn
868dc3dd5b MySQL UDS Support
- Adds support for Unix Domain Sockets on MySQL
- Allows setting the socket path in PostgreSQL connection options
- ... and MySQL connection options
2020-06-27 05:34:23 -07:00
Ryan Leckey
6235eb5a5e fix: StatementCache::capacity is only used by sqlite 2020-06-27 04:09:58 -07:00
Ryan Leckey
a7117dd71b feat(any): introduce the Any database driver which enables choosing the database driver at runtime 2020-06-27 04:07:40 -07:00
Ryan Leckey
62d02e9450 feat: implement Execute for (&str, Arguments) 2020-06-27 04:06:54 -07:00
Ryan Leckey
5091a28ce6 refactor: remove Default requirement for ArgumentBuffer 2020-06-27 04:06:35 -07:00
Ryan Leckey
b7ec7bbd3e refactor: allow non-Send adding to arguments crate-local 2020-06-27 04:06:22 -07:00
Ryan Leckey
eb26e9f557 refactor: remove several blanket impls to allow more customization 2020-06-27 04:05:23 -07:00
Ryan Leckey
34859af1d3 feat(core): lift Send bound for arguments to Arguments::add
Execute already required Send so this just makes it fail earlier
2020-06-27 04:03:17 -07:00
Ryan Leckey
991c0ba155 fix(sqlite): double negative in sqlite connection prepare 2020-06-25 05:34:14 -07:00
Ryan Leckey
8d1368f163 fix(sqlite): with caching disabled force persistent to false
additionally, set persistent to true for a cached statement and
correctly only reset the statement when its being reused
2020-06-25 03:44:26 -07:00
Ryan Leckey
8d24dfc0ef feat(cache): expose capacity on StatementCache 2020-06-25 03:43:31 -07:00
Julius de Bruijn
363dbfb81e No need to reset the statement when dropping. 2020-06-25 12:38:20 +02:00
Julius de Bruijn
745a32ab60 Close pg statements correctly 2020-06-25 12:26:44 +02:00
Julius de Bruijn
f969798cb6 Document new connection string params 2020-06-25 11:57:55 +02:00
Julius de Bruijn
2c2a277666 Caching methods in Connection 2020-06-25 10:44:05 +02:00
Julius de Bruijn
eba82e3fc1 LRU caching for SQLite 2020-06-24 19:46:32 +02:00
Julius de Bruijn
5d64310004 LRU caching for PostgreSQL 2020-06-24 19:01:54 +02:00
Julius de Bruijn
2b6f242a22 LRU statement cache for MySQL 2020-06-24 16:57:06 +02:00
Tim Murison
72c4e040bc Require a mutable reference to self 2020-06-23 17:03:48 -07:00
Tim Murison
cac3f193d7 Adds a method get the underlying sqlite3 pointer 2020-06-23 17:03:48 -07:00
Zachery Gyurkovitz
84e8ed0d4c fix: bigdecimal decoding ob1 for positive weight multiples of 4 2020-06-23 13:10:03 -07:00
Ryan Leckey
f85920acaf fix(postgres): ignore more harmless messages in execute 2020-06-21 22:09:00 -07:00
Ryan Leckey
3dc067f031 fix: downgrade num-bigint due to conflicting version in rsa 2020-06-21 04:13:45 -07:00
Ryan Leckey
ec6b4be7fb fix: rename Decode::accepts to Type::compatible for MSSQL / bool 2020-06-21 04:13:33 -07:00
Ryan Leckey
4448c0e629 feat: add should_flush and only spawn on drop for PoolConnection if we need to flush 2020-06-21 03:55:31 -07:00
Ryan Leckey
d76002e110 postgres: ignore more messages during execution if they are deemed not relevant 2020-06-21 03:55:31 -07:00
Ryan Leckey
f8dc7284b9 chore: update dependencies 2020-06-21 03:55:31 -07:00
Ryan Leckey
e7e2f5b37a fix: implement transparent Serialize and Deserialize for Json<_> 2020-06-21 03:55:31 -07:00
Ryan Leckey
93728a051c fix: impl Deserialize for Json for MySQL instead of DeserializeOwned 2020-06-21 03:55:31 -07:00
Ryan Leckey
21717b47a0 fix: AsyncStream should use a zero-capacity stream to ensure we run in lock-step 2020-06-21 03:55:31 -07:00
Ryan Leckey
6cfe5ac811 refactor: tweak type name display to use TypeInfo::name 2020-06-21 03:55:31 -07:00
Ryan Leckey
aaa475cc33 refactor: move Decode::accepts to Type::compatible 2020-06-21 03:55:31 -07:00
Ryan Leckey
5ac7601fe2 docs: extend documentation on Encode/Decode 2020-06-21 03:55:31 -07:00
Ryan Leckey
11e21e201c feat: add a name method to TypeInfo 2020-06-21 03:55:31 -07:00
Ryan Leckey
e3adb88ab5 feat: disassociate Type from Decode further and require only Decode for FromRow + Row + Value 2020-06-21 03:55:31 -07:00
Daniel Akhterov
80d545109b
feat: implement BIT support in MSSQL 2020-06-15 22:49:33 -07:00
Bo Jeanes
956721c96c Don't leak txns on explicit commit/rollback
Fixes #409
2020-06-14 20:03:50 -07:00
Ryan Leckey
e10c7c723f refactor: remove impl of Encode::produces where it doesn't make sense
produces is meant as a value-dependent override, it only makes sense
currently for MSSQL or in generic contexts
2020-06-13 10:18:04 -07:00
Ryan Leckey
847e0b6b6b fix(mysql): update usage of Digest and remove OAEP module in favor of the RSA crate 2020-06-13 08:55:24 -07:00
Ryan Leckey
c2ce35fc06 fix(postgres): update usage of Digest 2020-06-13 08:54:52 -07:00
Ryan Leckey
e2ac01e190 chore: update dependencies 2020-06-13 08:54:38 -07:00
Ryan Leckey
c9f3e1adca feat(postgres): add support for built-in range types and allow derives to handle custom range types
Co-authored-by: Caio <c410.f3r@gmail.com>
2020-06-12 15:33:19 -07:00
Ryan Leckey
fedd883d91 style: rustfmt 2020-06-12 15:33:19 -07:00