Releases
v0.1.0
Changelog
41cf999 add goreleaser
2f5bfd8 backend: ignore parsing attrs error during handshake (#284 )
1538fcd backend: use atomic.Pointer for *signalRedirect (#271 )
04120b6 router, backend: show server version from TiDB (#281 )
8bbb0e9 metrics: fix metrics Get Backend Count
and Ping Backend Duration
(#280 )
ea6ae2e net: move OnConnClose before Swap (#277 )
d0e6292 net: fix proxy protocol (#274 )
396efd1 backend: add onTraffic callback for serverless (#276 )
e776585 server: add proxyprotocol to http (#270 )
177cae4 lib: configurable TLS version (#267 )
35f19b9 *: customize server version (#268 )
ec35e64 docker: fix script on some older docker builder (#269 )
bd8d8aa security: set minimum version to TLS11 (#265 )
9e46036 router: fix backends are unbalanced when the workload starts (#263 )
28ce2c6 metrics: add more metrics and fix some metrics (#261 )
e85dc2a router, backend: refine some logs (#259 )
6c751f9 metrics: add uptime and cpu limit to grafana (#257 )
05b9446 metrics: correct a typo (#253 )
645756a metrics: shorten backend name on TiDB Operator based clusters (#252 )
45df1bc net: complete some definitions (#250 )
a688abf proxy: move proxyprotocol as a seperate package (#247 )
c369737 server: graceful shutdown notice in HTTP (#246 )
15a1f4f config: adjust keep alive parameters and add comments (#242 )
0ed81af *: remove docs and update readme (#223 )
f05556d manager: remove expiration judgement and reload certs periodically (#244 )
5a00605 backend: add namespace/token to the log of BackendConnManager (#241 )
8a67487 router: remove connMap (#238 )
97b6b32 keepalive: RT timeout parameters (#239 )
14429a3 backend: add quit source to ConnContext (#236 )
cfa03e5 router: generic list (#237 )
edce57f router: set keepalive according to status (#234 )
67e2c78 proxy: provide keepalive helpers (#231 )
513b8f2 backend, net: make connection concurrency safe (#232 )
707f415 proxy: set keepalive for backend connections (#227 )
61c436c backend: add ssl to packet for HandshakeHandler (#226 )
7561e08 backend: do not add CLIENT_SSL for HandshakeHandler (#225 )
a55e6b6 tls: fix server side verification (#221 )
c68bfd3 backend: always set ClientPluginAuth (#222 )
1af65db proxy: fix proxy-protocol under originAddr (#219 )
d968def router: add http timeout in health check (#215 )
249245f backend, metrics: add logs and metrics for getting a backend (#212 )
e3d8e52 backend: adjust timeout parameters (#209 )
32e96e6 router, config: fix deadlock during closing the router (#208 )
4a70be3 config, router: add health check switch (#206 )
df06ec4 config, api: add API for getting the config checksum (#203 )
f388efb backend: revert PR 201 because to make the test accurate (#204 )
1af49c8 test: use require.Eventually instead of sleep (#201 )
e9b628c backend: set tls state in conncontext (#200 )
a15dd3e config: add json tag (#199 )
d6e1f92 backend, net: close the client connection when the backend is down (#198 )
ae713b2 api: add configversion to /api/debug/health (#197 )
f2a197c api: add /api/debug/health (#193 )
e201bdf config: use fsnotify to do config file reload (#191 )
8288910 backend: send the error to the client when the handler encounters an error (#187 )
8dbe706 *: fix docker build problem (#194 )
b26d28e api: refactor config API to adapt tidb-operator/TOML changes (#176 )
565fb8e *: fix CI debug (#186 )
6dc29b9 *: fix CI debug (#185 )
17cf8c8 router, backend: stop retrying connecting to backends if the fetcher fails (#182 )
dec59b4 proxy: ensure conn is always non-nil (#184 )
b93030e *: fix tmate debug (#183 )
ef3f28b backend, net: track traffic for each client connection (#178 )
6be0611 cmd: add version (#177 )
483af7d backend: use BackendConnMgr as ConnContext (#172 )
7167d40 router: refresh backends when the backends are empty (#173 )
66e47e3 router, backend: retry connecting to different backends (#171 )
f41b593 *: upgrade tidb to latest (#170 )
da56a2c *: avoid using official atomic.Int64 (#169 )
d774f31 lib/config: reasonable default config values (#167 )
8bc079b proxy: optional server-side verification (#166 )
68d4015 backend: fix connection won't close if graceful shutdown starts during handshake (#164 )
d642637 *: adapt to toml (#165 )
644009c backend: remove getBackendIO (#160 )
1649979 security: fix server cert config (#163 )
f725184 server, backend: graceful shutdown (#159 )
2c9d13a backend: add OnHandshake (#158 )
b5d2300 backend: closed before/after handshake (#157 )
8aee2ce router: add ConnCount (#156 )
6c986bb metrics: add alertmanager (#155 )
e0ec1ae Route retry (#153 )
a27ec65 update etcd version (#152 )
1a5316d proxy: add OnConnClose for handler (#154 )
5490197 *: tls refactor (#146 )
32b4c29 *: remove write timeout (#151 )
9ad7689 metrics: add goroutine panel (#150 )
c8493a8 *: timeout for cli and server (#149 )
37df9d1 server: default rate limit (#148 )
be49463 *: fix integration with serverless due to opentelemetry (#147 )
153e336 server: support custom handler for Server (#145 )
3cc9581 backend: add context to pass parameters need by handler (#144 )
ed9650d server: remove etcd (#140 )
cc58ecd backend: update handshakeHandler interface (#143 )
a853843 router: refactor creation of backendFetcher (#141 )
b6599aa proxy: remove NamespaceManager from HandshakeHandler interface (#142 )
b94d61b backend: Add HandshakeHandler to customize handling handshake (#138 )
3572e4e *: Update README.md (#139 )
2efc1db router: support fetching backend list from external interface (#135 )
d482ba1 *: add back salt (#134 )
6a5e31d *: change user (#132 )
31a09e9 *: add log for mysql error (#131 )
73255cd *: fix TLS cases (#128 )
b8de341 *: fix log format (#130 )
4f31e77 *: handle more nil error cases (#129 )
c60d0ad *: add mod tidy action (#125 )
376829c *: redirect without TLS (#126 )
fa4b426 *: replace old encoder with new encoder (#123 )
ac74724 *: update README (#122 )
87878b2 *: fix newtidb encoder (#92 )
544b0cc *: fix cli stdin (#121 )
ff1f40a *: improve dockerfile (#120 )
92077f9 *: fix static backends & support route by user (#119 )
d3971a8 manager: rotate ca (#115 )
80ff910 router: do not fail if tiproxy can not connect PD in the first try (#118 )
9542e0c proxy: enable non-TLS connection to TiDB (#117 )
9917e02 *: pass rsa key size correctly (#116 )
c0ab948 manager: auto reload certs (#114 )
458b03c *: support clustering (#112 )
c96dd43 *: support proxy protocol on reconnection (#113 )
3432991 backend: handshake with client first (#108 )
b1e0a00 *: fix CI cache (#107 )
c46acb9 *: improve docker scripts (#104 )
e255b6b *: output coverage stats to the makefile (#106 )
6a218a1 *: fix master CI cache (#103 )
87e4081 *: better workflow (#101 )
876ba28 backend: update db in the handshake (#102 )
3b6c664 *: support proxy-protocol (#96 )
0ef11e1 *: add lint CI (#99 )
475eb1b *: ctl TLS refine (#98 )
b3616a3 logger: fix case TestUpdateCfg
(#100 )
3bf1000 manager, config: watch and apply the latest log configuration online (#95 )
fefaaa3 *: filter nil errors (#97 )
0354249 proxy/client: do not print error on EOF (#90 )
1eca8bd *: compute rev before firing go routines (#93 )
3c8839f *: fix hang bug (#91 )
f3c5305 proxy/net: human readable capability flag (#89 )
31a5604 manager: add logger manager (#88 )
ea3cd6f *: apply some lint (#87 )
a922101 *: another operator adapt PR (#86 )
8f2d1fd router, proxy: refine logs of router and backend (#85 )
d7f1885 *: new tls configuration for operator (#80 )
08a75db *: remove logutil in proxy (#84 )
10073ed metrics: add grafana panel (#81 )
5461943 router: fix unstable test TestConnBalanced
(#82 )
349d1d6 *: add metrics to prometheus (#79 )
b1853c4 *: fix multi module test (#78 )
06effc0 *: adapt needs for operator support (#76 )
c4d3fa9 router: add tests for router (#74 )
ddf7bfb backend: fix the bug that the redirection signal may be discarded (#75 )
8d8a09e backend, router: fix errors when closing and redirecting concurrently (#72 )
a4b095d namespace: create default namespace fallback if not any (#65 )
8d47abe docker: add docker support (#70 )
d3ebbdf util: try to fix panic (#61 )
77b931f router: refine BackendObserver and add tests (#59 )
e665dba config: consistent marshal name (#67 )
12c633b server: use json for API and internal storage (#66 )
b49db9a *: add pingcap/log encoder as the default encoder (#62 )
8915c07 util: remove ast package (#63 )
bacaced config: dynamic proxy config (#56 )
64e87f0 backend: support CLIENT_DEPRECATE_EOF (#52 )
d62e002 *: trigger test and build (#55 )
9e60836 *: only ref to workflows directory are allowed (#54 )
2ca3230 *: add CI pipe line (#53 )
0de79f7 backend: report errors for unsupported capabilities (#51 )
c5b871a backend: remove support for protocol_41 (#49 )
ed53270 backend: add tests for BackendConnMgr (#41 )
9d6726a proxy: bring back auto tls cert creation (#44 )
d6a5878 config: fix url config (#43 )
4bf1155 backend: add tests for network error (#39 )
930663c backend: add tests for forwarding multi-statements (#37 )
5bd467f backend: add tests for transaction status (#35 )
898d46a backend: add tests for prepared statements (#33 )
3974260 backend: add tests for processing simple commands (#31 )
1c4b17f proxy: refine sqlserver.SQLServer (#27 )
94aadce util: remove useless components (#26 )
bc0f00e proxy: extract tcp logic out further (#24 )
d86b629 proxy: expose proxy protocol API (#25 )
a6db638 proxy: remove driver and queryctx (#18 )
080c85f backend: extract protocol processing from Authenticator
and add a test suite (#22 )
7edc004 manager: add basic UT for config manager (#21 )
7febab7 proxy: fix compilation (#20 )
2270308 proxy: fix TLS buffering (#19 )
df86464 proxy: simplified packetIO and proxyv2 en(de)coding (#17 )
fe7b92e manager: new namespace manager based on etcd (#13 )
2a653c3 config: remove useless fields, fix tests (#12 )
309eb2c utils: new error package (#9 )
d90e307 *: refine github templates (#10 )
64a12cd proxy: rename package server
to sqlserver
(#6 )
73ed0af *: update license and remove unused packages (#5 )
8441634 *: update tidb dependency to latest (#4 )
cdd54bf proxy: remove sessionmgr (#3 )
a6781e8 *: replace the imports from djshow832/weir to pingcap/TiProxy (#2 )
6bc5d2d fix wrong API address
3b47695 *: introduce etcd and cli (#1 )
0aae864 *: remove useless code (#27 )
d167be5 *: add license (#26 )
eb7f7c4 backend: fix redirection fails if the initial db is dropped during session (#25 )
25a775d router: skip checking health for static TiDB instances (#24 )
eaaad93 router: fix router sometimes doesn't redirect sessions when scale-out (#23 )
db60dca router: make routing more even when there is a sudden flow (#22 )
07234b4 router: migrate connection automatically during scale-in and scale-out (#21 )
d0f9096 router: enable router to manage backend connections directly (#20 )
97c9a82 router: observe the backend members and check health (#19 )
155680c backend: support com_change_user and multiple statements (#18 )
98f30f1 backend: support closing connections (#17 )
6bdb86f backend: fix handling COM_STMT_CLOSE (#16 )
bc8c195 backend: wait for the end of prepared statements before redirection (#15 )
b5ad314 backend: always enable TLS with the server (#14 )
3b42347 backend: wait for the end of transactions before redirecting the session (#13 )
bcdb706 backend, security: support token-based authentication (#12 )
0888d77 backend: support query and init session states (#11 )
f11ee8d *: upgrade go to 1.18 (#10 )
8b2d928 backend: support reconnecting to server with caching_sha2_password (#9 )
43b941d api, backend: support sending redirect command (#8 )
a61243c util: add 2 missing packages (#7 )
eef460b backend: support TLS connection (#6 )
de506b0 backend: add authenticator to parse authInfo (#5 )
d87f436 *: remove unnecessary code (#4 )
76afa98 sessionmgr: handshake and forward msg between client and server (#3 )
dfbb217 Merge pull request #2 from djshow832/auth_and_ns
f0deaba auth be compatible with namespace
be4de2c Merge pull request #1 from djshow832/demo
b2f92c1 refactor architecture
b758675 fix readme pic path (#73 )
b17c352 fix readme (#71 )
8ca3c28 Merge pull request #70 from eastfisher/dev-upgrade-dependency
3ab3d8f upgrade dependency (gin) to avoid security problem
348497f Merge pull request #67 from qingfeng777/master
c63052e Merge pull request #66 from EAHITechnology/master
a4ffba1 refactor: rename module to github.com/tidb-incubator/weir (#69 )
11e77c4 fix comment
edab9e4 exec mod tidy
efdc07b Merge pull request #1 from EAHITechnology/fix_getBreakerName_scope_type
3e1e6b0 fix namespace
a694b53 use rand2 instead of std rand (#65 )
9b3dab2 add cluster name to metrics (#64 )
dd5825b change log level to warn when sql error occurs (#63 )
a2833d7 doc: add grafana template (#62 )
4478b88 update doc: namespace config (#61 )
0b02d63 dev rate limiter (#60 )
75533ad dev sql blacklist and whitelist (#59 )
51c97df fix attached conn metric (#58 )
4b3a14c Fix sql breaker (#57 )
578a9e3 fix breaker config nil (#56 )
873e1a7 fix attached conn metric (#55 )
176b4c6 Refactor circuit breaker (#54 )
2a8814a upgrade breaker configuration (#52 )
65c79ce use util/errors.Is() instead of std errors.Is() (#50 )
853c5e8 fix error set ErrBadConn (#49 )
51db0ef remove set session vars (#47 )
10e39cb fix recordQueryMetrics()
6d90a02 add first table name in queryctx metrics (#45 )
c60a3c3 add Session timeout (#44 )
5bc89ac add more pprof api (#43 )
aa30efd fix connection was bad (#42 )
6363ab8 fix: check namespace nil in when close queryctx (#41 )
ec193f2 update README (#40 )
3a51c40 add cn docs (#39 )
34e19eb fix: desc conn count metrics
126a5b2 add attached conn gauge metrics (#38 )
2b92e2e fix backend sysvar error (#37 )
d2fa422 fix: SET NAMES execute error in backend conn (#36 )
da38687 Merge pull request #35 from eastfisher/fix-backend-namespace-name
0f30255 fix: set backend namespace name
1fc95b6 change metrics label name
c403129 Merge pull request #34 from eastfisher/fix-set-names
db6ec34 fix charset error
0d01823 remove proxy server concurrent limiter (#32 )
a1e44fe remove token limit confs
bd33318 remove proxy server concurrent limiter
1e5a8cb add more proxy metrics (#31 )
ca16e32 fix metrics pkg import
ac74f75 fix metrics pkg import
3873c2f add basic proxy metrics (#30 )
fdd28f7 add proxy metrics (#29 )
0ec7878 support set session system variables (#28 )
39a5992 fix queryctx close panic when init failed (#27 )
7c3c682 add example config files (#26 )
8177a35 fix affectrows (#25 )
9da3cf0 dev fsm conn prepare (#24 )
29d142f add fsm conn manager (#23 )
cbe8a36 fix txn conn execute error (#21 )
bb85a36 fix error compile code (#20 )
ef19a06 support binary prepare commands (#19 )
c5ee15d refactor: extract AttachedConnHolder to handle txn (#18 )
c501296 fix: function FieldList lose one row of data. (#17 )
171bead add error close in PooledBackendConn (#15 )
3734c13 replace go-mysql dependency (#14 )
3addc39 pass gomysql result from backend TiDB to server (#13 )
899fe1d update proxy config
5219d59 add configcenter (#12 )
a28b944 update Makefile weirproxy
7850961 change namespace impl to one (#11 )
9ba91bf Merge pull request #10 from eastfisher/dev-proxy-api
69672dc add cmd proxy
7592eba add proxy api and proxy wrapper
695a68a dev proxy (#9 )
077faba first commit proxy driver (#8 )
fcdd3fc Merge pull request #5 from eastfisher/feat-proxy-server
248ca7c add proxy server
da85ff5 add proxy config and namespace config
0526a73 update go.mod
2eb37d9 Merge pull request #2 from eastfisher/dev-utils
6eb2571 migrate some utils
0d5b344 change project name in github template files
2ea17c6 copy ISSUE_TEMPLATE and pull_request_template.md from pd
a46f357 create Makefile
2752d7a add .golangci.yaml
51b5fe3 go mod init
630b07a add .gitignore
a65047a add CONTRIBUTING.md and OWNERS
158c444 Create README.md
a623200 copy LICENSE and code-of-conduct from template
You can’t perform that action at this time.