@@ -78,27 +78,17 @@ if err != nil {
7878err := db.Query ().Do ( // Do retry operation on errors with best effort
7979 ctx, // context manage exiting from Do
8080 func (ctx context .Context , s query .Session ) (err error ) { // retry operation
81- _ , res , err := s.Execute (ctx, ` SELECT 42 as id, "myStr" as myStr;` ))
81+ streamResult , err := s.Query (ctx, ` SELECT 42 as id, "myStr" as myStr;` ))
8282 if err != nil {
8383 return err // for auto-retry with driver
8484 }
85- defer func () { _ = res.Close (ctx) }() // cleanup resources
86- for { // iterate over result sets
87- rs , err := res.NextResultSet (ctx)
85+ defer func () { _ = streamResult.Close (ctx) }() // cleanup resources
86+ for s , err := range streamResult.ResultSets (ctx) {
8887 if err != nil {
89- if errors.Is (err, io.EOF ) {
90- break
91- }
92-
9388 return err
9489 }
95- for { // iterate over rows
96- row , err := rs.NextRow (ctx)
90+ for row , err := range rs.Rows (ctx) {
9791 if err != nil {
98- if errors.Is (err, io.EOF ) {
99- break
100- }
101-
10292 return err
10393 }
10494 type myStruct struct {
@@ -112,7 +102,7 @@ err := db.Query().Do( // Do retry operation on errors with best effort
112102 }
113103 }
114104
115- return res. Err () // return finally result error for auto-retry with driver
105+ return nil
116106 },
117107 query.WithIdempotent (),
118108)
0 commit comments