MCPcopy Index your code
hub / github.com/netdata/netdata / readRows

Function readRows

src/go/plugin/go.d/pkg/sqlquery/query.go:36–56  ·  view source on GitHub ↗

readRows scans all rows and invokes assign for every column value.

(rows *sql.Rows, assign AssignFunc)

Source from the content-addressed store, hash-verified

34
35// readRows scans all rows and invokes assign for every column value.
36func readRows(rows *sql.Rows, assign AssignFunc) error {
37 if assign == nil {
38 return nil
39 }
40
41 columns, err := rows.Columns()
42 if err != nil {
43 return err
44 }
45
46 values := makeValues(len(columns))
47 for rows.Next() {
48 if err := rows.Scan(values...); err != nil {
49 return err
50 }
51 for i := range values {
52 assign(columns[i], valueToString(values[i]), i == len(values)-1)
53 }
54 }
55 return rows.Err()
56}
57
58func valueToString(value any) string {
59 v, ok := value.(*sql.NullString)

Callers 1

QueryRowsFunction · 0.70

Calls 6

makeValuesFunction · 0.70
valueToStringFunction · 0.70
NextMethod · 0.65
ScanMethod · 0.65
ErrMethod · 0.65
ColumnsMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…