github.com/cockroachdb/cockroach@v20.2.0-alpha.1+incompatible/pkg/roachpb/batch_generated.go (about) 1 // Code generated by gen_batch.go; DO NOT EDIT. 2 // GENERATED FILE DO NOT EDIT 3 4 package roachpb 5 6 import ( 7 "fmt" 8 "strconv" 9 "strings" 10 ) 11 12 // GetInner returns the error contained in the union. 13 func (ru ErrorDetail) GetInner() error { 14 switch t := ru.GetValue().(type) { 15 case *ErrorDetail_NotLeaseHolder: 16 return t.NotLeaseHolder 17 case *ErrorDetail_RangeNotFound: 18 return t.RangeNotFound 19 case *ErrorDetail_RangeKeyMismatch: 20 return t.RangeKeyMismatch 21 case *ErrorDetail_ReadWithinUncertaintyInterval: 22 return t.ReadWithinUncertaintyInterval 23 case *ErrorDetail_TransactionAborted: 24 return t.TransactionAborted 25 case *ErrorDetail_TransactionPush: 26 return t.TransactionPush 27 case *ErrorDetail_TransactionRetry: 28 return t.TransactionRetry 29 case *ErrorDetail_TransactionStatus: 30 return t.TransactionStatus 31 case *ErrorDetail_WriteIntent: 32 return t.WriteIntent 33 case *ErrorDetail_WriteTooOld: 34 return t.WriteTooOld 35 case *ErrorDetail_OpRequiresTxn: 36 return t.OpRequiresTxn 37 case *ErrorDetail_ConditionFailed: 38 return t.ConditionFailed 39 case *ErrorDetail_LeaseRejected: 40 return t.LeaseRejected 41 case *ErrorDetail_NodeUnavailable: 42 return t.NodeUnavailable 43 case *ErrorDetail_Send: 44 return t.Send 45 case *ErrorDetail_RaftGroupDeleted: 46 return t.RaftGroupDeleted 47 case *ErrorDetail_ReplicaCorruption: 48 return t.ReplicaCorruption 49 case *ErrorDetail_ReplicaTooOld: 50 return t.ReplicaTooOld 51 case *ErrorDetail_AmbiguousResult: 52 return t.AmbiguousResult 53 case *ErrorDetail_StoreNotFound: 54 return t.StoreNotFound 55 case *ErrorDetail_TransactionRetryWithProtoRefresh: 56 return t.TransactionRetryWithProtoRefresh 57 case *ErrorDetail_IntegerOverflow: 58 return t.IntegerOverflow 59 case *ErrorDetail_UnsupportedRequest: 60 return t.UnsupportedRequest 61 case *ErrorDetail_TimestampBefore: 62 return t.TimestampBefore 63 case *ErrorDetail_TxnAlreadyEncounteredError: 64 return t.TxnAlreadyEncounteredError 65 case *ErrorDetail_IntentMissing: 66 return t.IntentMissing 67 case *ErrorDetail_MergeInProgress: 68 return t.MergeInProgress 69 case *ErrorDetail_RangefeedRetry: 70 return t.RangefeedRetry 71 case *ErrorDetail_IndeterminateCommit: 72 return t.IndeterminateCommit 73 default: 74 return nil 75 } 76 } 77 78 // GetInner returns the Request contained in the union. 79 func (ru RequestUnion) GetInner() Request { 80 switch t := ru.GetValue().(type) { 81 case *RequestUnion_Get: 82 return t.Get 83 case *RequestUnion_Put: 84 return t.Put 85 case *RequestUnion_ConditionalPut: 86 return t.ConditionalPut 87 case *RequestUnion_Increment: 88 return t.Increment 89 case *RequestUnion_Delete: 90 return t.Delete 91 case *RequestUnion_DeleteRange: 92 return t.DeleteRange 93 case *RequestUnion_ClearRange: 94 return t.ClearRange 95 case *RequestUnion_RevertRange: 96 return t.RevertRange 97 case *RequestUnion_Scan: 98 return t.Scan 99 case *RequestUnion_EndTxn: 100 return t.EndTxn 101 case *RequestUnion_AdminSplit: 102 return t.AdminSplit 103 case *RequestUnion_AdminUnsplit: 104 return t.AdminUnsplit 105 case *RequestUnion_AdminMerge: 106 return t.AdminMerge 107 case *RequestUnion_AdminTransferLease: 108 return t.AdminTransferLease 109 case *RequestUnion_AdminChangeReplicas: 110 return t.AdminChangeReplicas 111 case *RequestUnion_AdminRelocateRange: 112 return t.AdminRelocateRange 113 case *RequestUnion_HeartbeatTxn: 114 return t.HeartbeatTxn 115 case *RequestUnion_Gc: 116 return t.Gc 117 case *RequestUnion_PushTxn: 118 return t.PushTxn 119 case *RequestUnion_RecoverTxn: 120 return t.RecoverTxn 121 case *RequestUnion_ResolveIntent: 122 return t.ResolveIntent 123 case *RequestUnion_ResolveIntentRange: 124 return t.ResolveIntentRange 125 case *RequestUnion_Merge: 126 return t.Merge 127 case *RequestUnion_TruncateLog: 128 return t.TruncateLog 129 case *RequestUnion_RequestLease: 130 return t.RequestLease 131 case *RequestUnion_ReverseScan: 132 return t.ReverseScan 133 case *RequestUnion_ComputeChecksum: 134 return t.ComputeChecksum 135 case *RequestUnion_CheckConsistency: 136 return t.CheckConsistency 137 case *RequestUnion_InitPut: 138 return t.InitPut 139 case *RequestUnion_TransferLease: 140 return t.TransferLease 141 case *RequestUnion_LeaseInfo: 142 return t.LeaseInfo 143 case *RequestUnion_WriteBatch: 144 return t.WriteBatch 145 case *RequestUnion_Export: 146 return t.Export 147 case *RequestUnion_Import: 148 return t.Import 149 case *RequestUnion_QueryTxn: 150 return t.QueryTxn 151 case *RequestUnion_QueryIntent: 152 return t.QueryIntent 153 case *RequestUnion_AdminScatter: 154 return t.AdminScatter 155 case *RequestUnion_AddSstable: 156 return t.AddSstable 157 case *RequestUnion_RecomputeStats: 158 return t.RecomputeStats 159 case *RequestUnion_Refresh: 160 return t.Refresh 161 case *RequestUnion_RefreshRange: 162 return t.RefreshRange 163 case *RequestUnion_Subsume: 164 return t.Subsume 165 case *RequestUnion_RangeStats: 166 return t.RangeStats 167 case *RequestUnion_AdminVerifyProtectedTimestamp: 168 return t.AdminVerifyProtectedTimestamp 169 default: 170 return nil 171 } 172 } 173 174 // GetInner returns the Response contained in the union. 175 func (ru ResponseUnion) GetInner() Response { 176 switch t := ru.GetValue().(type) { 177 case *ResponseUnion_Get: 178 return t.Get 179 case *ResponseUnion_Put: 180 return t.Put 181 case *ResponseUnion_ConditionalPut: 182 return t.ConditionalPut 183 case *ResponseUnion_Increment: 184 return t.Increment 185 case *ResponseUnion_Delete: 186 return t.Delete 187 case *ResponseUnion_DeleteRange: 188 return t.DeleteRange 189 case *ResponseUnion_ClearRange: 190 return t.ClearRange 191 case *ResponseUnion_RevertRange: 192 return t.RevertRange 193 case *ResponseUnion_Scan: 194 return t.Scan 195 case *ResponseUnion_EndTxn: 196 return t.EndTxn 197 case *ResponseUnion_AdminSplit: 198 return t.AdminSplit 199 case *ResponseUnion_AdminUnsplit: 200 return t.AdminUnsplit 201 case *ResponseUnion_AdminMerge: 202 return t.AdminMerge 203 case *ResponseUnion_AdminTransferLease: 204 return t.AdminTransferLease 205 case *ResponseUnion_AdminChangeReplicas: 206 return t.AdminChangeReplicas 207 case *ResponseUnion_AdminRelocateRange: 208 return t.AdminRelocateRange 209 case *ResponseUnion_HeartbeatTxn: 210 return t.HeartbeatTxn 211 case *ResponseUnion_Gc: 212 return t.Gc 213 case *ResponseUnion_PushTxn: 214 return t.PushTxn 215 case *ResponseUnion_RecoverTxn: 216 return t.RecoverTxn 217 case *ResponseUnion_ResolveIntent: 218 return t.ResolveIntent 219 case *ResponseUnion_ResolveIntentRange: 220 return t.ResolveIntentRange 221 case *ResponseUnion_Merge: 222 return t.Merge 223 case *ResponseUnion_TruncateLog: 224 return t.TruncateLog 225 case *ResponseUnion_RequestLease: 226 return t.RequestLease 227 case *ResponseUnion_ReverseScan: 228 return t.ReverseScan 229 case *ResponseUnion_ComputeChecksum: 230 return t.ComputeChecksum 231 case *ResponseUnion_CheckConsistency: 232 return t.CheckConsistency 233 case *ResponseUnion_InitPut: 234 return t.InitPut 235 case *ResponseUnion_LeaseInfo: 236 return t.LeaseInfo 237 case *ResponseUnion_WriteBatch: 238 return t.WriteBatch 239 case *ResponseUnion_Export: 240 return t.Export 241 case *ResponseUnion_Import: 242 return t.Import 243 case *ResponseUnion_QueryTxn: 244 return t.QueryTxn 245 case *ResponseUnion_QueryIntent: 246 return t.QueryIntent 247 case *ResponseUnion_AdminScatter: 248 return t.AdminScatter 249 case *ResponseUnion_AddSstable: 250 return t.AddSstable 251 case *ResponseUnion_RecomputeStats: 252 return t.RecomputeStats 253 case *ResponseUnion_Refresh: 254 return t.Refresh 255 case *ResponseUnion_RefreshRange: 256 return t.RefreshRange 257 case *ResponseUnion_Subsume: 258 return t.Subsume 259 case *ResponseUnion_RangeStats: 260 return t.RangeStats 261 case *ResponseUnion_AdminVerifyProtectedTimestamp: 262 return t.AdminVerifyProtectedTimestamp 263 default: 264 return nil 265 } 266 } 267 268 // SetInner sets the error in the union. 269 func (ru *ErrorDetail) SetInner(r error) bool { 270 var union isErrorDetail_Value 271 switch t := r.(type) { 272 case *NotLeaseHolderError: 273 union = &ErrorDetail_NotLeaseHolder{t} 274 case *RangeNotFoundError: 275 union = &ErrorDetail_RangeNotFound{t} 276 case *RangeKeyMismatchError: 277 union = &ErrorDetail_RangeKeyMismatch{t} 278 case *ReadWithinUncertaintyIntervalError: 279 union = &ErrorDetail_ReadWithinUncertaintyInterval{t} 280 case *TransactionAbortedError: 281 union = &ErrorDetail_TransactionAborted{t} 282 case *TransactionPushError: 283 union = &ErrorDetail_TransactionPush{t} 284 case *TransactionRetryError: 285 union = &ErrorDetail_TransactionRetry{t} 286 case *TransactionStatusError: 287 union = &ErrorDetail_TransactionStatus{t} 288 case *WriteIntentError: 289 union = &ErrorDetail_WriteIntent{t} 290 case *WriteTooOldError: 291 union = &ErrorDetail_WriteTooOld{t} 292 case *OpRequiresTxnError: 293 union = &ErrorDetail_OpRequiresTxn{t} 294 case *ConditionFailedError: 295 union = &ErrorDetail_ConditionFailed{t} 296 case *LeaseRejectedError: 297 union = &ErrorDetail_LeaseRejected{t} 298 case *NodeUnavailableError: 299 union = &ErrorDetail_NodeUnavailable{t} 300 case *SendError: 301 union = &ErrorDetail_Send{t} 302 case *RaftGroupDeletedError: 303 union = &ErrorDetail_RaftGroupDeleted{t} 304 case *ReplicaCorruptionError: 305 union = &ErrorDetail_ReplicaCorruption{t} 306 case *ReplicaTooOldError: 307 union = &ErrorDetail_ReplicaTooOld{t} 308 case *AmbiguousResultError: 309 union = &ErrorDetail_AmbiguousResult{t} 310 case *StoreNotFoundError: 311 union = &ErrorDetail_StoreNotFound{t} 312 case *TransactionRetryWithProtoRefreshError: 313 union = &ErrorDetail_TransactionRetryWithProtoRefresh{t} 314 case *IntegerOverflowError: 315 union = &ErrorDetail_IntegerOverflow{t} 316 case *UnsupportedRequestError: 317 union = &ErrorDetail_UnsupportedRequest{t} 318 case *BatchTimestampBeforeGCError: 319 union = &ErrorDetail_TimestampBefore{t} 320 case *TxnAlreadyEncounteredErrorError: 321 union = &ErrorDetail_TxnAlreadyEncounteredError{t} 322 case *IntentMissingError: 323 union = &ErrorDetail_IntentMissing{t} 324 case *MergeInProgressError: 325 union = &ErrorDetail_MergeInProgress{t} 326 case *RangeFeedRetryError: 327 union = &ErrorDetail_RangefeedRetry{t} 328 case *IndeterminateCommitError: 329 union = &ErrorDetail_IndeterminateCommit{t} 330 default: 331 return false 332 } 333 ru.Value = union 334 return true 335 } 336 337 // SetInner sets the Request in the union. 338 func (ru *RequestUnion) SetInner(r Request) bool { 339 var union isRequestUnion_Value 340 switch t := r.(type) { 341 case *GetRequest: 342 union = &RequestUnion_Get{t} 343 case *PutRequest: 344 union = &RequestUnion_Put{t} 345 case *ConditionalPutRequest: 346 union = &RequestUnion_ConditionalPut{t} 347 case *IncrementRequest: 348 union = &RequestUnion_Increment{t} 349 case *DeleteRequest: 350 union = &RequestUnion_Delete{t} 351 case *DeleteRangeRequest: 352 union = &RequestUnion_DeleteRange{t} 353 case *ClearRangeRequest: 354 union = &RequestUnion_ClearRange{t} 355 case *RevertRangeRequest: 356 union = &RequestUnion_RevertRange{t} 357 case *ScanRequest: 358 union = &RequestUnion_Scan{t} 359 case *EndTxnRequest: 360 union = &RequestUnion_EndTxn{t} 361 case *AdminSplitRequest: 362 union = &RequestUnion_AdminSplit{t} 363 case *AdminUnsplitRequest: 364 union = &RequestUnion_AdminUnsplit{t} 365 case *AdminMergeRequest: 366 union = &RequestUnion_AdminMerge{t} 367 case *AdminTransferLeaseRequest: 368 union = &RequestUnion_AdminTransferLease{t} 369 case *AdminChangeReplicasRequest: 370 union = &RequestUnion_AdminChangeReplicas{t} 371 case *AdminRelocateRangeRequest: 372 union = &RequestUnion_AdminRelocateRange{t} 373 case *HeartbeatTxnRequest: 374 union = &RequestUnion_HeartbeatTxn{t} 375 case *GCRequest: 376 union = &RequestUnion_Gc{t} 377 case *PushTxnRequest: 378 union = &RequestUnion_PushTxn{t} 379 case *RecoverTxnRequest: 380 union = &RequestUnion_RecoverTxn{t} 381 case *ResolveIntentRequest: 382 union = &RequestUnion_ResolveIntent{t} 383 case *ResolveIntentRangeRequest: 384 union = &RequestUnion_ResolveIntentRange{t} 385 case *MergeRequest: 386 union = &RequestUnion_Merge{t} 387 case *TruncateLogRequest: 388 union = &RequestUnion_TruncateLog{t} 389 case *RequestLeaseRequest: 390 union = &RequestUnion_RequestLease{t} 391 case *ReverseScanRequest: 392 union = &RequestUnion_ReverseScan{t} 393 case *ComputeChecksumRequest: 394 union = &RequestUnion_ComputeChecksum{t} 395 case *CheckConsistencyRequest: 396 union = &RequestUnion_CheckConsistency{t} 397 case *InitPutRequest: 398 union = &RequestUnion_InitPut{t} 399 case *TransferLeaseRequest: 400 union = &RequestUnion_TransferLease{t} 401 case *LeaseInfoRequest: 402 union = &RequestUnion_LeaseInfo{t} 403 case *WriteBatchRequest: 404 union = &RequestUnion_WriteBatch{t} 405 case *ExportRequest: 406 union = &RequestUnion_Export{t} 407 case *ImportRequest: 408 union = &RequestUnion_Import{t} 409 case *QueryTxnRequest: 410 union = &RequestUnion_QueryTxn{t} 411 case *QueryIntentRequest: 412 union = &RequestUnion_QueryIntent{t} 413 case *AdminScatterRequest: 414 union = &RequestUnion_AdminScatter{t} 415 case *AddSSTableRequest: 416 union = &RequestUnion_AddSstable{t} 417 case *RecomputeStatsRequest: 418 union = &RequestUnion_RecomputeStats{t} 419 case *RefreshRequest: 420 union = &RequestUnion_Refresh{t} 421 case *RefreshRangeRequest: 422 union = &RequestUnion_RefreshRange{t} 423 case *SubsumeRequest: 424 union = &RequestUnion_Subsume{t} 425 case *RangeStatsRequest: 426 union = &RequestUnion_RangeStats{t} 427 case *AdminVerifyProtectedTimestampRequest: 428 union = &RequestUnion_AdminVerifyProtectedTimestamp{t} 429 default: 430 return false 431 } 432 ru.Value = union 433 return true 434 } 435 436 // SetInner sets the Response in the union. 437 func (ru *ResponseUnion) SetInner(r Response) bool { 438 var union isResponseUnion_Value 439 switch t := r.(type) { 440 case *GetResponse: 441 union = &ResponseUnion_Get{t} 442 case *PutResponse: 443 union = &ResponseUnion_Put{t} 444 case *ConditionalPutResponse: 445 union = &ResponseUnion_ConditionalPut{t} 446 case *IncrementResponse: 447 union = &ResponseUnion_Increment{t} 448 case *DeleteResponse: 449 union = &ResponseUnion_Delete{t} 450 case *DeleteRangeResponse: 451 union = &ResponseUnion_DeleteRange{t} 452 case *ClearRangeResponse: 453 union = &ResponseUnion_ClearRange{t} 454 case *RevertRangeResponse: 455 union = &ResponseUnion_RevertRange{t} 456 case *ScanResponse: 457 union = &ResponseUnion_Scan{t} 458 case *EndTxnResponse: 459 union = &ResponseUnion_EndTxn{t} 460 case *AdminSplitResponse: 461 union = &ResponseUnion_AdminSplit{t} 462 case *AdminUnsplitResponse: 463 union = &ResponseUnion_AdminUnsplit{t} 464 case *AdminMergeResponse: 465 union = &ResponseUnion_AdminMerge{t} 466 case *AdminTransferLeaseResponse: 467 union = &ResponseUnion_AdminTransferLease{t} 468 case *AdminChangeReplicasResponse: 469 union = &ResponseUnion_AdminChangeReplicas{t} 470 case *AdminRelocateRangeResponse: 471 union = &ResponseUnion_AdminRelocateRange{t} 472 case *HeartbeatTxnResponse: 473 union = &ResponseUnion_HeartbeatTxn{t} 474 case *GCResponse: 475 union = &ResponseUnion_Gc{t} 476 case *PushTxnResponse: 477 union = &ResponseUnion_PushTxn{t} 478 case *RecoverTxnResponse: 479 union = &ResponseUnion_RecoverTxn{t} 480 case *ResolveIntentResponse: 481 union = &ResponseUnion_ResolveIntent{t} 482 case *ResolveIntentRangeResponse: 483 union = &ResponseUnion_ResolveIntentRange{t} 484 case *MergeResponse: 485 union = &ResponseUnion_Merge{t} 486 case *TruncateLogResponse: 487 union = &ResponseUnion_TruncateLog{t} 488 case *RequestLeaseResponse: 489 union = &ResponseUnion_RequestLease{t} 490 case *ReverseScanResponse: 491 union = &ResponseUnion_ReverseScan{t} 492 case *ComputeChecksumResponse: 493 union = &ResponseUnion_ComputeChecksum{t} 494 case *CheckConsistencyResponse: 495 union = &ResponseUnion_CheckConsistency{t} 496 case *InitPutResponse: 497 union = &ResponseUnion_InitPut{t} 498 case *LeaseInfoResponse: 499 union = &ResponseUnion_LeaseInfo{t} 500 case *WriteBatchResponse: 501 union = &ResponseUnion_WriteBatch{t} 502 case *ExportResponse: 503 union = &ResponseUnion_Export{t} 504 case *ImportResponse: 505 union = &ResponseUnion_Import{t} 506 case *QueryTxnResponse: 507 union = &ResponseUnion_QueryTxn{t} 508 case *QueryIntentResponse: 509 union = &ResponseUnion_QueryIntent{t} 510 case *AdminScatterResponse: 511 union = &ResponseUnion_AdminScatter{t} 512 case *AddSSTableResponse: 513 union = &ResponseUnion_AddSstable{t} 514 case *RecomputeStatsResponse: 515 union = &ResponseUnion_RecomputeStats{t} 516 case *RefreshResponse: 517 union = &ResponseUnion_Refresh{t} 518 case *RefreshRangeResponse: 519 union = &ResponseUnion_RefreshRange{t} 520 case *SubsumeResponse: 521 union = &ResponseUnion_Subsume{t} 522 case *RangeStatsResponse: 523 union = &ResponseUnion_RangeStats{t} 524 case *AdminVerifyProtectedTimestampResponse: 525 union = &ResponseUnion_AdminVerifyProtectedTimestamp{t} 526 default: 527 return false 528 } 529 ru.Value = union 530 return true 531 } 532 533 type reqCounts [44]int32 534 535 // getReqCounts returns the number of times each 536 // request type appears in the batch. 537 func (ba *BatchRequest) getReqCounts() reqCounts { 538 var counts reqCounts 539 for _, ru := range ba.Requests { 540 switch ru.GetValue().(type) { 541 case *RequestUnion_Get: 542 counts[0]++ 543 case *RequestUnion_Put: 544 counts[1]++ 545 case *RequestUnion_ConditionalPut: 546 counts[2]++ 547 case *RequestUnion_Increment: 548 counts[3]++ 549 case *RequestUnion_Delete: 550 counts[4]++ 551 case *RequestUnion_DeleteRange: 552 counts[5]++ 553 case *RequestUnion_ClearRange: 554 counts[6]++ 555 case *RequestUnion_RevertRange: 556 counts[7]++ 557 case *RequestUnion_Scan: 558 counts[8]++ 559 case *RequestUnion_EndTxn: 560 counts[9]++ 561 case *RequestUnion_AdminSplit: 562 counts[10]++ 563 case *RequestUnion_AdminUnsplit: 564 counts[11]++ 565 case *RequestUnion_AdminMerge: 566 counts[12]++ 567 case *RequestUnion_AdminTransferLease: 568 counts[13]++ 569 case *RequestUnion_AdminChangeReplicas: 570 counts[14]++ 571 case *RequestUnion_AdminRelocateRange: 572 counts[15]++ 573 case *RequestUnion_HeartbeatTxn: 574 counts[16]++ 575 case *RequestUnion_Gc: 576 counts[17]++ 577 case *RequestUnion_PushTxn: 578 counts[18]++ 579 case *RequestUnion_RecoverTxn: 580 counts[19]++ 581 case *RequestUnion_ResolveIntent: 582 counts[20]++ 583 case *RequestUnion_ResolveIntentRange: 584 counts[21]++ 585 case *RequestUnion_Merge: 586 counts[22]++ 587 case *RequestUnion_TruncateLog: 588 counts[23]++ 589 case *RequestUnion_RequestLease: 590 counts[24]++ 591 case *RequestUnion_ReverseScan: 592 counts[25]++ 593 case *RequestUnion_ComputeChecksum: 594 counts[26]++ 595 case *RequestUnion_CheckConsistency: 596 counts[27]++ 597 case *RequestUnion_InitPut: 598 counts[28]++ 599 case *RequestUnion_TransferLease: 600 counts[29]++ 601 case *RequestUnion_LeaseInfo: 602 counts[30]++ 603 case *RequestUnion_WriteBatch: 604 counts[31]++ 605 case *RequestUnion_Export: 606 counts[32]++ 607 case *RequestUnion_Import: 608 counts[33]++ 609 case *RequestUnion_QueryTxn: 610 counts[34]++ 611 case *RequestUnion_QueryIntent: 612 counts[35]++ 613 case *RequestUnion_AdminScatter: 614 counts[36]++ 615 case *RequestUnion_AddSstable: 616 counts[37]++ 617 case *RequestUnion_RecomputeStats: 618 counts[38]++ 619 case *RequestUnion_Refresh: 620 counts[39]++ 621 case *RequestUnion_RefreshRange: 622 counts[40]++ 623 case *RequestUnion_Subsume: 624 counts[41]++ 625 case *RequestUnion_RangeStats: 626 counts[42]++ 627 case *RequestUnion_AdminVerifyProtectedTimestamp: 628 counts[43]++ 629 default: 630 panic(fmt.Sprintf("unsupported request: %+v", ru)) 631 } 632 } 633 return counts 634 } 635 636 var requestNames = []string{ 637 "Get", 638 "Put", 639 "CPut", 640 "Inc", 641 "Del", 642 "DelRng", 643 "ClearRng", 644 "RevertRng", 645 "Scan", 646 "EndTxn", 647 "AdmSplit", 648 "AdmUnsplit", 649 "AdmMerge", 650 "AdmTransferLease", 651 "AdmChangeReplicas", 652 "AdmRelocateRng", 653 "HeartbeatTxn", 654 "Gc", 655 "PushTxn", 656 "RecoverTxn", 657 "ResolveIntent", 658 "ResolveIntentRng", 659 "Merge", 660 "TruncLog", 661 "RequestLease", 662 "RevScan", 663 "ComputeChksum", 664 "ChkConsistency", 665 "InitPut", 666 "TransferLease", 667 "LeaseInfo", 668 "WriteBatch", 669 "Export", 670 "Import", 671 "QueryTxn", 672 "QueryIntent", 673 "AdmScatter", 674 "AddSstable", 675 "RecomputeStats", 676 "Refresh", 677 "RefreshRng", 678 "Subsume", 679 "RngStats", 680 "AdmVerifyProtectedTimestamp", 681 } 682 683 // Summary prints a short summary of the requests in a batch. 684 func (ba *BatchRequest) Summary() string { 685 var b strings.Builder 686 ba.WriteSummary(&b) 687 return b.String() 688 } 689 690 // WriteSummary writes a short summary of the requests in a batch 691 // to the provided builder. 692 func (ba *BatchRequest) WriteSummary(b *strings.Builder) { 693 if len(ba.Requests) == 0 { 694 b.WriteString("empty batch") 695 return 696 } 697 counts := ba.getReqCounts() 698 var tmp [10]byte 699 var comma bool 700 for i, v := range counts { 701 if v != 0 { 702 if comma { 703 b.WriteString(", ") 704 } 705 comma = true 706 707 b.Write(strconv.AppendInt(tmp[:0], int64(v), 10)) 708 b.WriteString(" ") 709 b.WriteString(requestNames[i]) 710 } 711 } 712 } 713 714 // The following types are used to group the allocations of Responses 715 // and their corresponding isResponseUnion_Value union wrappers together. 716 type getResponseAlloc struct { 717 union ResponseUnion_Get 718 resp GetResponse 719 } 720 type putResponseAlloc struct { 721 union ResponseUnion_Put 722 resp PutResponse 723 } 724 type conditionalPutResponseAlloc struct { 725 union ResponseUnion_ConditionalPut 726 resp ConditionalPutResponse 727 } 728 type incrementResponseAlloc struct { 729 union ResponseUnion_Increment 730 resp IncrementResponse 731 } 732 type deleteResponseAlloc struct { 733 union ResponseUnion_Delete 734 resp DeleteResponse 735 } 736 type deleteRangeResponseAlloc struct { 737 union ResponseUnion_DeleteRange 738 resp DeleteRangeResponse 739 } 740 type clearRangeResponseAlloc struct { 741 union ResponseUnion_ClearRange 742 resp ClearRangeResponse 743 } 744 type revertRangeResponseAlloc struct { 745 union ResponseUnion_RevertRange 746 resp RevertRangeResponse 747 } 748 type scanResponseAlloc struct { 749 union ResponseUnion_Scan 750 resp ScanResponse 751 } 752 type endTxnResponseAlloc struct { 753 union ResponseUnion_EndTxn 754 resp EndTxnResponse 755 } 756 type adminSplitResponseAlloc struct { 757 union ResponseUnion_AdminSplit 758 resp AdminSplitResponse 759 } 760 type adminUnsplitResponseAlloc struct { 761 union ResponseUnion_AdminUnsplit 762 resp AdminUnsplitResponse 763 } 764 type adminMergeResponseAlloc struct { 765 union ResponseUnion_AdminMerge 766 resp AdminMergeResponse 767 } 768 type adminTransferLeaseResponseAlloc struct { 769 union ResponseUnion_AdminTransferLease 770 resp AdminTransferLeaseResponse 771 } 772 type adminChangeReplicasResponseAlloc struct { 773 union ResponseUnion_AdminChangeReplicas 774 resp AdminChangeReplicasResponse 775 } 776 type adminRelocateRangeResponseAlloc struct { 777 union ResponseUnion_AdminRelocateRange 778 resp AdminRelocateRangeResponse 779 } 780 type heartbeatTxnResponseAlloc struct { 781 union ResponseUnion_HeartbeatTxn 782 resp HeartbeatTxnResponse 783 } 784 type gCResponseAlloc struct { 785 union ResponseUnion_Gc 786 resp GCResponse 787 } 788 type pushTxnResponseAlloc struct { 789 union ResponseUnion_PushTxn 790 resp PushTxnResponse 791 } 792 type recoverTxnResponseAlloc struct { 793 union ResponseUnion_RecoverTxn 794 resp RecoverTxnResponse 795 } 796 type resolveIntentResponseAlloc struct { 797 union ResponseUnion_ResolveIntent 798 resp ResolveIntentResponse 799 } 800 type resolveIntentRangeResponseAlloc struct { 801 union ResponseUnion_ResolveIntentRange 802 resp ResolveIntentRangeResponse 803 } 804 type mergeResponseAlloc struct { 805 union ResponseUnion_Merge 806 resp MergeResponse 807 } 808 type truncateLogResponseAlloc struct { 809 union ResponseUnion_TruncateLog 810 resp TruncateLogResponse 811 } 812 type requestLeaseResponseAlloc struct { 813 union ResponseUnion_RequestLease 814 resp RequestLeaseResponse 815 } 816 type reverseScanResponseAlloc struct { 817 union ResponseUnion_ReverseScan 818 resp ReverseScanResponse 819 } 820 type computeChecksumResponseAlloc struct { 821 union ResponseUnion_ComputeChecksum 822 resp ComputeChecksumResponse 823 } 824 type checkConsistencyResponseAlloc struct { 825 union ResponseUnion_CheckConsistency 826 resp CheckConsistencyResponse 827 } 828 type initPutResponseAlloc struct { 829 union ResponseUnion_InitPut 830 resp InitPutResponse 831 } 832 type leaseInfoResponseAlloc struct { 833 union ResponseUnion_LeaseInfo 834 resp LeaseInfoResponse 835 } 836 type writeBatchResponseAlloc struct { 837 union ResponseUnion_WriteBatch 838 resp WriteBatchResponse 839 } 840 type exportResponseAlloc struct { 841 union ResponseUnion_Export 842 resp ExportResponse 843 } 844 type importResponseAlloc struct { 845 union ResponseUnion_Import 846 resp ImportResponse 847 } 848 type queryTxnResponseAlloc struct { 849 union ResponseUnion_QueryTxn 850 resp QueryTxnResponse 851 } 852 type queryIntentResponseAlloc struct { 853 union ResponseUnion_QueryIntent 854 resp QueryIntentResponse 855 } 856 type adminScatterResponseAlloc struct { 857 union ResponseUnion_AdminScatter 858 resp AdminScatterResponse 859 } 860 type addSSTableResponseAlloc struct { 861 union ResponseUnion_AddSstable 862 resp AddSSTableResponse 863 } 864 type recomputeStatsResponseAlloc struct { 865 union ResponseUnion_RecomputeStats 866 resp RecomputeStatsResponse 867 } 868 type refreshResponseAlloc struct { 869 union ResponseUnion_Refresh 870 resp RefreshResponse 871 } 872 type refreshRangeResponseAlloc struct { 873 union ResponseUnion_RefreshRange 874 resp RefreshRangeResponse 875 } 876 type subsumeResponseAlloc struct { 877 union ResponseUnion_Subsume 878 resp SubsumeResponse 879 } 880 type rangeStatsResponseAlloc struct { 881 union ResponseUnion_RangeStats 882 resp RangeStatsResponse 883 } 884 type adminVerifyProtectedTimestampResponseAlloc struct { 885 union ResponseUnion_AdminVerifyProtectedTimestamp 886 resp AdminVerifyProtectedTimestampResponse 887 } 888 889 // CreateReply creates replies for each of the contained requests, wrapped in a 890 // BatchResponse. The response objects are batch allocated to minimize 891 // allocation overhead. 892 func (ba *BatchRequest) CreateReply() *BatchResponse { 893 br := &BatchResponse{} 894 br.Responses = make([]ResponseUnion, len(ba.Requests)) 895 896 counts := ba.getReqCounts() 897 898 var buf0 []getResponseAlloc 899 var buf1 []putResponseAlloc 900 var buf2 []conditionalPutResponseAlloc 901 var buf3 []incrementResponseAlloc 902 var buf4 []deleteResponseAlloc 903 var buf5 []deleteRangeResponseAlloc 904 var buf6 []clearRangeResponseAlloc 905 var buf7 []revertRangeResponseAlloc 906 var buf8 []scanResponseAlloc 907 var buf9 []endTxnResponseAlloc 908 var buf10 []adminSplitResponseAlloc 909 var buf11 []adminUnsplitResponseAlloc 910 var buf12 []adminMergeResponseAlloc 911 var buf13 []adminTransferLeaseResponseAlloc 912 var buf14 []adminChangeReplicasResponseAlloc 913 var buf15 []adminRelocateRangeResponseAlloc 914 var buf16 []heartbeatTxnResponseAlloc 915 var buf17 []gCResponseAlloc 916 var buf18 []pushTxnResponseAlloc 917 var buf19 []recoverTxnResponseAlloc 918 var buf20 []resolveIntentResponseAlloc 919 var buf21 []resolveIntentRangeResponseAlloc 920 var buf22 []mergeResponseAlloc 921 var buf23 []truncateLogResponseAlloc 922 var buf24 []requestLeaseResponseAlloc 923 var buf25 []reverseScanResponseAlloc 924 var buf26 []computeChecksumResponseAlloc 925 var buf27 []checkConsistencyResponseAlloc 926 var buf28 []initPutResponseAlloc 927 var buf29 []requestLeaseResponseAlloc 928 var buf30 []leaseInfoResponseAlloc 929 var buf31 []writeBatchResponseAlloc 930 var buf32 []exportResponseAlloc 931 var buf33 []importResponseAlloc 932 var buf34 []queryTxnResponseAlloc 933 var buf35 []queryIntentResponseAlloc 934 var buf36 []adminScatterResponseAlloc 935 var buf37 []addSSTableResponseAlloc 936 var buf38 []recomputeStatsResponseAlloc 937 var buf39 []refreshResponseAlloc 938 var buf40 []refreshRangeResponseAlloc 939 var buf41 []subsumeResponseAlloc 940 var buf42 []rangeStatsResponseAlloc 941 var buf43 []adminVerifyProtectedTimestampResponseAlloc 942 943 for i, r := range ba.Requests { 944 switch r.GetValue().(type) { 945 case *RequestUnion_Get: 946 if buf0 == nil { 947 buf0 = make([]getResponseAlloc, counts[0]) 948 } 949 buf0[0].union.Get = &buf0[0].resp 950 br.Responses[i].Value = &buf0[0].union 951 buf0 = buf0[1:] 952 case *RequestUnion_Put: 953 if buf1 == nil { 954 buf1 = make([]putResponseAlloc, counts[1]) 955 } 956 buf1[0].union.Put = &buf1[0].resp 957 br.Responses[i].Value = &buf1[0].union 958 buf1 = buf1[1:] 959 case *RequestUnion_ConditionalPut: 960 if buf2 == nil { 961 buf2 = make([]conditionalPutResponseAlloc, counts[2]) 962 } 963 buf2[0].union.ConditionalPut = &buf2[0].resp 964 br.Responses[i].Value = &buf2[0].union 965 buf2 = buf2[1:] 966 case *RequestUnion_Increment: 967 if buf3 == nil { 968 buf3 = make([]incrementResponseAlloc, counts[3]) 969 } 970 buf3[0].union.Increment = &buf3[0].resp 971 br.Responses[i].Value = &buf3[0].union 972 buf3 = buf3[1:] 973 case *RequestUnion_Delete: 974 if buf4 == nil { 975 buf4 = make([]deleteResponseAlloc, counts[4]) 976 } 977 buf4[0].union.Delete = &buf4[0].resp 978 br.Responses[i].Value = &buf4[0].union 979 buf4 = buf4[1:] 980 case *RequestUnion_DeleteRange: 981 if buf5 == nil { 982 buf5 = make([]deleteRangeResponseAlloc, counts[5]) 983 } 984 buf5[0].union.DeleteRange = &buf5[0].resp 985 br.Responses[i].Value = &buf5[0].union 986 buf5 = buf5[1:] 987 case *RequestUnion_ClearRange: 988 if buf6 == nil { 989 buf6 = make([]clearRangeResponseAlloc, counts[6]) 990 } 991 buf6[0].union.ClearRange = &buf6[0].resp 992 br.Responses[i].Value = &buf6[0].union 993 buf6 = buf6[1:] 994 case *RequestUnion_RevertRange: 995 if buf7 == nil { 996 buf7 = make([]revertRangeResponseAlloc, counts[7]) 997 } 998 buf7[0].union.RevertRange = &buf7[0].resp 999 br.Responses[i].Value = &buf7[0].union 1000 buf7 = buf7[1:] 1001 case *RequestUnion_Scan: 1002 if buf8 == nil { 1003 buf8 = make([]scanResponseAlloc, counts[8]) 1004 } 1005 buf8[0].union.Scan = &buf8[0].resp 1006 br.Responses[i].Value = &buf8[0].union 1007 buf8 = buf8[1:] 1008 case *RequestUnion_EndTxn: 1009 if buf9 == nil { 1010 buf9 = make([]endTxnResponseAlloc, counts[9]) 1011 } 1012 buf9[0].union.EndTxn = &buf9[0].resp 1013 br.Responses[i].Value = &buf9[0].union 1014 buf9 = buf9[1:] 1015 case *RequestUnion_AdminSplit: 1016 if buf10 == nil { 1017 buf10 = make([]adminSplitResponseAlloc, counts[10]) 1018 } 1019 buf10[0].union.AdminSplit = &buf10[0].resp 1020 br.Responses[i].Value = &buf10[0].union 1021 buf10 = buf10[1:] 1022 case *RequestUnion_AdminUnsplit: 1023 if buf11 == nil { 1024 buf11 = make([]adminUnsplitResponseAlloc, counts[11]) 1025 } 1026 buf11[0].union.AdminUnsplit = &buf11[0].resp 1027 br.Responses[i].Value = &buf11[0].union 1028 buf11 = buf11[1:] 1029 case *RequestUnion_AdminMerge: 1030 if buf12 == nil { 1031 buf12 = make([]adminMergeResponseAlloc, counts[12]) 1032 } 1033 buf12[0].union.AdminMerge = &buf12[0].resp 1034 br.Responses[i].Value = &buf12[0].union 1035 buf12 = buf12[1:] 1036 case *RequestUnion_AdminTransferLease: 1037 if buf13 == nil { 1038 buf13 = make([]adminTransferLeaseResponseAlloc, counts[13]) 1039 } 1040 buf13[0].union.AdminTransferLease = &buf13[0].resp 1041 br.Responses[i].Value = &buf13[0].union 1042 buf13 = buf13[1:] 1043 case *RequestUnion_AdminChangeReplicas: 1044 if buf14 == nil { 1045 buf14 = make([]adminChangeReplicasResponseAlloc, counts[14]) 1046 } 1047 buf14[0].union.AdminChangeReplicas = &buf14[0].resp 1048 br.Responses[i].Value = &buf14[0].union 1049 buf14 = buf14[1:] 1050 case *RequestUnion_AdminRelocateRange: 1051 if buf15 == nil { 1052 buf15 = make([]adminRelocateRangeResponseAlloc, counts[15]) 1053 } 1054 buf15[0].union.AdminRelocateRange = &buf15[0].resp 1055 br.Responses[i].Value = &buf15[0].union 1056 buf15 = buf15[1:] 1057 case *RequestUnion_HeartbeatTxn: 1058 if buf16 == nil { 1059 buf16 = make([]heartbeatTxnResponseAlloc, counts[16]) 1060 } 1061 buf16[0].union.HeartbeatTxn = &buf16[0].resp 1062 br.Responses[i].Value = &buf16[0].union 1063 buf16 = buf16[1:] 1064 case *RequestUnion_Gc: 1065 if buf17 == nil { 1066 buf17 = make([]gCResponseAlloc, counts[17]) 1067 } 1068 buf17[0].union.Gc = &buf17[0].resp 1069 br.Responses[i].Value = &buf17[0].union 1070 buf17 = buf17[1:] 1071 case *RequestUnion_PushTxn: 1072 if buf18 == nil { 1073 buf18 = make([]pushTxnResponseAlloc, counts[18]) 1074 } 1075 buf18[0].union.PushTxn = &buf18[0].resp 1076 br.Responses[i].Value = &buf18[0].union 1077 buf18 = buf18[1:] 1078 case *RequestUnion_RecoverTxn: 1079 if buf19 == nil { 1080 buf19 = make([]recoverTxnResponseAlloc, counts[19]) 1081 } 1082 buf19[0].union.RecoverTxn = &buf19[0].resp 1083 br.Responses[i].Value = &buf19[0].union 1084 buf19 = buf19[1:] 1085 case *RequestUnion_ResolveIntent: 1086 if buf20 == nil { 1087 buf20 = make([]resolveIntentResponseAlloc, counts[20]) 1088 } 1089 buf20[0].union.ResolveIntent = &buf20[0].resp 1090 br.Responses[i].Value = &buf20[0].union 1091 buf20 = buf20[1:] 1092 case *RequestUnion_ResolveIntentRange: 1093 if buf21 == nil { 1094 buf21 = make([]resolveIntentRangeResponseAlloc, counts[21]) 1095 } 1096 buf21[0].union.ResolveIntentRange = &buf21[0].resp 1097 br.Responses[i].Value = &buf21[0].union 1098 buf21 = buf21[1:] 1099 case *RequestUnion_Merge: 1100 if buf22 == nil { 1101 buf22 = make([]mergeResponseAlloc, counts[22]) 1102 } 1103 buf22[0].union.Merge = &buf22[0].resp 1104 br.Responses[i].Value = &buf22[0].union 1105 buf22 = buf22[1:] 1106 case *RequestUnion_TruncateLog: 1107 if buf23 == nil { 1108 buf23 = make([]truncateLogResponseAlloc, counts[23]) 1109 } 1110 buf23[0].union.TruncateLog = &buf23[0].resp 1111 br.Responses[i].Value = &buf23[0].union 1112 buf23 = buf23[1:] 1113 case *RequestUnion_RequestLease: 1114 if buf24 == nil { 1115 buf24 = make([]requestLeaseResponseAlloc, counts[24]) 1116 } 1117 buf24[0].union.RequestLease = &buf24[0].resp 1118 br.Responses[i].Value = &buf24[0].union 1119 buf24 = buf24[1:] 1120 case *RequestUnion_ReverseScan: 1121 if buf25 == nil { 1122 buf25 = make([]reverseScanResponseAlloc, counts[25]) 1123 } 1124 buf25[0].union.ReverseScan = &buf25[0].resp 1125 br.Responses[i].Value = &buf25[0].union 1126 buf25 = buf25[1:] 1127 case *RequestUnion_ComputeChecksum: 1128 if buf26 == nil { 1129 buf26 = make([]computeChecksumResponseAlloc, counts[26]) 1130 } 1131 buf26[0].union.ComputeChecksum = &buf26[0].resp 1132 br.Responses[i].Value = &buf26[0].union 1133 buf26 = buf26[1:] 1134 case *RequestUnion_CheckConsistency: 1135 if buf27 == nil { 1136 buf27 = make([]checkConsistencyResponseAlloc, counts[27]) 1137 } 1138 buf27[0].union.CheckConsistency = &buf27[0].resp 1139 br.Responses[i].Value = &buf27[0].union 1140 buf27 = buf27[1:] 1141 case *RequestUnion_InitPut: 1142 if buf28 == nil { 1143 buf28 = make([]initPutResponseAlloc, counts[28]) 1144 } 1145 buf28[0].union.InitPut = &buf28[0].resp 1146 br.Responses[i].Value = &buf28[0].union 1147 buf28 = buf28[1:] 1148 case *RequestUnion_TransferLease: 1149 if buf29 == nil { 1150 buf29 = make([]requestLeaseResponseAlloc, counts[29]) 1151 } 1152 buf29[0].union.RequestLease = &buf29[0].resp 1153 br.Responses[i].Value = &buf29[0].union 1154 buf29 = buf29[1:] 1155 case *RequestUnion_LeaseInfo: 1156 if buf30 == nil { 1157 buf30 = make([]leaseInfoResponseAlloc, counts[30]) 1158 } 1159 buf30[0].union.LeaseInfo = &buf30[0].resp 1160 br.Responses[i].Value = &buf30[0].union 1161 buf30 = buf30[1:] 1162 case *RequestUnion_WriteBatch: 1163 if buf31 == nil { 1164 buf31 = make([]writeBatchResponseAlloc, counts[31]) 1165 } 1166 buf31[0].union.WriteBatch = &buf31[0].resp 1167 br.Responses[i].Value = &buf31[0].union 1168 buf31 = buf31[1:] 1169 case *RequestUnion_Export: 1170 if buf32 == nil { 1171 buf32 = make([]exportResponseAlloc, counts[32]) 1172 } 1173 buf32[0].union.Export = &buf32[0].resp 1174 br.Responses[i].Value = &buf32[0].union 1175 buf32 = buf32[1:] 1176 case *RequestUnion_Import: 1177 if buf33 == nil { 1178 buf33 = make([]importResponseAlloc, counts[33]) 1179 } 1180 buf33[0].union.Import = &buf33[0].resp 1181 br.Responses[i].Value = &buf33[0].union 1182 buf33 = buf33[1:] 1183 case *RequestUnion_QueryTxn: 1184 if buf34 == nil { 1185 buf34 = make([]queryTxnResponseAlloc, counts[34]) 1186 } 1187 buf34[0].union.QueryTxn = &buf34[0].resp 1188 br.Responses[i].Value = &buf34[0].union 1189 buf34 = buf34[1:] 1190 case *RequestUnion_QueryIntent: 1191 if buf35 == nil { 1192 buf35 = make([]queryIntentResponseAlloc, counts[35]) 1193 } 1194 buf35[0].union.QueryIntent = &buf35[0].resp 1195 br.Responses[i].Value = &buf35[0].union 1196 buf35 = buf35[1:] 1197 case *RequestUnion_AdminScatter: 1198 if buf36 == nil { 1199 buf36 = make([]adminScatterResponseAlloc, counts[36]) 1200 } 1201 buf36[0].union.AdminScatter = &buf36[0].resp 1202 br.Responses[i].Value = &buf36[0].union 1203 buf36 = buf36[1:] 1204 case *RequestUnion_AddSstable: 1205 if buf37 == nil { 1206 buf37 = make([]addSSTableResponseAlloc, counts[37]) 1207 } 1208 buf37[0].union.AddSstable = &buf37[0].resp 1209 br.Responses[i].Value = &buf37[0].union 1210 buf37 = buf37[1:] 1211 case *RequestUnion_RecomputeStats: 1212 if buf38 == nil { 1213 buf38 = make([]recomputeStatsResponseAlloc, counts[38]) 1214 } 1215 buf38[0].union.RecomputeStats = &buf38[0].resp 1216 br.Responses[i].Value = &buf38[0].union 1217 buf38 = buf38[1:] 1218 case *RequestUnion_Refresh: 1219 if buf39 == nil { 1220 buf39 = make([]refreshResponseAlloc, counts[39]) 1221 } 1222 buf39[0].union.Refresh = &buf39[0].resp 1223 br.Responses[i].Value = &buf39[0].union 1224 buf39 = buf39[1:] 1225 case *RequestUnion_RefreshRange: 1226 if buf40 == nil { 1227 buf40 = make([]refreshRangeResponseAlloc, counts[40]) 1228 } 1229 buf40[0].union.RefreshRange = &buf40[0].resp 1230 br.Responses[i].Value = &buf40[0].union 1231 buf40 = buf40[1:] 1232 case *RequestUnion_Subsume: 1233 if buf41 == nil { 1234 buf41 = make([]subsumeResponseAlloc, counts[41]) 1235 } 1236 buf41[0].union.Subsume = &buf41[0].resp 1237 br.Responses[i].Value = &buf41[0].union 1238 buf41 = buf41[1:] 1239 case *RequestUnion_RangeStats: 1240 if buf42 == nil { 1241 buf42 = make([]rangeStatsResponseAlloc, counts[42]) 1242 } 1243 buf42[0].union.RangeStats = &buf42[0].resp 1244 br.Responses[i].Value = &buf42[0].union 1245 buf42 = buf42[1:] 1246 case *RequestUnion_AdminVerifyProtectedTimestamp: 1247 if buf43 == nil { 1248 buf43 = make([]adminVerifyProtectedTimestampResponseAlloc, counts[43]) 1249 } 1250 buf43[0].union.AdminVerifyProtectedTimestamp = &buf43[0].resp 1251 br.Responses[i].Value = &buf43[0].union 1252 buf43 = buf43[1:] 1253 default: 1254 panic(fmt.Sprintf("unsupported request: %+v", r)) 1255 } 1256 } 1257 return br 1258 }