From 4fba896b37d60467269fc692a76b8181e8dd1d7e Mon Sep 17 00:00:00 2001 From: Garet Halliday <me@garet.holiday> Date: Sun, 17 Sep 2023 21:19:43 -0500 Subject: [PATCH] oh --- lib/gat/modes/digitalocean_discovery/config.go | 17 ++++++++++++----- lib/gat/pool/pool.go | 1 - 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/lib/gat/modes/digitalocean_discovery/config.go b/lib/gat/modes/digitalocean_discovery/config.go index f09a0472..6fd93685 100644 --- a/lib/gat/modes/digitalocean_discovery/config.go +++ b/lib/gat/modes/digitalocean_discovery/config.go @@ -95,7 +95,7 @@ func (T *Config) ListenAndServe() error { } for _, dbname := range cluster.DBNames { - poolOptions := pool.Options{ + baseOptions := pool.Options{ Credentials: creds, ServerReconnectInitialTime: 5 * time.Second, ServerReconnectMaxTime: 5 * time.Second, @@ -108,11 +108,12 @@ func (T *Config) ListenAndServe() error { strutil.MakeCIString("application_name"), }, } + var poolOptions pool.Options if T.PoolMode == "session" { - poolOptions.ServerResetQuery = "DISCARD ALL" - poolOptions = session.Apply(poolOptions) + baseOptions.ServerResetQuery = "DISCARD ALL" + poolOptions = session.Apply(baseOptions) } else { - poolOptions = transaction.Apply(poolOptions) + poolOptions = transaction.Apply(baseOptions) } p := pool.NewPool(poolOptions) @@ -149,9 +150,15 @@ func (T *Config) ListenAndServe() error { // change pool credentials creds2 := creds creds2.Username = user.Name + "_ro" - poolOptions2 := poolOptions + poolOptions2 := baseOptions poolOptions2.Credentials = creds2 + if T.PoolMode == "session" { + poolOptions2 = session.Apply(baseOptions) + } else { + poolOptions2 = transaction.Apply(baseOptions) + } + p2 := pool.NewPool(poolOptions2) for _, replica := range replicas { diff --git a/lib/gat/pool/pool.go b/lib/gat/pool/pool.go index 9d75d2dd..cc6c5a21 100644 --- a/lib/gat/pool/pool.go +++ b/lib/gat/pool/pool.go @@ -231,7 +231,6 @@ func (T *Pool) acquireServer(client *Client) *Server { server, ok := T.servers[serverID] T.mu.RUnlock() if !ok { - log.Println("here") T.options.Pooler.DeleteServer(serverID) continue } -- GitLab