mirror of
https://github.com/optim-enterprises-bv/vault.git
synced 2025-11-02 11:38:02 +00:00
Pass context to Cassandra queries (#6954)
This commit is contained in:
@@ -129,7 +129,7 @@ func (c *Cassandra) CreateUser(ctx context.Context, statements dbplugin.Statemen
|
||||
err = session.Query(dbutil.QueryHelper(query, map[string]string{
|
||||
"username": username,
|
||||
"password": password,
|
||||
})).Exec()
|
||||
})).WithContext(ctx).Exec()
|
||||
if err != nil {
|
||||
for _, stmt := range rollbackCQL {
|
||||
for _, query := range strutil.ParseArbitraryStringSlice(stmt, ";") {
|
||||
@@ -140,7 +140,7 @@ func (c *Cassandra) CreateUser(ctx context.Context, statements dbplugin.Statemen
|
||||
|
||||
session.Query(dbutil.QueryHelper(query, map[string]string{
|
||||
"username": username,
|
||||
})).Exec()
|
||||
})).WithContext(ctx).Exec()
|
||||
}
|
||||
}
|
||||
return "", "", err
|
||||
@@ -185,7 +185,7 @@ func (c *Cassandra) RevokeUser(ctx context.Context, statements dbplugin.Statemen
|
||||
|
||||
err := session.Query(dbutil.QueryHelper(query, map[string]string{
|
||||
"username": username,
|
||||
})).Exec()
|
||||
})).WithContext(ctx).Exec()
|
||||
|
||||
result = multierror.Append(result, err)
|
||||
}
|
||||
@@ -225,7 +225,7 @@ func (c *Cassandra) RotateRootCredentials(ctx context.Context, statements []stri
|
||||
err := session.Query(dbutil.QueryHelper(query, map[string]string{
|
||||
"username": c.Username,
|
||||
"password": password,
|
||||
})).Exec()
|
||||
})).WithContext(ctx).Exec()
|
||||
|
||||
result = multierror.Append(result, err)
|
||||
}
|
||||
|
||||
@@ -137,7 +137,7 @@ func (c *cassandraConnectionProducer) Init(ctx context.Context, conf map[string]
|
||||
return conf, nil
|
||||
}
|
||||
|
||||
func (c *cassandraConnectionProducer) Connection(_ context.Context) (interface{}, error) {
|
||||
func (c *cassandraConnectionProducer) Connection(ctx context.Context) (interface{}, error) {
|
||||
if !c.Initialized {
|
||||
return nil, connutil.ErrNotInitialized
|
||||
}
|
||||
@@ -147,7 +147,7 @@ func (c *cassandraConnectionProducer) Connection(_ context.Context) (interface{}
|
||||
return c.session, nil
|
||||
}
|
||||
|
||||
session, err := c.createSession()
|
||||
session, err := c.createSession(ctx)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -172,7 +172,7 @@ func (c *cassandraConnectionProducer) Close() error {
|
||||
return nil
|
||||
}
|
||||
|
||||
func (c *cassandraConnectionProducer) createSession() (*gocql.Session, error) {
|
||||
func (c *cassandraConnectionProducer) createSession(ctx context.Context) (*gocql.Session, error) {
|
||||
hosts := strings.Split(c.Hosts, ",")
|
||||
clusterConfig := gocql.NewCluster(hosts...)
|
||||
clusterConfig.Authenticator = gocql.PasswordAuthenticator{
|
||||
@@ -256,7 +256,7 @@ func (c *cassandraConnectionProducer) createSession() (*gocql.Session, error) {
|
||||
}
|
||||
|
||||
// Verify the info
|
||||
err = session.Query(`LIST ALL`).Exec()
|
||||
err = session.Query(`LIST ALL`).WithContext(ctx).Exec()
|
||||
if err != nil && len(c.Username) != 0 && strings.Contains(err.Error(), "not authorized") {
|
||||
rowNum := session.Query(dbutil.QueryHelper(`LIST CREATE ON ALL ROLES OF '{{username}}';`, map[string]string{
|
||||
"username": c.Username,
|
||||
|
||||
Reference in New Issue
Block a user