From eec06dc1fee03371e639e708807c4d4eb03b03c6 Mon Sep 17 00:00:00 2001 From: Aristotle <11413392+tuxranger@users.noreply.github.com> Date: Sun, 21 Mar 2021 17:09:23 -0400 Subject: [PATCH] updated statement execute to have retry logic --- pkg/api/cassandra_repository.go | 8 ++++---- pkg/plugin/basic/cassandra_repository.go | 13 +++++-------- pkg/plugin/oauth2/cassandra_repository.go | 8 ++++---- 3 files changed, 13 insertions(+), 16 deletions(-) diff --git a/pkg/api/cassandra_repository.go b/pkg/api/cassandra_repository.go index 0ffd7ef14..7b4da1e6b 100644 --- a/pkg/api/cassandra_repository.go +++ b/pkg/api/cassandra_repository.go @@ -136,17 +136,17 @@ func (r *CassandraRepository) FindAll() ([]*Definition, error) { var savedDef string - for iter.Scan(&savedDef) { + err := iter.ScanAndClose(func() bool { var definition *Definition err := json.Unmarshal([]byte(savedDef), &definition) if err != nil { log.Errorf("error trying to unmarshal definition json: %v", err) - return nil, err + return false } results = append(results, definition) - } + return true + }, &savedDef) - err := iter.Close() if err != nil { log.Errorf("error getting all definitions: %v", err) } diff --git a/pkg/plugin/basic/cassandra_repository.go b/pkg/plugin/basic/cassandra_repository.go index 45ddafbb6..5c442f657 100644 --- a/pkg/plugin/basic/cassandra_repository.go +++ b/pkg/plugin/basic/cassandra_repository.go @@ -29,14 +29,14 @@ func (r *CassandraRepository) FindAll() ([]*User, error) { var username string var password string - for iter.Scan(&username, &password) { + err := iter.ScanAndClose(func() bool { var user User user.Username = username user.Password = password results = append(results, &user) - } + return true + }, &username, &password) - err := iter.Close() if err != nil { log.Errorf("error getting all oauths: %v", err) } @@ -51,14 +51,11 @@ func (r *CassandraRepository) FindByUsername(username string) (*User, error) { var user User - iter := r.session.GetSession().Query( + err := r.session.GetSession().Query( "SELECT username, password " + "FROM user " + "WHERE username = ?", - username).Iter() - - iter.Scan(&user.Username, &user.Password) - err := iter.Close() + username).Scan(&user.Username, &user.Password) if err != nil { log.Errorf("error selecting user %s: %v", username, err) diff --git a/pkg/plugin/oauth2/cassandra_repository.go b/pkg/plugin/oauth2/cassandra_repository.go index ac0e19ba3..3ee4d1072 100644 --- a/pkg/plugin/oauth2/cassandra_repository.go +++ b/pkg/plugin/oauth2/cassandra_repository.go @@ -26,17 +26,17 @@ func (r *CassandraRepository) FindAll() ([]*OAuth, error) { var savedOauth string - for iter.Scan(&savedOauth) { + err := iter.ScanAndClose(func() bool { var oauth *OAuth err := json.Unmarshal([]byte(savedOauth), &oauth) if err != nil { log.Errorf("error trying to unmarshal oauth json: %v", err) - return nil, err + return false } results = append(results, oauth) - } + return true + }, &savedOauth) - err := iter.Close() if err != nil { log.Errorf("error getting all oauths: %v", err) }