Skip to content

Commit ca6550e

Browse files
committed
Procedures table
1 parent 884cb4d commit ca6550e

File tree

3 files changed

+23
-25
lines changed

3 files changed

+23
-25
lines changed

go/libraries/doltcore/doltdb/system_table.go

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -154,7 +154,7 @@ var getWriteableSystemTables = func() []string {
154154
GetDocTableName(),
155155
DoltQueryCatalogTableName,
156156
SchemasTableName,
157-
ProceduresTableName,
157+
GetProceduresTableName(),
158158
IgnoreTableName,
159159
RebaseTableName,
160160

@@ -394,6 +394,11 @@ const (
394394
StatisticsTableName = "dolt_statistics"
395395
)
396396

397+
// GetProceduresTableName returns the name of the dolt stored procedures table.
398+
var GetProceduresTableName = func() string {
399+
return ProceduresTableName
400+
}
401+
397402
const (
398403
// WorkflowsTableName is the dolt CI workflows system table name
399404
WorkflowsTableName = "dolt_ci_workflows"

go/libraries/doltcore/sqle/database.go

Lines changed: 14 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -663,17 +663,23 @@ func (db Database) getTableInsensitive(ctx *sql.Context, head *doltdb.Commit, ds
663663
}
664664
case doltdb.StatisticsTableName:
665665
dt, found = dtables.NewStatisticsTable(ctx, db.Name(), db.ddb, asOf), true
666-
case doltdb.ProceduresTableName:
667-
found = true
668-
backingTable, _, err := db.getTable(ctx, root, doltdb.ProceduresTableName)
666+
case doltdb.ProceduresTableName, doltdb.GetProceduresTableName():
667+
isDoltgresSystemTable, err := resolve.IsDoltgresSystemTable(ctx, tname, root)
669668
if err != nil {
670669
return nil, false, err
671670
}
672-
if backingTable == nil {
673-
dt = NewEmptyProceduresTable()
674-
} else {
675-
writeTable := backingTable.(*WritableDoltTable)
676-
dt = NewProceduresTable(writeTable)
671+
if !resolve.UseSearchPath || isDoltgresSystemTable {
672+
found = true
673+
backingTable, _, err := db.getTable(ctx, root, doltdb.ProceduresTableName)
674+
if err != nil {
675+
return nil, false, err
676+
}
677+
if backingTable == nil {
678+
dt = NewEmptyProceduresTable()
679+
} else {
680+
writeTable := backingTable.(*WritableDoltTable)
681+
dt = NewProceduresTable(writeTable)
682+
}
677683
}
678684
case doltdb.SchemasTableName:
679685
found = true

go/libraries/doltcore/sqle/procedures_table.go

Lines changed: 3 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -31,29 +31,16 @@ import (
3131
"github.com/dolthub/dolt/go/store/types"
3232
)
3333

34-
const (
35-
// ProceduresTableName is the name of the dolt stored procedures table.
36-
ProceduresTableName = "dolt_procedures"
37-
// ProceduresTableNameCol is the name of the stored procedure. Using CREATE PROCEDURE, will always be lowercase.
38-
ProceduresTableNameCol = "name"
39-
// ProceduresTableCreateStmtCol is the CREATE PROCEDURE statement for this stored procedure.
40-
ProceduresTableCreateStmtCol = "create_stmt"
41-
// ProceduresTableCreatedAtCol is the time that the stored procedure was created at, in UTC.
42-
ProceduresTableCreatedAtCol = "created_at"
43-
// ProceduresTableModifiedAtCol is the time that the stored procedure was last modified, in UTC.
44-
ProceduresTableModifiedAtCol = "modified_at"
45-
)
46-
4734
type ProceduresTable struct {
4835
backingTable *WritableDoltTable
4936
}
5037

5138
func (pt *ProceduresTable) Name() string {
52-
return ProceduresTableName
39+
return doltdb.ProceduresTableName
5340
}
5441

5542
func (pt *ProceduresTable) String() string {
56-
return ProceduresTableName
43+
return doltdb.ProceduresTableName
5744
}
5845

5946
func (pt *ProceduresTable) Schema() sql.Schema {
@@ -176,7 +163,7 @@ func DoltProceduresGetOrCreateTable(ctx *sql.Context, db Database) (*WritableDol
176163
return nil, fmt.Errorf("expected a ProceduresTable, but got %T", tbl)
177164
}
178165
if wrapper.backingTable == nil {
179-
return nil, sql.ErrTableNotFound.New(ProceduresTableName)
166+
return nil, sql.ErrTableNotFound.New(doltdb.ProceduresTableName)
180167
}
181168
return wrapper.backingTable, nil
182169
} else {

0 commit comments

Comments
 (0)