MCPcopy Create free account
hub / github.com/bytebase/bytebase / getServerVariable

Method getServerVariable

backend/plugin/db/tidb/sync.go:117–131  ·  view source on GitHub ↗
(ctx context.Context, varName string)

Source from the content-addressed store, hash-verified

115}
116
117func (d *Driver) getServerVariable(ctx context.Context, varName string) (string, error) {
118 db := d.GetDB()
119 query := fmt.Sprintf("SHOW VARIABLES LIKE '%s'", varName)
120 var varNameFound, value string
121 if err := db.QueryRowContext(ctx, query).Scan(&varNameFound, &value); err != nil {
122 if err == sql.ErrNoRows {
123 return "", common.FormatDBErrorEmptyRowWithQuery(query)
124 }
125 return "", util.FormatErrorWithQuery(err, query)
126 }
127 if varName != varNameFound {
128 return "", errors.Errorf("expecting variable %s, but got %s", varName, varNameFound)
129 }
130 return value, nil
131}
132
133// SyncDBSchema syncs a single database schema.
134func (d *Driver) SyncDBSchema(ctx context.Context) (*storepb.DatabaseSchemaMetadata, error) {

Callers 1

SyncInstanceMethod · 0.95

Implementers 15

MockDriverbackend/plugin/advisor/utils_for_tests
Driverbackend/plugin/db/bigquery/bigquery.go
Driverbackend/plugin/db/mongodb/mongodb.go
Driverbackend/plugin/db/trino/trino.go
Driverbackend/plugin/db/redshift/redshift.go
Driverbackend/plugin/db/oracle/oracle.go
Driverbackend/plugin/db/dynamodb/dynamodb.go
Driverbackend/plugin/db/cosmosdb/cosmosdb.go
Driverbackend/plugin/db/spanner/spanner.go
Driverbackend/plugin/db/mssql/mssql.go
Driverbackend/plugin/db/mysql/mysql.go
Driverbackend/plugin/db/pg/pg.go

Calls 5

GetDBMethod · 0.95
FormatErrorWithQueryFunction · 0.92
ScanMethod · 0.80
ErrorfMethod · 0.80

Tested by

no test coverage detected