Lev Kokotov
9d84d6f131
Graceful shutdown and refactor ( #144 )
...
* Graceful shutdown and refactor
* ok
* _Graceful_ shutdown
* Remove hardcoded setting
* clean up
* end
* timeout
* hmm
* hmm!
* bash
* bash
* hmm
* maybe maybe
* Adds tests and move non-admin connection rejection to startup (#145 )
* Move error response
* Adds tests and removes unused variable
* Adds debug log
Co-authored-by: zainkabani <77307340+zainkabani@users.noreply.github.com >
2022-08-25 06:40:56 -07:00
Mostafa Abdelraouf
7592339092
Prevent clients from sticking to old pools after config update ( #113 )
...
* Re-acquire pool at the beginning of Protocol loop
* Fix query router + add tests for recycling behavior
2022-08-09 12:18:27 -07:00
Mostafa Abdelraouf
2ae4b438e3
Add support for multi-database / multi-user pools ( #96 )
...
* Add support for multi-database / multi-user pools
* Nothing
* cargo fmt
* CI
* remove test users
* rename pool
* Update tests to use admin user/pass
* more fixes
* Revert bad change
* Use PGDATABASE env var
* send server info in case of admin
2022-07-27 19:47:55 -07:00
Lev Kokotov
f06f64119c
Fix panic & query router bug ( #85 )
...
* Fix query router bug
* Fix panic
2022-06-24 15:14:31 -07:00
Lev Kokotov
b93303eb83
Live reloading entire config and bug fixes ( #84 )
...
* Support reloading the entire config (including sharding logic) without restart.
* Fix bug incorrectly handing error reporting when the shard is set incorrectly via SET SHARD TO command.
selected wrong shard and the connection keep reporting fatal #80 .
* Fix total_received and avg_recv admin database statistics.
* Enabling the query parser by default.
* More tests.
2022-06-24 14:52:38 -07:00
Lev Kokotov
df85139281
Update README. Comments. Version bump. ( #60 )
...
* update readme
* comments
* just a version bump
2022-03-10 01:33:29 -08:00
Lev Kokotov
35828a0a8c
Per-shard statistics ( #57 )
...
* per shard stats
* aight
* cleaner
* fix show lists
* comments
* more friendly
* case-insensitive
* test all shards
* ok
* HUH?
2022-03-04 17:04:27 -08:00
Lev Kokotov
a784883611
Allow to set shard and set sharding key without quotes ( #43 )
...
* Allow to set shard and set sharding key without quotes
* cover it
* dont look for these in the middle of another query
* friendly regex
* its own response to set shard key
2022-02-24 12:16:24 -08:00
Lev Kokotov
b3c8ca4b8a
Another example of a sharding function ( #41 )
...
* Another example of a sharding function
* tests
2022-02-23 11:50:34 -08:00
Lev Kokotov
dce72ba262
Add debug logging ( #39 )
...
* Add debug for easier debugging
* fmt
* a couple more messages
2022-02-22 19:26:08 -08:00
Lev Kokotov
86941d62e4
Reset query router setting to default ( #32 )
2022-02-21 00:00:50 -08:00
Lev Kokotov
44b5e7eeee
use logger lib; minor refactor; sv_* stats ( #29 )
2022-02-20 22:47:08 -08:00
Lev Kokotov
d4c1fc87ee
Reloadable config ( #26 )
...
* Reloadable config
* readme
* live config reload
* test matrix
2022-02-19 13:57:35 -08:00
Lev Kokotov
a556ec1c43
More query router commands; settings last until changed again; docs ( #25 )
...
* readme
* touch up docs
* stuff
* refactor query router
* remove unused
* less verbose
* docs
* no link
* method rename
2022-02-19 08:57:24 -08:00
Lev Kokotov
bbacb9cf01
Explicit shard selection; Rails tests ( #24 )
...
* Explicit shard selection; Rails tests
* try running ruby tests
* try without lockfile
* aha
* ok
2022-02-18 09:43:07 -08:00
Lev Kokotov
aa796289bf
Query parser 3.0 ( #23 )
...
* Starting query parsing
* Query parser
* working config
* disable by default
* fix tsets
* introducing log crate; test for query router; comments
* typo
* fixes for banning
* added test for prepared stmt
2022-02-18 07:10:18 -08:00
Lev Kokotov
4c8a3987fe
Refactor query routing into its own module ( #22 )
...
* Refactor query routing into its own module
* commments; tests; dead code
* error message
* safer startup
* hm
* dont have to be public
* wow
* fix ci
* ok
* nl
* no more silent errors
2022-02-16 22:52:11 -08:00