Skip to content

Commit 5098278

Browse files
authored
Merge pull request #3105 from dolthub/jennifer/srf
support set returning function cases in table function wrapper
2 parents 60a9448 + 2febbe4 commit 5098278

File tree

1 file changed

+8
-1
lines changed

1 file changed

+8
-1
lines changed

sql/expression/tablefunction/table_function.go

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,9 @@ func (t *TableFunctionWrapper) NewInstance(ctx *sql.Context, db sql.Database, ar
5050
if err != nil {
5151
return nil, err
5252
}
53+
if !f.Resolved() {
54+
return nil, fmt.Errorf("table function is unresolved")
55+
}
5356
nt.funcExpr = f
5457
return &nt, nil
5558
}
@@ -82,7 +85,11 @@ func (t *TableFunctionWrapper) RowIter(ctx *sql.Context, r sql.Row) (sql.RowIter
8285
if err != nil {
8386
return nil, err
8487
}
85-
return sql.RowsToRowIter(sql.Row{v}), nil
88+
if ri, ok := v.(sql.RowIter); ok {
89+
return ri, nil
90+
} else {
91+
return sql.RowsToRowIter(sql.Row{v}), nil
92+
}
8693
}
8794

8895
func (t *TableFunctionWrapper) Resolved() bool {

0 commit comments

Comments
 (0)