diff --git a/materialize-azure-fabric-warehouse/client.go b/materialize-azure-fabric-warehouse/client.go index 5c8ecee140..77dd1804e9 100644 --- a/materialize-azure-fabric-warehouse/client.go +++ b/materialize-azure-fabric-warehouse/client.go @@ -266,6 +266,9 @@ func (c *client) ListSchemas(ctx context.Context) ([]string, error) { } out = append(out, schema) } + if err := rows.Err(); err != nil { + return nil, fmt.Errorf("iterating rows: %w", err) + } return out, nil } diff --git a/materialize-motherduck/client.go b/materialize-motherduck/client.go index c614bf2ffc..977977e6db 100644 --- a/materialize-motherduck/client.go +++ b/materialize-motherduck/client.go @@ -122,6 +122,9 @@ func (c *client) ListSchemas(ctx context.Context) ([]string, error) { } out = append(out, schema) } + if err := rows.Err(); err != nil { + return nil, fmt.Errorf("iterating rows: %w", err) + } return out, nil } diff --git a/materialize-motherduck/config.go b/materialize-motherduck/config.go index 4994c8cbfc..aa0e6c82fb 100644 --- a/materialize-motherduck/config.go +++ b/materialize-motherduck/config.go @@ -325,6 +325,9 @@ func (c *config) db(ctx context.Context) (*stdsql.DB, error) { log.WithField("name", name).Warn("unexpected secret selected") } } + if err := rows.Err(); err != nil { + return nil, fmt.Errorf("iterating selected secrets: %w", err) + } return db, err } diff --git a/materialize-redshift/client.go b/materialize-redshift/client.go index 688a2c76cb..28a7c1b4d2 100644 --- a/materialize-redshift/client.go +++ b/materialize-redshift/client.go @@ -142,6 +142,9 @@ func (c *client) ListSchemas(ctx context.Context) ([]string, error) { } out = append(out, schema) } + if err := rows.Err(); err != nil { + return nil, fmt.Errorf("iterating rows: %w", err) + } return out, nil } diff --git a/materialize-sql/std_sql.go b/materialize-sql/std_sql.go index 0fdb89cb47..9e71e3aa66 100644 --- a/materialize-sql/std_sql.go +++ b/materialize-sql/std_sql.go @@ -223,6 +223,9 @@ func StdDumpTable(ctx context.Context, db *sql.DB, table Table) (string, error) b.WriteString(val.String()) } } + if err := rows.Err(); err != nil { + return "", err + } return b.String(), nil } @@ -439,6 +442,9 @@ func StdListSchemas(ctx context.Context, db *sql.DB) ([]string, error) { } out = append(out, schema) } + if err := rows.Err(); err != nil { + return nil, fmt.Errorf("iterating rows: %w", err) + } return out, nil } diff --git a/materialize-sql/test_support.go b/materialize-sql/test_support.go index 4f329abd87..8f40f3ce3b 100644 --- a/materialize-sql/test_support.go +++ b/materialize-sql/test_support.go @@ -429,5 +429,8 @@ func DumpTestTable(t *testing.T, db *stdsql.DB, qualifiedTableName string) (stri b.WriteString(val.String()) } } + if err := rows.Err(); err != nil { + return "", err + } return b.String(), nil } diff --git a/materialize-sqlserver/collation.go b/materialize-sqlserver/collation.go index 6338d4520d..ea222c2f13 100644 --- a/materialize-sqlserver/collation.go +++ b/materialize-sqlserver/collation.go @@ -35,6 +35,7 @@ func getCollation(ctx context.Context, db *stdsql.DB) (string, error) { if err != nil { return "", fmt.Errorf("querying available collations: %w", err) } + defer rows.Close() var collations []string for rows.Next() { @@ -45,6 +46,9 @@ func getCollation(ctx context.Context, db *stdsql.DB) (string, error) { collations = append(collations, c) } + if err := rows.Err(); err != nil { + return "", fmt.Errorf("iterating collations: %w", err) + } sortCollations(collations) diff --git a/materialize-starburst/starburst.go b/materialize-starburst/starburst.go index cc3c80ad69..e230aa3145 100644 --- a/materialize-starburst/starburst.go +++ b/materialize-starburst/starburst.go @@ -329,6 +329,9 @@ func (t *transactor) Load(it *m.LoadIterator, loaded func(int, json.RawMessage) return err } } + if err := rows.Err(); err != nil { + return fmt.Errorf("iterating Load documents: %w", err) + } if err := rows.Close(); err != nil { return fmt.Errorf("closing rows: %w", err)