github.com/ydb-platform/ydb-go-sdk/v3@v3.89.2/trace/driver.go (about)

     1  package trace
     2  
     3  // tool gtrace used from ./internal/cmd/gtrace
     4  
     5  //go:generate gtrace
     6  
     7  import (
     8  	"context"
     9  	"fmt"
    10  	"strings"
    11  	"time"
    12  )
    13  
    14  type (
    15  	// Driver specified trace of common driver activity.
    16  	// gtrace:gen
    17  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
    18  	Driver struct {
    19  		// Driver runtime events
    20  		// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
    21  		OnInit func(DriverInitStartInfo) func(DriverInitDoneInfo)
    22  		// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
    23  		OnWith func(DriverWithStartInfo) func(DriverWithDoneInfo)
    24  		// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
    25  		OnClose func(DriverCloseStartInfo) func(DriverCloseDoneInfo)
    26  
    27  		// Pool of connections
    28  		// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
    29  		OnPoolNew func(DriverConnPoolNewStartInfo) func(DriverConnPoolNewDoneInfo)
    30  		// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
    31  		OnPoolRelease func(DriverConnPoolReleaseStartInfo) func(DriverConnPoolReleaseDoneInfo)
    32  
    33  		// Resolver events
    34  		// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
    35  		OnResolve func(DriverResolveStartInfo) func(DriverResolveDoneInfo)
    36  
    37  		// Conn events
    38  		// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
    39  		OnConnStateChange func(DriverConnStateChangeStartInfo) func(DriverConnStateChangeDoneInfo)
    40  		// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
    41  		OnConnInvoke func(DriverConnInvokeStartInfo) func(DriverConnInvokeDoneInfo)
    42  		// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
    43  		OnConnNewStream func(DriverConnNewStreamStartInfo) func(DriverConnNewStreamDoneInfo)
    44  		// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
    45  		OnConnStreamRecvMsg func(DriverConnStreamRecvMsgStartInfo) func(DriverConnStreamRecvMsgDoneInfo)
    46  		// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
    47  		OnConnStreamSendMsg func(DriverConnStreamSendMsgStartInfo) func(DriverConnStreamSendMsgDoneInfo)
    48  		// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
    49  		OnConnStreamCloseSend func(DriverConnStreamCloseSendStartInfo) func(DriverConnStreamCloseSendDoneInfo)
    50  		// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
    51  		OnConnStreamFinish func(info DriverConnStreamFinishInfo)
    52  		// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
    53  		OnConnDial func(DriverConnDialStartInfo) func(DriverConnDialDoneInfo)
    54  		// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
    55  		OnConnBan func(DriverConnBanStartInfo) func(DriverConnBanDoneInfo)
    56  		// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
    57  		OnConnAllow func(DriverConnAllowStartInfo) func(DriverConnAllowDoneInfo)
    58  		// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
    59  		OnConnPark func(DriverConnParkStartInfo) func(DriverConnParkDoneInfo)
    60  		// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
    61  		OnConnClose func(DriverConnCloseStartInfo) func(DriverConnCloseDoneInfo)
    62  
    63  		// Repeater events
    64  		// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
    65  		OnRepeaterWakeUp func(DriverRepeaterWakeUpStartInfo) func(DriverRepeaterWakeUpDoneInfo)
    66  
    67  		// Balancer events
    68  		// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
    69  		OnBalancerInit func(DriverBalancerInitStartInfo) func(DriverBalancerInitDoneInfo)
    70  
    71  		// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
    72  		OnBalancerClose func(DriverBalancerCloseStartInfo) func(DriverBalancerCloseDoneInfo)
    73  		// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
    74  		OnBalancerChooseEndpoint func(
    75  			DriverBalancerChooseEndpointStartInfo,
    76  		) func(
    77  			DriverBalancerChooseEndpointDoneInfo,
    78  		)
    79  		// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
    80  		OnBalancerClusterDiscoveryAttempt func(
    81  			DriverBalancerClusterDiscoveryAttemptStartInfo,
    82  		) func(
    83  			DriverBalancerClusterDiscoveryAttemptDoneInfo,
    84  		)
    85  		// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
    86  		OnBalancerUpdate func(DriverBalancerUpdateStartInfo) func(DriverBalancerUpdateDoneInfo)
    87  
    88  		// Credentials events
    89  		OnGetCredentials func(DriverGetCredentialsStartInfo) func(DriverGetCredentialsDoneInfo)
    90  	}
    91  )
    92  
    93  // Method represents rpc method.
    94  // Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
    95  type Method string
    96  
    97  // Name returns the rpc method name.
    98  // Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
    99  func (m Method) Name() (s string) {
   100  	_, s = m.Split()
   101  
   102  	return
   103  }
   104  
   105  // Service returns the rpc service name.
   106  // Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   107  func (m Method) Service() (s string) {
   108  	s, _ = m.Split()
   109  
   110  	return
   111  }
   112  
   113  // Issue declare interface of operation error issues
   114  // Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   115  type Issue interface {
   116  	GetMessage() string
   117  	GetIssueCode() uint32
   118  	GetSeverity() uint32
   119  }
   120  
   121  // Split returns service name and method.
   122  // Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   123  func (m Method) Split() (service, method string) {
   124  	i := strings.LastIndex(string(m), "/")
   125  	if i == -1 {
   126  		return string(m), string(m)
   127  	}
   128  
   129  	return strings.TrimPrefix(string(m[:i]), "/"), string(m[i+1:])
   130  }
   131  
   132  // Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   133  type ConnState interface {
   134  	fmt.Stringer
   135  
   136  	IsValid() bool
   137  	Code() int
   138  }
   139  
   140  // Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   141  type EndpointInfo interface {
   142  	fmt.Stringer
   143  
   144  	NodeID() uint32
   145  	Address() string
   146  	Location() string
   147  	LoadFactor() float32
   148  	LastUpdated() time.Time
   149  
   150  	// Deprecated: LocalDC check "local" by compare endpoint location with discovery "selflocation" field.
   151  	// It work good only if connection url always point to local dc.
   152  	// Will be removed after Oct 2024.
   153  	// Read about versioning policy: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#deprecated
   154  	LocalDC() bool
   155  }
   156  
   157  type (
   158  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   159  	DriverConnStateChangeStartInfo struct {
   160  		// Context make available context in trace callback function.
   161  		// Pointer to context provide replacement of context in trace callback function.
   162  		// Warning: concurrent access to pointer on client side must be excluded.
   163  		// Safe replacement of context are provided only inside callback function
   164  		Context  *context.Context
   165  		Call     call
   166  		Endpoint EndpointInfo
   167  		State    ConnState
   168  	}
   169  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   170  	DriverConnStateChangeDoneInfo struct {
   171  		State ConnState
   172  	}
   173  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   174  	DriverResolveStartInfo struct {
   175  		Call     call
   176  		Target   string
   177  		Resolved []string
   178  	}
   179  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   180  	DriverResolveDoneInfo struct {
   181  		Error error
   182  	}
   183  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   184  	DriverBalancerUpdateStartInfo struct {
   185  		// Context make available context in trace callback function.
   186  		// Pointer to context provide replacement of context in trace callback function.
   187  		// Warning: concurrent access to pointer on client side must be excluded.
   188  		// Safe replacement of context are provided only inside callback function
   189  		Context     *context.Context
   190  		Call        call
   191  		NeedLocalDC bool
   192  		Database    string
   193  	}
   194  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   195  	DriverBalancerUpdateDoneInfo struct {
   196  		Endpoints []EndpointInfo
   197  		Added     []EndpointInfo
   198  		Dropped   []EndpointInfo
   199  		LocalDC   string
   200  	}
   201  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   202  	DriverBalancerClusterDiscoveryAttemptStartInfo struct {
   203  		// Context make available context in trace callback function.
   204  		// Pointer to context provide replacement of context in trace callback function.
   205  		// Warning: concurrent access to pointer on client side must be excluded.
   206  		// Safe replacement of context are provided only inside callback function
   207  		Context  *context.Context
   208  		Call     call
   209  		Address  string
   210  		Database string
   211  	}
   212  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   213  	DriverBalancerClusterDiscoveryAttemptDoneInfo struct {
   214  		Error error
   215  	}
   216  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   217  	DriverNetReadStartInfo struct {
   218  		Call    call
   219  		Address string
   220  		Buffer  int
   221  	}
   222  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   223  	DriverNetReadDoneInfo struct {
   224  		Received int
   225  		Error    error
   226  	}
   227  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   228  	DriverNetWriteStartInfo struct {
   229  		Call    call
   230  		Address string
   231  		Bytes   int
   232  	}
   233  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   234  	DriverNetWriteDoneInfo struct {
   235  		Sent  int
   236  		Error error
   237  	}
   238  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   239  	DriverNetDialStartInfo struct {
   240  		// Context make available context in trace callback function.
   241  		// Pointer to context provide replacement of context in trace callback function.
   242  		// Warning: concurrent access to pointer on client side must be excluded.
   243  		// Safe replacement of context are provided only inside callback function
   244  		Context *context.Context
   245  		Call    call
   246  		Address string
   247  	}
   248  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   249  	DriverNetDialDoneInfo struct {
   250  		Error error
   251  	}
   252  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   253  	DriverNetCloseStartInfo struct {
   254  		Call    call
   255  		Address string
   256  	}
   257  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   258  	DriverNetCloseDoneInfo struct {
   259  		Error error
   260  	}
   261  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   262  	DriverConnTakeStartInfo struct {
   263  		// Context make available context in trace callback function.
   264  		// Pointer to context provide replacement of context in trace callback function.
   265  		// Warning: concurrent access to pointer on client side must be excluded.
   266  		// Safe replacement of context are provided only inside callback function
   267  		Context  *context.Context
   268  		Call     call
   269  		Endpoint EndpointInfo
   270  	}
   271  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   272  	DriverConnTakeDoneInfo struct {
   273  		Error error
   274  	}
   275  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   276  	DriverConnDialStartInfo struct {
   277  		// Context make available context in trace callback function.
   278  		// Pointer to context provide replacement of context in trace callback function.
   279  		// Warning: concurrent access to pointer on client side must be excluded.
   280  		// Safe replacement of context are provided only inside callback function
   281  		Context  *context.Context
   282  		Call     call
   283  		Endpoint EndpointInfo
   284  	}
   285  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   286  	DriverConnDialDoneInfo struct {
   287  		Error error
   288  	}
   289  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   290  	DriverConnParkStartInfo struct {
   291  		// Context make available context in trace callback function.
   292  		// Pointer to context provide replacement of context in trace callback function.
   293  		// Warning: concurrent access to pointer on client side must be excluded.
   294  		// Safe replacement of context are provided only inside callback function
   295  		Context  *context.Context
   296  		Call     call
   297  		Endpoint EndpointInfo
   298  	}
   299  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   300  	DriverConnParkDoneInfo struct {
   301  		Error error
   302  	}
   303  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   304  	DriverConnCloseStartInfo struct {
   305  		// Context make available context in trace callback function.
   306  		// Pointer to context provide replacement of context in trace callback function.
   307  		// Warning: concurrent access to pointer on client side must be excluded.
   308  		// Safe replacement of context are provided only inside callback function
   309  		Context  *context.Context
   310  		Call     call
   311  		Endpoint EndpointInfo
   312  	}
   313  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   314  	DriverConnCloseDoneInfo struct {
   315  		Error error
   316  	}
   317  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   318  	DriverConnBanStartInfo struct {
   319  		// Context make available context in trace callback function.
   320  		// Pointer to context provide replacement of context in trace callback function.
   321  		// Warning: concurrent access to pointer on client side must be excluded.
   322  		// Safe replacement of context are provided only inside callback function
   323  		Context  *context.Context
   324  		Call     call
   325  		Endpoint EndpointInfo
   326  		State    ConnState
   327  		Cause    error
   328  	}
   329  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   330  	DriverConnBanDoneInfo struct {
   331  		State ConnState
   332  	}
   333  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   334  	DriverConnAllowStartInfo struct {
   335  		// Context make available context in trace callback function.
   336  		// Pointer to context provide replacement of context in trace callback function.
   337  		// Warning: concurrent access to pointer on client side must be excluded.
   338  		// Safe replacement of context are provided only inside callback function
   339  		Context  *context.Context
   340  		Call     call
   341  		Endpoint EndpointInfo
   342  		State    ConnState
   343  	}
   344  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   345  	DriverConnAllowDoneInfo struct {
   346  		State ConnState
   347  	}
   348  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   349  	DriverConnInvokeStartInfo struct {
   350  		// Context make available context in trace callback function.
   351  		// Pointer to context provide replacement of context in trace callback function.
   352  		// Warning: concurrent access to pointer on client side must be excluded.
   353  		// Safe replacement of context are provided only inside callback function
   354  		Context  *context.Context
   355  		Call     call
   356  		Endpoint EndpointInfo
   357  		Method   Method
   358  	}
   359  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   360  	DriverConnInvokeDoneInfo struct {
   361  		Error    error
   362  		Issues   []Issue
   363  		OpID     string
   364  		State    ConnState
   365  		Metadata map[string][]string
   366  	}
   367  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   368  	DriverConnNewStreamStartInfo struct {
   369  		// Context make available context in trace callback function.
   370  		// Pointer to context provide replacement of context in trace callback function.
   371  		// Warning: concurrent access to pointer on client side must be excluded.
   372  		// Safe replacement of context are provided only inside callback function
   373  		Context  *context.Context
   374  		Call     call
   375  		Endpoint EndpointInfo
   376  		Method   Method
   377  	}
   378  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   379  	DriverConnNewStreamDoneInfo struct {
   380  		Error error
   381  		State ConnState
   382  	}
   383  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   384  	DriverConnStreamRecvMsgStartInfo struct {
   385  		// Context make available context in trace callback function.
   386  		// Pointer to context provide replacement of context in trace callback function.
   387  		// Warning: concurrent access to pointer on client side must be excluded.
   388  		// Safe replacement of context are provided only inside callback function
   389  		Context *context.Context
   390  		Call    call
   391  	}
   392  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   393  	DriverConnStreamRecvMsgDoneInfo struct {
   394  		Error error
   395  	}
   396  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   397  	DriverConnStreamSendMsgStartInfo struct {
   398  		// Context make available context in trace callback function.
   399  		// Pointer to context provide replacement of context in trace callback function.
   400  		// Warning: concurrent access to pointer on client side must be excluded.
   401  		// Safe replacement of context are provided only inside callback function
   402  		Context *context.Context
   403  		Call    call
   404  	}
   405  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   406  	DriverConnStreamSendMsgDoneInfo struct {
   407  		Error error
   408  	}
   409  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   410  	DriverConnStreamCloseSendStartInfo struct {
   411  		// Context make available context in trace callback function.
   412  		// Pointer to context provide replacement of context in trace callback function.
   413  		// Warning: concurrent access to pointer on client side must be excluded.
   414  		// Safe replacement of context are provided only inside callback function
   415  		Context *context.Context
   416  		Call    call
   417  	}
   418  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   419  	DriverConnStreamCloseSendDoneInfo struct {
   420  		Error error
   421  	}
   422  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   423  	DriverConnStreamFinishInfo struct {
   424  		// Context make available context in trace callback function.
   425  		// Pointer to context provide replacement of context in trace callback function.
   426  		// Warning: concurrent access to pointer on client side must be excluded.
   427  		// Safe replacement of context are provided only inside callback function
   428  		Context context.Context //nolint:containedctx
   429  		Call    call
   430  		Error   error
   431  	}
   432  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   433  	DriverBalancerInitStartInfo struct {
   434  		// Context make available context in trace callback function.
   435  		// Pointer to context provide replacement of context in trace callback function.
   436  		// Warning: concurrent access to pointer on client side must be excluded.
   437  		// Safe replacement of context are provided only inside callback function
   438  		Context *context.Context
   439  		Call    call
   440  		Name    string
   441  	}
   442  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   443  	DriverBalancerInitDoneInfo struct {
   444  		Error error
   445  	}
   446  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   447  	DriverBalancerDialEntrypointStartInfo struct {
   448  		// Context make available context in trace callback function.
   449  		// Pointer to context provide replacement of context in trace callback function.
   450  		// Warning: concurrent access to pointer on client side must be excluded.
   451  		// Safe replacement of context are provided only inside callback function
   452  		Context *context.Context
   453  		Call    call
   454  		Address string
   455  	}
   456  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   457  	DriverBalancerDialEntrypointDoneInfo struct {
   458  		Error error
   459  	}
   460  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   461  	DriverBalancerCloseStartInfo struct {
   462  		// Context make available context in trace callback function.
   463  		// Pointer to context provide replacement of context in trace callback function.
   464  		// Warning: concurrent access to pointer on client side must be excluded.
   465  		// Safe replacement of context are provided only inside callback function
   466  		Context *context.Context
   467  		Call    call
   468  	}
   469  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   470  	DriverBalancerCloseDoneInfo struct {
   471  		Error error
   472  	}
   473  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   474  	DriverBalancerChooseEndpointStartInfo struct {
   475  		// Context make available context in trace callback function.
   476  		// Pointer to context provide replacement of context in trace callback function.
   477  		// Warning: concurrent access to pointer on client side must be excluded.
   478  		// Safe replacement of context are provided only inside callback function
   479  		Context *context.Context
   480  		Call    call
   481  	}
   482  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   483  	DriverBalancerChooseEndpointDoneInfo struct {
   484  		Endpoint EndpointInfo
   485  		Error    error
   486  	}
   487  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   488  	DriverRepeaterWakeUpStartInfo struct {
   489  		// Context make available context in trace callback function.
   490  		// Pointer to context provide replacement of context in trace callback function.
   491  		// Warning: concurrent access to pointer on client side must be excluded.
   492  		// Safe replacement of context are provided only inside callback function
   493  		Context *context.Context
   494  		Call    call
   495  		Name    string
   496  		Event   string
   497  	}
   498  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   499  	DriverRepeaterWakeUpDoneInfo struct {
   500  		Error error
   501  	}
   502  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   503  	DriverGetCredentialsStartInfo struct {
   504  		// Context make available context in trace callback function.
   505  		// Pointer to context provide replacement of context in trace callback function.
   506  		// Warning: concurrent access to pointer on client side must be excluded.
   507  		// Safe replacement of context are provided only inside callback function
   508  		Context *context.Context
   509  		Call    call
   510  	}
   511  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   512  	DriverGetCredentialsDoneInfo struct {
   513  		Token string
   514  		Error error
   515  	}
   516  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   517  	DriverInitStartInfo struct {
   518  		// Context make available context in trace callback function.
   519  		// Pointer to context provide replacement of context in trace callback function.
   520  		// Warning: concurrent access to pointer on client side must be excluded.
   521  		// Safe replacement of context are provided only inside callback function
   522  		Context  *context.Context
   523  		Call     call
   524  		Endpoint string
   525  		Database string
   526  		Secure   bool
   527  	}
   528  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   529  	DriverInitDoneInfo struct {
   530  		Error error
   531  	}
   532  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   533  	DriverWithStartInfo struct {
   534  		// Context make available context in trace callback function.
   535  		// Pointer to context provide replacement of context in trace callback function.
   536  		// Warning: concurrent access to pointer on client side must be excluded.
   537  		// Safe replacement of context are provided only inside callback function
   538  		Context  *context.Context
   539  		Call     call
   540  		Endpoint string
   541  		Database string
   542  		Secure   bool
   543  	}
   544  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   545  	DriverWithDoneInfo struct {
   546  		Error error
   547  	}
   548  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   549  	DriverConnPoolNewStartInfo struct {
   550  		// Context make available context in trace callback function.
   551  		// Pointer to context provide replacement of context in trace callback function.
   552  		// Warning: concurrent access to pointer on client side must be excluded.
   553  		// Safe replacement of context are provided only inside callback function
   554  		Context *context.Context
   555  		Call    call
   556  	}
   557  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   558  	DriverConnPoolNewDoneInfo struct{}
   559  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   560  	DriverConnPoolReleaseStartInfo struct {
   561  		// Context make available context in trace callback function.
   562  		// Pointer to context provide replacement of context in trace callback function.
   563  		// Warning: concurrent access to pointer on client side must be excluded.
   564  		// Safe replacement of context are provided only inside callback function
   565  		Context *context.Context
   566  		Call    call
   567  	}
   568  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   569  	DriverConnPoolReleaseDoneInfo struct {
   570  		Error error
   571  	}
   572  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   573  	DriverCloseStartInfo struct {
   574  		// Context make available context in trace callback function.
   575  		// Pointer to context provide replacement of context in trace callback function.
   576  		// Warning: concurrent access to pointer on client side must be excluded.
   577  		// Safe replacement of context are provided only inside callback function
   578  		Context *context.Context
   579  		Call    call
   580  	}
   581  	// Internals: https://github.com/ydb-platform/ydb-go-sdk/blob/master/VERSIONING.md#internals
   582  	DriverCloseDoneInfo struct {
   583  		Error error
   584  	}
   585  )