@@ -227,7 +227,8 @@ func (c *Client) Do(ctx context.Context, op query.Operation, opts ...options.DoO
227227 defer cancel ()
228228
229229 var (
230- onDone = trace .QueryOnDo (c .config .Trace (), & ctx ,
230+ settings = options .ParseDoOpts (c .config .Trace (), opts ... )
231+ onDone = trace .QueryOnDo (settings .Trace (), & ctx ,
231232 stack .FunctionID ("github.com/ydb-platform/ydb-go-sdk/v3/internal/query.(*Client).Do" ),
232233 )
233234 attempts = 0
@@ -238,8 +239,6 @@ func (c *Client) Do(ctx context.Context, op query.Operation, opts ...options.DoO
238239
239240 err := do (ctx , c .pool ,
240241 func (ctx context.Context , s * Session ) error {
241- attempts ++
242-
243242 return op (ctx , s )
244243 },
245244 append ([]retry.Option {
@@ -250,7 +249,7 @@ func (c *Client) Do(ctx context.Context, op query.Operation, opts ...options.DoO
250249 }
251250 },
252251 }),
253- }, options . ParseDoOpts ( c . config . Trace (), opts ... ) .RetryOpts ()... )... ,
252+ }, settings .RetryOpts ()... )... ,
254253 )
255254
256255 return err
@@ -481,23 +480,18 @@ func (c *Client) DoTx(ctx context.Context, op query.TxOperation, opts ...options
481480 defer cancel ()
482481
483482 var (
484- onDone = trace .QueryOnDoTx (c .config .Trace (), & ctx ,
483+ settings = options .ParseDoTxOpts (c .config .Trace (), opts ... )
484+ onDone = trace .QueryOnDoTx (settings .Trace (), & ctx ,
485485 stack .FunctionID ("github.com/ydb-platform/ydb-go-sdk/v3/internal/query.(*Client).DoTx" ),
486486 )
487- doTxOpts = options .ParseDoTxOpts (opts ... )
488487 attempts = 0
489488 )
490489 defer func () {
491490 onDone (attempts , finalErr )
492491 }()
493492
494- err := doTx (ctx , c .pool ,
495- func (ctx context.Context , tx query.TxActor ) error {
496- attempts ++
497-
498- return op (ctx , tx )
499- },
500- doTxOpts .TxSettings (),
493+ err := doTx (ctx , c .pool , op ,
494+ settings .TxSettings (),
501495 append (
502496 []retry.Option {
503497 retry .WithTrace (& trace.Retry {
@@ -508,7 +502,7 @@ func (c *Client) DoTx(ctx context.Context, op query.TxOperation, opts ...options
508502 },
509503 }),
510504 },
511- doTxOpts .RetryOpts ()... ,
505+ settings .RetryOpts ()... ,
512506 )... ,
513507 )
514508 if err != nil {
0 commit comments