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

Method SyncDBSchema

backend/plugin/db/databricks/sync.go:28–51  ·  view source on GitHub ↗

sync catalog.

(ctx context.Context)

Source from the content-addressed store, hash-verified

26
27// sync catalog.
28func (d *Driver) SyncDBSchema(ctx context.Context) (*storepb.DatabaseSchemaMetadata, error) {
29 // return nothing if no catalogs are specified.
30 if d.curCatalog == "" {
31 return nil, nil
32 }
33
34 // fetch table data from databricks.
35 catalogMap, err := d.listCatologTables(ctx, d.curCatalog)
36 if err != nil {
37 return nil, err
38 }
39
40 dbMetadataMeta := storepb.DatabaseSchemaMetadata{}
41 schemaMap, ok := (catalogMap)[d.curCatalog]
42 if !ok {
43 return nil, errors.Errorf("cannot find metadata for catalog '%s'", d.curCatalog)
44 }
45
46 dbMetadataMeta.Name = d.curCatalog
47 schemas := convertToStorepbSchemas(schemaMap)
48 dbMetadataMeta.Schemas = schemas
49
50 return &dbMetadataMeta, nil
51}
52
53func (d *Driver) SyncInstance(ctx context.Context) (*db.InstanceMetadata, error) {
54 instanceMetadata := &db.InstanceMetadata{}

Callers

nothing calls this directly

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 3

listCatologTablesMethod · 0.95
convertToStorepbSchemasFunction · 0.85
ErrorfMethod · 0.80

Tested by

no test coverage detected