joao-r-reis commented on code in PR #1868:
URL: 
https://github.com/apache/cassandra-gocql-driver/pull/1868#discussion_r2035667504


##########
query_executor.go:
##########
@@ -201,16 +210,375 @@ func (q *queryExecutor) do(ctx context.Context, qry 
ExecutableQuery, hostIter Ne
        }
 
        if lastErr != nil {
-               return &Iter{err: lastErr}
+               return newErrIter(lastErr, qry.getQueryMetrics())
        }
 
-       return &Iter{err: ErrNoConnections}
+       return newErrIter(ErrNoConnections, qry.getQueryMetrics())
 }
 
-func (q *queryExecutor) run(ctx context.Context, qry ExecutableQuery, hostIter 
NextHost, results chan<- *Iter) {
+func (q *queryExecutor) run(ctx context.Context, qry internalRequest, hostIter 
NextHost, results chan<- *Iter) {
        select {
        case results <- q.do(ctx, qry, hostIter):
        case <-ctx.Done():
        }
-       qry.releaseAfterExecution()
+}
+
+type queryOptions struct {

Review Comment:
   Something like this:
   
   ```
   type queryOptions struct {
        stmt string
   
        // Paging
        pageSize         int
        initialPageState []byte
        disableAutoPage  bool
   
        // Monitoring
        trace    Tracer
        observer QueryObserver
   
        // Parameters
        values  []interface{}
        binding func(q *QueryInfo) ([]interface{}, error)
   
        // Timestamp
        defaultTimestamp      bool
        defaultTimestampValue int64
   
        // Consistency
        initialConsistency Consistency
        serialCons         SerialConsistency
   
        // Protocol flag
        disableSkipMetadata bool
   
        customPayload map[string][]byte
        prefetch      float64
        rt            RetryPolicy
        spec          SpeculativeExecutionPolicy
        context       context.Context
        idempotent    bool
        keyspace      string
        skipPrepare   bool
        routingKey    []byte
   
        // getKeyspace is field so that it can be overriden in tests
        getKeyspace func() string
   }
   ```



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: pr-unsubscr...@cassandra.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: pr-unsubscr...@cassandra.apache.org
For additional commands, e-mail: pr-h...@cassandra.apache.org

Reply via email to