MCPcopy Index your code
hub / github.com/coder/coder / resetSchema

Function resetSchema

scripts/develop/dbrecovery.go:509–527  ·  view source on GitHub ↗
(ctx context.Context, db *sql.DB)

Source from the content-addressed store, hash-verified

507}
508
509func resetSchema(ctx context.Context, db *sql.DB) error {
510 tx, err := db.BeginTx(ctx, nil)
511 if err != nil {
512 return xerrors.Errorf("begin: %w", err)
513 }
514 defer func() { _ = tx.Rollback() }()
515
516 for _, stmt := range []string{
517 `DROP SCHEMA IF EXISTS _develop CASCADE`,
518 `DROP SCHEMA IF EXISTS public CASCADE`,
519 `CREATE SCHEMA IF NOT EXISTS public`,
520 `GRANT ALL ON SCHEMA public TO public`,
521 } {
522 if _, err := tx.ExecContext(ctx, stmt); err != nil {
523 return xerrors.Errorf("exec %q: %w", stmt, err)
524 }
525 }
526 return tx.Commit()
527}
528
529func connectDB(ctx context.Context, pgURL string) (*sql.DB, error) {
530 db, err := sql.Open("postgres", pgURL)

Callers 1

recoverDBFunction · 0.85

Calls 3

ExecContextMethod · 0.80
CommitMethod · 0.80
ErrorfMethod · 0.45

Tested by

no test coverage detected