Skip to content

Commit 188b55d

Browse files
committed
Attempt at schema table
1 parent ca6550e commit 188b55d

File tree

3 files changed

+21
-9
lines changed

3 files changed

+21
-9
lines changed

go/libraries/doltcore/doltdb/system_table.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -236,6 +236,11 @@ const (
236236
QueryCatalogDescriptionCol = "description"
237237
)
238238

239+
// GetSchemasTableName returns the name of the dolt schema fragment table
240+
var GetSchemasTableName = func() string {
241+
return SchemasTableName
242+
}
243+
239244
const (
240245
// SchemasTableName is the name of the dolt schema fragment table
241246
SchemasTableName = "dolt_schemas"

go/libraries/doltcore/sqle/database.go

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -681,13 +681,24 @@ func (db Database) getTableInsensitive(ctx *sql.Context, head *doltdb.Commit, ds
681681
dt = NewProceduresTable(writeTable)
682682
}
683683
}
684-
case doltdb.SchemasTableName:
685-
found = true
686-
backingTable, _, err := db.getTable(ctx, root, doltdb.SchemasTableName)
684+
case doltdb.SchemasTableName, doltdb.GetSchemasTableName():
685+
isDoltgresSystemTable, err := resolve.IsDoltgresSystemTable(ctx, tname, root)
687686
if err != nil {
688687
return nil, false, err
689688
}
690-
dt = NewSchemaTable(backingTable)
689+
if !resolve.UseSearchPath || isDoltgresSystemTable {
690+
found = true
691+
backingTable, _, err := db.getTable(ctx, root, doltdb.SchemasTableName)
692+
if err != nil {
693+
return nil, false, err
694+
}
695+
if backingTable == nil {
696+
dt = NewEmptySchemaTable()
697+
} else {
698+
writeTable := backingTable.(*WritableDoltTable)
699+
dt = NewSchemaTable(writeTable)
700+
}
701+
}
691702
}
692703

693704
if found {

go/libraries/doltcore/sqle/schema_table.go

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -219,11 +219,7 @@ func getOrCreateDoltSchemasTable(ctx *sql.Context, db Database) (retTbl *Writabl
219219
schemaName := doltdb.DefaultSchemaName
220220
if resolve.UseSearchPath {
221221
if db.schemaName == "" {
222-
schemaName, err = resolve.FirstExistingSchemaOnSearchPath(ctx, root)
223-
if err != nil {
224-
return nil, err
225-
}
226-
db.schemaName = schemaName
222+
db.schemaName = "dolt"
227223
} else {
228224
schemaName = db.schemaName
229225
}

0 commit comments

Comments
 (0)