rpc.pb.go 150 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112
  1. // Code generated by protoc-gen-gogo. DO NOT EDIT.
  2. // source: rpcpb/rpc.proto
  3. /*
  4. Package rpcpb is a generated protocol buffer package.
  5. It is generated from these files:
  6. rpcpb/rpc.proto
  7. It has these top-level messages:
  8. Request
  9. SnapshotInfo
  10. Response
  11. Member
  12. Tester
  13. Etcd
  14. */
  15. package rpcpb
  16. import proto "github.com/golang/protobuf/proto"
  17. import fmt "fmt"
  18. import math "math"
  19. import _ "github.com/gogo/protobuf/gogoproto"
  20. import context "golang.org/x/net/context"
  21. import grpc "google.golang.org/grpc"
  22. import io "io"
  23. // Reference imports to suppress errors if they are not otherwise used.
  24. var _ = proto.Marshal
  25. var _ = fmt.Errorf
  26. var _ = math.Inf
  27. // This is a compile-time assertion to ensure that this generated file
  28. // is compatible with the proto package it is being compiled against.
  29. // A compilation error at this line likely means your copy of the
  30. // proto package needs to be updated.
  31. const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
  32. type Operation int32
  33. const (
  34. // NOT_STARTED is the agent status before etcd first start.
  35. Operation_NOT_STARTED Operation = 0
  36. // INITIAL_START_ETCD is only called to start etcd, the very first time.
  37. Operation_INITIAL_START_ETCD Operation = 10
  38. // RESTART_ETCD is sent to restart killed etcd.
  39. Operation_RESTART_ETCD Operation = 11
  40. // SIGTERM_ETCD pauses etcd process while keeping data directories
  41. // and previous etcd configurations.
  42. Operation_SIGTERM_ETCD Operation = 20
  43. // SIGQUIT_ETCD_AND_REMOVE_DATA kills etcd process and removes all data
  44. // directories to simulate destroying the whole machine.
  45. Operation_SIGQUIT_ETCD_AND_REMOVE_DATA Operation = 21
  46. // SAVE_SNAPSHOT is sent to trigger local member to download its snapshot
  47. // onto its local disk with the specified path from tester.
  48. Operation_SAVE_SNAPSHOT Operation = 30
  49. // RESTORE_RESTART_FROM_SNAPSHOT is sent to trigger local member to
  50. // restore a cluster from existing snapshot from disk, and restart
  51. // an etcd instance from recovered data.
  52. Operation_RESTORE_RESTART_FROM_SNAPSHOT Operation = 31
  53. // RESTART_FROM_SNAPSHOT is sent to trigger local member to restart
  54. // and join an existing cluster that has been recovered from a snapshot.
  55. // Local member joins this cluster with fresh data.
  56. Operation_RESTART_FROM_SNAPSHOT Operation = 32
  57. // SIGQUIT_ETCD_AND_ARCHIVE_DATA is sent when consistency check failed,
  58. // thus need to archive etcd data directories.
  59. Operation_SIGQUIT_ETCD_AND_ARCHIVE_DATA Operation = 40
  60. // SIGQUIT_ETCD_AND_REMOVE_DATA_AND_STOP_AGENT destroys etcd process,
  61. // etcd data, and agent server.
  62. Operation_SIGQUIT_ETCD_AND_REMOVE_DATA_AND_STOP_AGENT Operation = 41
  63. // BLACKHOLE_PEER_PORT_TX_RX drops all outgoing/incoming packets from/to
  64. // the peer port on target member's peer port.
  65. Operation_BLACKHOLE_PEER_PORT_TX_RX Operation = 100
  66. // UNBLACKHOLE_PEER_PORT_TX_RX removes outgoing/incoming packet dropping.
  67. Operation_UNBLACKHOLE_PEER_PORT_TX_RX Operation = 101
  68. // DELAY_PEER_PORT_TX_RX delays all outgoing/incoming packets from/to
  69. // the peer port on target member's peer port.
  70. Operation_DELAY_PEER_PORT_TX_RX Operation = 200
  71. // UNDELAY_PEER_PORT_TX_RX removes all outgoing/incoming delays.
  72. Operation_UNDELAY_PEER_PORT_TX_RX Operation = 201
  73. )
  74. var Operation_name = map[int32]string{
  75. 0: "NOT_STARTED",
  76. 10: "INITIAL_START_ETCD",
  77. 11: "RESTART_ETCD",
  78. 20: "SIGTERM_ETCD",
  79. 21: "SIGQUIT_ETCD_AND_REMOVE_DATA",
  80. 30: "SAVE_SNAPSHOT",
  81. 31: "RESTORE_RESTART_FROM_SNAPSHOT",
  82. 32: "RESTART_FROM_SNAPSHOT",
  83. 40: "SIGQUIT_ETCD_AND_ARCHIVE_DATA",
  84. 41: "SIGQUIT_ETCD_AND_REMOVE_DATA_AND_STOP_AGENT",
  85. 100: "BLACKHOLE_PEER_PORT_TX_RX",
  86. 101: "UNBLACKHOLE_PEER_PORT_TX_RX",
  87. 200: "DELAY_PEER_PORT_TX_RX",
  88. 201: "UNDELAY_PEER_PORT_TX_RX",
  89. }
  90. var Operation_value = map[string]int32{
  91. "NOT_STARTED": 0,
  92. "INITIAL_START_ETCD": 10,
  93. "RESTART_ETCD": 11,
  94. "SIGTERM_ETCD": 20,
  95. "SIGQUIT_ETCD_AND_REMOVE_DATA": 21,
  96. "SAVE_SNAPSHOT": 30,
  97. "RESTORE_RESTART_FROM_SNAPSHOT": 31,
  98. "RESTART_FROM_SNAPSHOT": 32,
  99. "SIGQUIT_ETCD_AND_ARCHIVE_DATA": 40,
  100. "SIGQUIT_ETCD_AND_REMOVE_DATA_AND_STOP_AGENT": 41,
  101. "BLACKHOLE_PEER_PORT_TX_RX": 100,
  102. "UNBLACKHOLE_PEER_PORT_TX_RX": 101,
  103. "DELAY_PEER_PORT_TX_RX": 200,
  104. "UNDELAY_PEER_PORT_TX_RX": 201,
  105. }
  106. func (x Operation) String() string {
  107. return proto.EnumName(Operation_name, int32(x))
  108. }
  109. func (Operation) EnumDescriptor() ([]byte, []int) { return fileDescriptorRpc, []int{0} }
  110. // Case defines various system faults or test case in distributed systems,
  111. // in order to verify correct behavior of etcd servers and clients.
  112. type Case int32
  113. const (
  114. // SIGTERM_ONE_FOLLOWER stops a randomly chosen follower (non-leader)
  115. // but does not delete its data directories on disk for next restart.
  116. // It waits "delay-ms" before recovering this failure.
  117. // The expected behavior is that the follower comes back online
  118. // and rejoins the cluster, and then each member continues to process
  119. // client requests ('Put' request that requires Raft consensus).
  120. Case_SIGTERM_ONE_FOLLOWER Case = 0
  121. // SIGTERM_ONE_FOLLOWER_UNTIL_TRIGGER_SNAPSHOT stops a randomly chosen
  122. // follower but does not delete its data directories on disk for next
  123. // restart. And waits until most up-to-date node (leader) applies the
  124. // snapshot count of entries since the stop operation.
  125. // The expected behavior is that the follower comes back online and
  126. // rejoins the cluster, and then active leader sends snapshot
  127. // to the follower to force it to follow the leader's log.
  128. // As always, after recovery, each member must be able to process
  129. // client requests.
  130. Case_SIGTERM_ONE_FOLLOWER_UNTIL_TRIGGER_SNAPSHOT Case = 1
  131. // SIGTERM_LEADER stops the active leader node but does not delete its
  132. // data directories on disk for next restart. Then it waits "delay-ms"
  133. // before recovering this failure, in order to trigger election timeouts.
  134. // The expected behavior is that a new leader gets elected, and the
  135. // old leader comes back online and rejoins the cluster as a follower.
  136. // As always, after recovery, each member must be able to process
  137. // client requests.
  138. Case_SIGTERM_LEADER Case = 2
  139. // SIGTERM_LEADER_UNTIL_TRIGGER_SNAPSHOT stops the active leader node
  140. // but does not delete its data directories on disk for next restart.
  141. // And waits until most up-to-date node ("new" leader) applies the
  142. // snapshot count of entries since the stop operation.
  143. // The expected behavior is that cluster elects a new leader, and the
  144. // old leader comes back online and rejoins the cluster as a follower.
  145. // And it receives the snapshot from the new leader to overwrite its
  146. // store. As always, after recovery, each member must be able to
  147. // process client requests.
  148. Case_SIGTERM_LEADER_UNTIL_TRIGGER_SNAPSHOT Case = 3
  149. // SIGTERM_QUORUM stops majority number of nodes to make the whole cluster
  150. // inoperable but does not delete data directories on stopped nodes
  151. // for next restart. And it waits "delay-ms" before recovering failure.
  152. // The expected behavior is that nodes come back online, thus cluster
  153. // comes back operative as well. As always, after recovery, each member
  154. // must be able to process client requests.
  155. Case_SIGTERM_QUORUM Case = 4
  156. // SIGTERM_ALL stops the whole cluster but does not delete data directories
  157. // on disk for next restart. And it waits "delay-ms" before recovering
  158. // this failure.
  159. // The expected behavior is that nodes come back online, thus cluster
  160. // comes back operative as well. As always, after recovery, each member
  161. // must be able to process client requests.
  162. Case_SIGTERM_ALL Case = 5
  163. // SIGQUIT_AND_REMOVE_ONE_FOLLOWER stops a randomly chosen follower
  164. // (non-leader), deletes its data directories on disk, and removes
  165. // this member from cluster (membership reconfiguration). On recovery,
  166. // tester adds a new member, and this member joins the existing cluster
  167. // with fresh data. It waits "delay-ms" before recovering this
  168. // failure. This simulates destroying one follower machine, where operator
  169. // needs to add a new member from a fresh machine.
  170. // The expected behavior is that a new member joins the existing cluster,
  171. // and then each member continues to process client requests.
  172. Case_SIGQUIT_AND_REMOVE_ONE_FOLLOWER Case = 10
  173. // SIGQUIT_AND_REMOVE_ONE_FOLLOWER_UNTIL_TRIGGER_SNAPSHOT stops a randomly
  174. // chosen follower, deletes its data directories on disk, and removes
  175. // this member from cluster (membership reconfiguration). On recovery,
  176. // tester adds a new member, and this member joins the existing cluster
  177. // restart. On member remove, cluster waits until most up-to-date node
  178. // (leader) applies the snapshot count of entries since the stop operation.
  179. // This simulates destroying a leader machine, where operator needs to add
  180. // a new member from a fresh machine.
  181. // The expected behavior is that a new member joins the existing cluster,
  182. // and receives a snapshot from the active leader. As always, after
  183. // recovery, each member must be able to process client requests.
  184. Case_SIGQUIT_AND_REMOVE_ONE_FOLLOWER_UNTIL_TRIGGER_SNAPSHOT Case = 11
  185. // SIGQUIT_AND_REMOVE_LEADER stops the active leader node, deletes its
  186. // data directories on disk, and removes this member from cluster.
  187. // On recovery, tester adds a new member, and this member joins the
  188. // existing cluster with fresh data. It waits "delay-ms" before
  189. // recovering this failure. This simulates destroying a leader machine,
  190. // where operator needs to add a new member from a fresh machine.
  191. // The expected behavior is that a new member joins the existing cluster,
  192. // and then each member continues to process client requests.
  193. Case_SIGQUIT_AND_REMOVE_LEADER Case = 12
  194. // SIGQUIT_AND_REMOVE_LEADER_UNTIL_TRIGGER_SNAPSHOT stops the active leader,
  195. // deletes its data directories on disk, and removes this member from
  196. // cluster (membership reconfiguration). On recovery, tester adds a new
  197. // member, and this member joins the existing cluster restart. On member
  198. // remove, cluster waits until most up-to-date node (new leader) applies
  199. // the snapshot count of entries since the stop operation. This simulates
  200. // destroying a leader machine, where operator needs to add a new member
  201. // from a fresh machine.
  202. // The expected behavior is that on member remove, cluster elects a new
  203. // leader, and a new member joins the existing cluster and receives a
  204. // snapshot from the newly elected leader. As always, after recovery, each
  205. // member must be able to process client requests.
  206. Case_SIGQUIT_AND_REMOVE_LEADER_UNTIL_TRIGGER_SNAPSHOT Case = 13
  207. // SIGQUIT_AND_REMOVE_QUORUM_AND_RESTORE_LEADER_SNAPSHOT_FROM_SCRATCH first
  208. // stops majority number of nodes, deletes data directories on those quorum
  209. // nodes, to make the whole cluster inoperable. Now that quorum and their
  210. // data are totally destroyed, cluster cannot even remove unavailable nodes
  211. // (e.g. 2 out of 3 are lost, so no leader can be elected).
  212. // Let's assume 3-node cluster of node A, B, and C. One day, node A and B
  213. // are destroyed and all their data are gone. The only viable solution is
  214. // to recover from C's latest snapshot.
  215. //
  216. // To simulate:
  217. // 1. Assume node C is the current leader with most up-to-date data.
  218. // 2. Download snapshot from node C, before destroying node A and B.
  219. // 3. Destroy node A and B, and make the whole cluster inoperable.
  220. // 4. Now node C cannot operate either.
  221. // 5. SIGTERM node C and remove its data directories.
  222. // 6. Restore a new seed member from node C's latest snapshot file.
  223. // 7. Add another member to establish 2-node cluster.
  224. // 8. Add another member to establish 3-node cluster.
  225. // 9. Add more if any.
  226. //
  227. // The expected behavior is that etcd successfully recovers from such
  228. // disastrous situation as only 1-node survives out of 3-node cluster,
  229. // new members joins the existing cluster, and previous data from snapshot
  230. // are still preserved after recovery process. As always, after recovery,
  231. // each member must be able to process client requests.
  232. Case_SIGQUIT_AND_REMOVE_QUORUM_AND_RESTORE_LEADER_SNAPSHOT_FROM_SCRATCH Case = 14
  233. // BLACKHOLE_PEER_PORT_TX_RX_ONE_FOLLOWER drops all outgoing/incoming
  234. // packets from/to the peer port on a randomly chosen follower
  235. // (non-leader), and waits for "delay-ms" until recovery.
  236. // The expected behavior is that once dropping operation is undone,
  237. // each member must be able to process client requests.
  238. Case_BLACKHOLE_PEER_PORT_TX_RX_ONE_FOLLOWER Case = 100
  239. // BLACKHOLE_PEER_PORT_TX_RX_ONE_FOLLOWER_UNTIL_TRIGGER_SNAPSHOT drops
  240. // all outgoing/incoming packets from/to the peer port on a randomly
  241. // chosen follower (non-leader), and waits for most up-to-date node
  242. // (leader) applies the snapshot count of entries since the blackhole
  243. // operation.
  244. // The expected behavior is that once packet drop operation is undone,
  245. // the slow follower tries to catch up, possibly receiving the snapshot
  246. // from the active leader. As always, after recovery, each member must
  247. // be able to process client requests.
  248. Case_BLACKHOLE_PEER_PORT_TX_RX_ONE_FOLLOWER_UNTIL_TRIGGER_SNAPSHOT Case = 101
  249. // BLACKHOLE_PEER_PORT_TX_RX_LEADER drops all outgoing/incoming packets
  250. // from/to the peer port on the active leader (isolated), and waits for
  251. // "delay-ms" until recovery, in order to trigger election timeout.
  252. // The expected behavior is that after election timeout, a new leader gets
  253. // elected, and once dropping operation is undone, the old leader comes
  254. // back and rejoins the cluster as a follower. As always, after recovery,
  255. // each member must be able to process client requests.
  256. Case_BLACKHOLE_PEER_PORT_TX_RX_LEADER Case = 102
  257. // BLACKHOLE_PEER_PORT_TX_RX_LEADER_UNTIL_TRIGGER_SNAPSHOT drops all
  258. // outgoing/incoming packets from/to the peer port on the active leader,
  259. // and waits for most up-to-date node (leader) applies the snapshot
  260. // count of entries since the blackhole operation.
  261. // The expected behavior is that cluster elects a new leader, and once
  262. // dropping operation is undone, the old leader comes back and rejoins
  263. // the cluster as a follower. The slow follower tries to catch up, likely
  264. // receiving the snapshot from the new active leader. As always, after
  265. // recovery, each member must be able to process client requests.
  266. Case_BLACKHOLE_PEER_PORT_TX_RX_LEADER_UNTIL_TRIGGER_SNAPSHOT Case = 103
  267. // BLACKHOLE_PEER_PORT_TX_RX_QUORUM drops all outgoing/incoming packets
  268. // from/to the peer ports on majority nodes of cluster, thus losing its
  269. // leader and cluster being inoperable. And it waits for "delay-ms"
  270. // until recovery.
  271. // The expected behavior is that once packet drop operation is undone,
  272. // nodes come back online, thus cluster comes back operative. As always,
  273. // after recovery, each member must be able to process client requests.
  274. Case_BLACKHOLE_PEER_PORT_TX_RX_QUORUM Case = 104
  275. // BLACKHOLE_PEER_PORT_TX_RX_ALL drops all outgoing/incoming packets
  276. // from/to the peer ports on all nodes, thus making cluster totally
  277. // inoperable. It waits for "delay-ms" until recovery.
  278. // The expected behavior is that once packet drop operation is undone,
  279. // nodes come back online, thus cluster comes back operative. As always,
  280. // after recovery, each member must be able to process client requests.
  281. Case_BLACKHOLE_PEER_PORT_TX_RX_ALL Case = 105
  282. // DELAY_PEER_PORT_TX_RX_ONE_FOLLOWER delays outgoing/incoming packets
  283. // from/to the peer port on a randomly chosen follower (non-leader).
  284. // It waits for "delay-ms" until recovery.
  285. // The expected behavior is that once packet delay operation is undone,
  286. // the follower comes back and tries to catch up with latest changes from
  287. // cluster. And as always, after recovery, each member must be able to
  288. // process client requests.
  289. Case_DELAY_PEER_PORT_TX_RX_ONE_FOLLOWER Case = 200
  290. // RANDOM_DELAY_PEER_PORT_TX_RX_ONE_FOLLOWER delays outgoing/incoming
  291. // packets from/to the peer port on a randomly chosen follower
  292. // (non-leader) with a randomized time duration (thus isolated). It
  293. // waits for "delay-ms" until recovery.
  294. // The expected behavior is that once packet delay operation is undone,
  295. // each member must be able to process client requests.
  296. Case_RANDOM_DELAY_PEER_PORT_TX_RX_ONE_FOLLOWER Case = 201
  297. // DELAY_PEER_PORT_TX_RX_ONE_FOLLOWER_UNTIL_TRIGGER_SNAPSHOT delays
  298. // outgoing/incoming packets from/to the peer port on a randomly chosen
  299. // follower (non-leader), and waits for most up-to-date node (leader)
  300. // applies the snapshot count of entries since the delay operation.
  301. // The expected behavior is that the delayed follower gets isolated
  302. // and behind the current active leader, and once delay operation is undone,
  303. // the slow follower comes back and catches up possibly receiving snapshot
  304. // from the active leader. As always, after recovery, each member must be
  305. // able to process client requests.
  306. Case_DELAY_PEER_PORT_TX_RX_ONE_FOLLOWER_UNTIL_TRIGGER_SNAPSHOT Case = 202
  307. // RANDOM_DELAY_PEER_PORT_TX_RX_ONE_FOLLOWER_UNTIL_TRIGGER_SNAPSHOT delays
  308. // outgoing/incoming packets from/to the peer port on a randomly chosen
  309. // follower (non-leader) with a randomized time duration, and waits for
  310. // most up-to-date node (leader) applies the snapshot count of entries
  311. // since the delay operation.
  312. // The expected behavior is that the delayed follower gets isolated
  313. // and behind the current active leader, and once delay operation is undone,
  314. // the slow follower comes back and catches up, possibly receiving a
  315. // snapshot from the active leader. As always, after recovery, each member
  316. // must be able to process client requests.
  317. Case_RANDOM_DELAY_PEER_PORT_TX_RX_ONE_FOLLOWER_UNTIL_TRIGGER_SNAPSHOT Case = 203
  318. // DELAY_PEER_PORT_TX_RX_LEADER delays outgoing/incoming packets from/to
  319. // the peer port on the active leader. And waits for "delay-ms" until
  320. // recovery.
  321. // The expected behavior is that cluster may elect a new leader, and
  322. // once packet delay operation is undone, the (old) leader comes back
  323. // and tries to catch up with latest changes from cluster. As always,
  324. // after recovery, each member must be able to process client requests.
  325. Case_DELAY_PEER_PORT_TX_RX_LEADER Case = 204
  326. // RANDOM_DELAY_PEER_PORT_TX_RX_LEADER delays outgoing/incoming packets
  327. // from/to the peer port on the active leader with a randomized time
  328. // duration. And waits for "delay-ms" until recovery.
  329. // The expected behavior is that cluster may elect a new leader, and
  330. // once packet delay operation is undone, the (old) leader comes back
  331. // and tries to catch up with latest changes from cluster. As always,
  332. // after recovery, each member must be able to process client requests.
  333. Case_RANDOM_DELAY_PEER_PORT_TX_RX_LEADER Case = 205
  334. // DELAY_PEER_PORT_TX_RX_LEADER_UNTIL_TRIGGER_SNAPSHOT delays
  335. // outgoing/incoming packets from/to the peer port on the active leader,
  336. // and waits for most up-to-date node (current or new leader) applies the
  337. // snapshot count of entries since the delay operation.
  338. // The expected behavior is that cluster may elect a new leader, and
  339. // the old leader gets isolated and behind the current active leader,
  340. // and once delay operation is undone, the slow follower comes back
  341. // and catches up, likely receiving a snapshot from the active leader.
  342. // As always, after recovery, each member must be able to process client
  343. // requests.
  344. Case_DELAY_PEER_PORT_TX_RX_LEADER_UNTIL_TRIGGER_SNAPSHOT Case = 206
  345. // RANDOM_DELAY_PEER_PORT_TX_RX_LEADER_UNTIL_TRIGGER_SNAPSHOT delays
  346. // outgoing/incoming packets from/to the peer port on the active leader,
  347. // with a randomized time duration. And it waits for most up-to-date node
  348. // (current or new leader) applies the snapshot count of entries since the
  349. // delay operation.
  350. // The expected behavior is that cluster may elect a new leader, and
  351. // the old leader gets isolated and behind the current active leader,
  352. // and once delay operation is undone, the slow follower comes back
  353. // and catches up, likely receiving a snapshot from the active leader.
  354. // As always, after recovery, each member must be able to process client
  355. // requests.
  356. Case_RANDOM_DELAY_PEER_PORT_TX_RX_LEADER_UNTIL_TRIGGER_SNAPSHOT Case = 207
  357. // DELAY_PEER_PORT_TX_RX_QUORUM delays outgoing/incoming packets from/to
  358. // the peer ports on majority nodes of cluster. And it waits for
  359. // "delay-ms" until recovery, likely to trigger election timeouts.
  360. // The expected behavior is that cluster may elect a new leader, while
  361. // quorum of nodes struggle with slow networks, and once delay operation
  362. // is undone, nodes come back and cluster comes back operative. As always,
  363. // after recovery, each member must be able to process client requests.
  364. Case_DELAY_PEER_PORT_TX_RX_QUORUM Case = 208
  365. // RANDOM_DELAY_PEER_PORT_TX_RX_QUORUM delays outgoing/incoming packets
  366. // from/to the peer ports on majority nodes of cluster, with randomized
  367. // time durations. And it waits for "delay-ms" until recovery, likely
  368. // to trigger election timeouts.
  369. // The expected behavior is that cluster may elect a new leader, while
  370. // quorum of nodes struggle with slow networks, and once delay operation
  371. // is undone, nodes come back and cluster comes back operative. As always,
  372. // after recovery, each member must be able to process client requests.
  373. Case_RANDOM_DELAY_PEER_PORT_TX_RX_QUORUM Case = 209
  374. // DELAY_PEER_PORT_TX_RX_ALL delays outgoing/incoming packets from/to the
  375. // peer ports on all nodes. And it waits for "delay-ms" until recovery,
  376. // likely to trigger election timeouts.
  377. // The expected behavior is that cluster may become totally inoperable,
  378. // struggling with slow networks across the whole cluster. Once delay
  379. // operation is undone, nodes come back and cluster comes back operative.
  380. // As always, after recovery, each member must be able to process client
  381. // requests.
  382. Case_DELAY_PEER_PORT_TX_RX_ALL Case = 210
  383. // RANDOM_DELAY_PEER_PORT_TX_RX_ALL delays outgoing/incoming packets
  384. // from/to the peer ports on all nodes, with randomized time durations.
  385. // And it waits for "delay-ms" until recovery, likely to trigger
  386. // election timeouts.
  387. // The expected behavior is that cluster may become totally inoperable,
  388. // struggling with slow networks across the whole cluster. Once delay
  389. // operation is undone, nodes come back and cluster comes back operative.
  390. // As always, after recovery, each member must be able to process client
  391. // requests.
  392. Case_RANDOM_DELAY_PEER_PORT_TX_RX_ALL Case = 211
  393. // NO_FAIL_WITH_STRESS stops injecting failures while testing the
  394. // consistency and correctness under pressure loads, for the duration of
  395. // "delay-ms". Goal is to ensure cluster be still making progress
  396. // on recovery, and verify system does not deadlock following a sequence
  397. // of failure injections.
  398. // The expected behavior is that cluster remains fully operative in healthy
  399. // condition. As always, after recovery, each member must be able to process
  400. // client requests.
  401. Case_NO_FAIL_WITH_STRESS Case = 300
  402. // NO_FAIL_WITH_NO_STRESS_FOR_LIVENESS neither injects failures nor
  403. // sends stressig client requests to the cluster, for the duration of
  404. // "delay-ms". Goal is to ensure cluster be still making progress
  405. // on recovery, and verify system does not deadlock following a sequence
  406. // of failure injections.
  407. // The expected behavior is that cluster remains fully operative in healthy
  408. // condition, and clients requests during liveness period succeed without
  409. // errors.
  410. // Note: this is how Google Chubby does failure injection testing
  411. // https://static.googleusercontent.com/media/research.google.com/en//archive/paxos_made_live.pdf.
  412. Case_NO_FAIL_WITH_NO_STRESS_FOR_LIVENESS Case = 301
  413. // FAILPOINTS injects failpoints to etcd server runtime, triggering panics
  414. // in critical code paths.
  415. Case_FAILPOINTS Case = 400
  416. // EXTERNAL runs external failure injection scripts.
  417. Case_EXTERNAL Case = 500
  418. )
  419. var Case_name = map[int32]string{
  420. 0: "SIGTERM_ONE_FOLLOWER",
  421. 1: "SIGTERM_ONE_FOLLOWER_UNTIL_TRIGGER_SNAPSHOT",
  422. 2: "SIGTERM_LEADER",
  423. 3: "SIGTERM_LEADER_UNTIL_TRIGGER_SNAPSHOT",
  424. 4: "SIGTERM_QUORUM",
  425. 5: "SIGTERM_ALL",
  426. 10: "SIGQUIT_AND_REMOVE_ONE_FOLLOWER",
  427. 11: "SIGQUIT_AND_REMOVE_ONE_FOLLOWER_UNTIL_TRIGGER_SNAPSHOT",
  428. 12: "SIGQUIT_AND_REMOVE_LEADER",
  429. 13: "SIGQUIT_AND_REMOVE_LEADER_UNTIL_TRIGGER_SNAPSHOT",
  430. 14: "SIGQUIT_AND_REMOVE_QUORUM_AND_RESTORE_LEADER_SNAPSHOT_FROM_SCRATCH",
  431. 100: "BLACKHOLE_PEER_PORT_TX_RX_ONE_FOLLOWER",
  432. 101: "BLACKHOLE_PEER_PORT_TX_RX_ONE_FOLLOWER_UNTIL_TRIGGER_SNAPSHOT",
  433. 102: "BLACKHOLE_PEER_PORT_TX_RX_LEADER",
  434. 103: "BLACKHOLE_PEER_PORT_TX_RX_LEADER_UNTIL_TRIGGER_SNAPSHOT",
  435. 104: "BLACKHOLE_PEER_PORT_TX_RX_QUORUM",
  436. 105: "BLACKHOLE_PEER_PORT_TX_RX_ALL",
  437. 200: "DELAY_PEER_PORT_TX_RX_ONE_FOLLOWER",
  438. 201: "RANDOM_DELAY_PEER_PORT_TX_RX_ONE_FOLLOWER",
  439. 202: "DELAY_PEER_PORT_TX_RX_ONE_FOLLOWER_UNTIL_TRIGGER_SNAPSHOT",
  440. 203: "RANDOM_DELAY_PEER_PORT_TX_RX_ONE_FOLLOWER_UNTIL_TRIGGER_SNAPSHOT",
  441. 204: "DELAY_PEER_PORT_TX_RX_LEADER",
  442. 205: "RANDOM_DELAY_PEER_PORT_TX_RX_LEADER",
  443. 206: "DELAY_PEER_PORT_TX_RX_LEADER_UNTIL_TRIGGER_SNAPSHOT",
  444. 207: "RANDOM_DELAY_PEER_PORT_TX_RX_LEADER_UNTIL_TRIGGER_SNAPSHOT",
  445. 208: "DELAY_PEER_PORT_TX_RX_QUORUM",
  446. 209: "RANDOM_DELAY_PEER_PORT_TX_RX_QUORUM",
  447. 210: "DELAY_PEER_PORT_TX_RX_ALL",
  448. 211: "RANDOM_DELAY_PEER_PORT_TX_RX_ALL",
  449. 300: "NO_FAIL_WITH_STRESS",
  450. 301: "NO_FAIL_WITH_NO_STRESS_FOR_LIVENESS",
  451. 400: "FAILPOINTS",
  452. 500: "EXTERNAL",
  453. }
  454. var Case_value = map[string]int32{
  455. "SIGTERM_ONE_FOLLOWER": 0,
  456. "SIGTERM_ONE_FOLLOWER_UNTIL_TRIGGER_SNAPSHOT": 1,
  457. "SIGTERM_LEADER": 2,
  458. "SIGTERM_LEADER_UNTIL_TRIGGER_SNAPSHOT": 3,
  459. "SIGTERM_QUORUM": 4,
  460. "SIGTERM_ALL": 5,
  461. "SIGQUIT_AND_REMOVE_ONE_FOLLOWER": 10,
  462. "SIGQUIT_AND_REMOVE_ONE_FOLLOWER_UNTIL_TRIGGER_SNAPSHOT": 11,
  463. "SIGQUIT_AND_REMOVE_LEADER": 12,
  464. "SIGQUIT_AND_REMOVE_LEADER_UNTIL_TRIGGER_SNAPSHOT": 13,
  465. "SIGQUIT_AND_REMOVE_QUORUM_AND_RESTORE_LEADER_SNAPSHOT_FROM_SCRATCH": 14,
  466. "BLACKHOLE_PEER_PORT_TX_RX_ONE_FOLLOWER": 100,
  467. "BLACKHOLE_PEER_PORT_TX_RX_ONE_FOLLOWER_UNTIL_TRIGGER_SNAPSHOT": 101,
  468. "BLACKHOLE_PEER_PORT_TX_RX_LEADER": 102,
  469. "BLACKHOLE_PEER_PORT_TX_RX_LEADER_UNTIL_TRIGGER_SNAPSHOT": 103,
  470. "BLACKHOLE_PEER_PORT_TX_RX_QUORUM": 104,
  471. "BLACKHOLE_PEER_PORT_TX_RX_ALL": 105,
  472. "DELAY_PEER_PORT_TX_RX_ONE_FOLLOWER": 200,
  473. "RANDOM_DELAY_PEER_PORT_TX_RX_ONE_FOLLOWER": 201,
  474. "DELAY_PEER_PORT_TX_RX_ONE_FOLLOWER_UNTIL_TRIGGER_SNAPSHOT": 202,
  475. "RANDOM_DELAY_PEER_PORT_TX_RX_ONE_FOLLOWER_UNTIL_TRIGGER_SNAPSHOT": 203,
  476. "DELAY_PEER_PORT_TX_RX_LEADER": 204,
  477. "RANDOM_DELAY_PEER_PORT_TX_RX_LEADER": 205,
  478. "DELAY_PEER_PORT_TX_RX_LEADER_UNTIL_TRIGGER_SNAPSHOT": 206,
  479. "RANDOM_DELAY_PEER_PORT_TX_RX_LEADER_UNTIL_TRIGGER_SNAPSHOT": 207,
  480. "DELAY_PEER_PORT_TX_RX_QUORUM": 208,
  481. "RANDOM_DELAY_PEER_PORT_TX_RX_QUORUM": 209,
  482. "DELAY_PEER_PORT_TX_RX_ALL": 210,
  483. "RANDOM_DELAY_PEER_PORT_TX_RX_ALL": 211,
  484. "NO_FAIL_WITH_STRESS": 300,
  485. "NO_FAIL_WITH_NO_STRESS_FOR_LIVENESS": 301,
  486. "FAILPOINTS": 400,
  487. "EXTERNAL": 500,
  488. }
  489. func (x Case) String() string {
  490. return proto.EnumName(Case_name, int32(x))
  491. }
  492. func (Case) EnumDescriptor() ([]byte, []int) { return fileDescriptorRpc, []int{1} }
  493. type Stresser int32
  494. const (
  495. Stresser_KV Stresser = 0
  496. Stresser_LEASE Stresser = 1
  497. Stresser_ELECTION_RUNNER Stresser = 2
  498. Stresser_WATCH_RUNNER Stresser = 3
  499. Stresser_LOCK_RACER_RUNNER Stresser = 4
  500. Stresser_LEASE_RUNNER Stresser = 5
  501. )
  502. var Stresser_name = map[int32]string{
  503. 0: "KV",
  504. 1: "LEASE",
  505. 2: "ELECTION_RUNNER",
  506. 3: "WATCH_RUNNER",
  507. 4: "LOCK_RACER_RUNNER",
  508. 5: "LEASE_RUNNER",
  509. }
  510. var Stresser_value = map[string]int32{
  511. "KV": 0,
  512. "LEASE": 1,
  513. "ELECTION_RUNNER": 2,
  514. "WATCH_RUNNER": 3,
  515. "LOCK_RACER_RUNNER": 4,
  516. "LEASE_RUNNER": 5,
  517. }
  518. func (x Stresser) String() string {
  519. return proto.EnumName(Stresser_name, int32(x))
  520. }
  521. func (Stresser) EnumDescriptor() ([]byte, []int) { return fileDescriptorRpc, []int{2} }
  522. type Checker int32
  523. const (
  524. Checker_KV_HASH Checker = 0
  525. Checker_LEASE_EXPIRE Checker = 1
  526. Checker_RUNNER Checker = 2
  527. Checker_NO_CHECK Checker = 3
  528. )
  529. var Checker_name = map[int32]string{
  530. 0: "KV_HASH",
  531. 1: "LEASE_EXPIRE",
  532. 2: "RUNNER",
  533. 3: "NO_CHECK",
  534. }
  535. var Checker_value = map[string]int32{
  536. "KV_HASH": 0,
  537. "LEASE_EXPIRE": 1,
  538. "RUNNER": 2,
  539. "NO_CHECK": 3,
  540. }
  541. func (x Checker) String() string {
  542. return proto.EnumName(Checker_name, int32(x))
  543. }
  544. func (Checker) EnumDescriptor() ([]byte, []int) { return fileDescriptorRpc, []int{3} }
  545. type Request struct {
  546. Operation Operation `protobuf:"varint,1,opt,name=Operation,proto3,enum=rpcpb.Operation" json:"Operation,omitempty"`
  547. // Member contains the same Member object from tester configuration.
  548. Member *Member `protobuf:"bytes,2,opt,name=Member" json:"Member,omitempty"`
  549. // Tester contains tester configuration.
  550. Tester *Tester `protobuf:"bytes,3,opt,name=Tester" json:"Tester,omitempty"`
  551. }
  552. func (m *Request) Reset() { *m = Request{} }
  553. func (m *Request) String() string { return proto.CompactTextString(m) }
  554. func (*Request) ProtoMessage() {}
  555. func (*Request) Descriptor() ([]byte, []int) { return fileDescriptorRpc, []int{0} }
  556. // SnapshotInfo contains SAVE_SNAPSHOT request results.
  557. type SnapshotInfo struct {
  558. MemberName string `protobuf:"bytes,1,opt,name=MemberName,proto3" json:"MemberName,omitempty"`
  559. MemberClientURLs []string `protobuf:"bytes,2,rep,name=MemberClientURLs" json:"MemberClientURLs,omitempty"`
  560. SnapshotPath string `protobuf:"bytes,3,opt,name=SnapshotPath,proto3" json:"SnapshotPath,omitempty"`
  561. SnapshotFileSize string `protobuf:"bytes,4,opt,name=SnapshotFileSize,proto3" json:"SnapshotFileSize,omitempty"`
  562. SnapshotTotalSize string `protobuf:"bytes,5,opt,name=SnapshotTotalSize,proto3" json:"SnapshotTotalSize,omitempty"`
  563. SnapshotTotalKey int64 `protobuf:"varint,6,opt,name=SnapshotTotalKey,proto3" json:"SnapshotTotalKey,omitempty"`
  564. SnapshotHash int64 `protobuf:"varint,7,opt,name=SnapshotHash,proto3" json:"SnapshotHash,omitempty"`
  565. SnapshotRevision int64 `protobuf:"varint,8,opt,name=SnapshotRevision,proto3" json:"SnapshotRevision,omitempty"`
  566. Took string `protobuf:"bytes,9,opt,name=Took,proto3" json:"Took,omitempty"`
  567. }
  568. func (m *SnapshotInfo) Reset() { *m = SnapshotInfo{} }
  569. func (m *SnapshotInfo) String() string { return proto.CompactTextString(m) }
  570. func (*SnapshotInfo) ProtoMessage() {}
  571. func (*SnapshotInfo) Descriptor() ([]byte, []int) { return fileDescriptorRpc, []int{1} }
  572. type Response struct {
  573. Success bool `protobuf:"varint,1,opt,name=Success,proto3" json:"Success,omitempty"`
  574. Status string `protobuf:"bytes,2,opt,name=Status,proto3" json:"Status,omitempty"`
  575. // Member contains the same Member object from tester request.
  576. Member *Member `protobuf:"bytes,3,opt,name=Member" json:"Member,omitempty"`
  577. // SnapshotInfo contains SAVE_SNAPSHOT request results.
  578. SnapshotInfo *SnapshotInfo `protobuf:"bytes,4,opt,name=SnapshotInfo" json:"SnapshotInfo,omitempty"`
  579. }
  580. func (m *Response) Reset() { *m = Response{} }
  581. func (m *Response) String() string { return proto.CompactTextString(m) }
  582. func (*Response) ProtoMessage() {}
  583. func (*Response) Descriptor() ([]byte, []int) { return fileDescriptorRpc, []int{2} }
  584. type Member struct {
  585. // EtcdExecPath is the executable etcd binary path in agent server.
  586. EtcdExecPath string `protobuf:"bytes,1,opt,name=EtcdExecPath,proto3" json:"EtcdExecPath,omitempty" yaml:"etcd-exec-path"`
  587. // AgentAddr is the agent HTTP server address.
  588. AgentAddr string `protobuf:"bytes,11,opt,name=AgentAddr,proto3" json:"AgentAddr,omitempty" yaml:"agent-addr"`
  589. // FailpointHTTPAddr is the agent's failpoints HTTP server address.
  590. FailpointHTTPAddr string `protobuf:"bytes,12,opt,name=FailpointHTTPAddr,proto3" json:"FailpointHTTPAddr,omitempty" yaml:"failpoint-http-addr"`
  591. // BaseDir is the base directory where all logs and etcd data are stored.
  592. BaseDir string `protobuf:"bytes,101,opt,name=BaseDir,proto3" json:"BaseDir,omitempty" yaml:"base-dir"`
  593. // EtcdLogPath is the log file to store current etcd server logs.
  594. EtcdLogPath string `protobuf:"bytes,102,opt,name=EtcdLogPath,proto3" json:"EtcdLogPath,omitempty" yaml:"etcd-log-path"`
  595. // EtcdClientProxy is true when client traffic needs to be proxied.
  596. // If true, listen client URL port must be different than advertise client URL port.
  597. EtcdClientProxy bool `protobuf:"varint,201,opt,name=EtcdClientProxy,proto3" json:"EtcdClientProxy,omitempty" yaml:"etcd-client-proxy"`
  598. // EtcdPeerProxy is true when peer traffic needs to be proxied.
  599. // If true, listen peer URL port must be different than advertise peer URL port.
  600. EtcdPeerProxy bool `protobuf:"varint,202,opt,name=EtcdPeerProxy,proto3" json:"EtcdPeerProxy,omitempty" yaml:"etcd-peer-proxy"`
  601. // EtcdClientEndpoint is the etcd client endpoint.
  602. EtcdClientEndpoint string `protobuf:"bytes,301,opt,name=EtcdClientEndpoint,proto3" json:"EtcdClientEndpoint,omitempty" yaml:"etcd-client-endpoint"`
  603. // Etcd defines etcd binary configuration flags.
  604. Etcd *Etcd `protobuf:"bytes,302,opt,name=Etcd" json:"Etcd,omitempty" yaml:"etcd"`
  605. // EtcdOnSnapshotRestore defines one-time use configuration during etcd
  606. // snapshot recovery process.
  607. EtcdOnSnapshotRestore *Etcd `protobuf:"bytes,303,opt,name=EtcdOnSnapshotRestore" json:"EtcdOnSnapshotRestore,omitempty"`
  608. // ClientCertData contains cert file contents from this member's etcd server.
  609. ClientCertData string `protobuf:"bytes,401,opt,name=ClientCertData,proto3" json:"ClientCertData,omitempty" yaml:"client-cert-data"`
  610. ClientCertPath string `protobuf:"bytes,402,opt,name=ClientCertPath,proto3" json:"ClientCertPath,omitempty" yaml:"client-cert-path"`
  611. // ClientKeyData contains key file contents from this member's etcd server.
  612. ClientKeyData string `protobuf:"bytes,403,opt,name=ClientKeyData,proto3" json:"ClientKeyData,omitempty" yaml:"client-key-data"`
  613. ClientKeyPath string `protobuf:"bytes,404,opt,name=ClientKeyPath,proto3" json:"ClientKeyPath,omitempty" yaml:"client-key-path"`
  614. // ClientTrustedCAData contains trusted CA file contents from this member's etcd server.
  615. ClientTrustedCAData string `protobuf:"bytes,405,opt,name=ClientTrustedCAData,proto3" json:"ClientTrustedCAData,omitempty" yaml:"client-trusted-ca-data"`
  616. ClientTrustedCAPath string `protobuf:"bytes,406,opt,name=ClientTrustedCAPath,proto3" json:"ClientTrustedCAPath,omitempty" yaml:"client-trusted-ca-path"`
  617. // PeerCertData contains cert file contents from this member's etcd server.
  618. PeerCertData string `protobuf:"bytes,501,opt,name=PeerCertData,proto3" json:"PeerCertData,omitempty" yaml:"peer-cert-data"`
  619. PeerCertPath string `protobuf:"bytes,502,opt,name=PeerCertPath,proto3" json:"PeerCertPath,omitempty" yaml:"peer-cert-path"`
  620. // PeerKeyData contains key file contents from this member's etcd server.
  621. PeerKeyData string `protobuf:"bytes,503,opt,name=PeerKeyData,proto3" json:"PeerKeyData,omitempty" yaml:"peer-key-data"`
  622. PeerKeyPath string `protobuf:"bytes,504,opt,name=PeerKeyPath,proto3" json:"PeerKeyPath,omitempty" yaml:"peer-key-path"`
  623. // PeerTrustedCAData contains trusted CA file contents from this member's etcd server.
  624. PeerTrustedCAData string `protobuf:"bytes,505,opt,name=PeerTrustedCAData,proto3" json:"PeerTrustedCAData,omitempty" yaml:"peer-trusted-ca-data"`
  625. PeerTrustedCAPath string `protobuf:"bytes,506,opt,name=PeerTrustedCAPath,proto3" json:"PeerTrustedCAPath,omitempty" yaml:"peer-trusted-ca-path"`
  626. // SnapshotPath is the snapshot file path to store or restore from.
  627. SnapshotPath string `protobuf:"bytes,601,opt,name=SnapshotPath,proto3" json:"SnapshotPath,omitempty" yaml:"snapshot-path"`
  628. // SnapshotInfo contains last SAVE_SNAPSHOT request results.
  629. SnapshotInfo *SnapshotInfo `protobuf:"bytes,602,opt,name=SnapshotInfo" json:"SnapshotInfo,omitempty"`
  630. }
  631. func (m *Member) Reset() { *m = Member{} }
  632. func (m *Member) String() string { return proto.CompactTextString(m) }
  633. func (*Member) ProtoMessage() {}
  634. func (*Member) Descriptor() ([]byte, []int) { return fileDescriptorRpc, []int{3} }
  635. type Tester struct {
  636. DataDir string `protobuf:"bytes,1,opt,name=DataDir,proto3" json:"DataDir,omitempty" yaml:"data-dir"`
  637. Network string `protobuf:"bytes,2,opt,name=Network,proto3" json:"Network,omitempty" yaml:"network"`
  638. Addr string `protobuf:"bytes,3,opt,name=Addr,proto3" json:"Addr,omitempty" yaml:"addr"`
  639. // DelayLatencyMsRv is the delay latency in milliseconds,
  640. // to inject to simulated slow network.
  641. DelayLatencyMs uint32 `protobuf:"varint,11,opt,name=DelayLatencyMs,proto3" json:"DelayLatencyMs,omitempty" yaml:"delay-latency-ms"`
  642. // DelayLatencyMsRv is the delay latency random variable in milliseconds.
  643. DelayLatencyMsRv uint32 `protobuf:"varint,12,opt,name=DelayLatencyMsRv,proto3" json:"DelayLatencyMsRv,omitempty" yaml:"delay-latency-ms-rv"`
  644. // UpdatedDelayLatencyMs is the update delay latency in milliseconds,
  645. // to inject to simulated slow network. It's the final latency to apply,
  646. // in case the latency numbers are randomly generated from given delay latency field.
  647. UpdatedDelayLatencyMs uint32 `protobuf:"varint,13,opt,name=UpdatedDelayLatencyMs,proto3" json:"UpdatedDelayLatencyMs,omitempty" yaml:"updated-delay-latency-ms"`
  648. // RoundLimit is the limit of rounds to run failure set (-1 to run without limits).
  649. RoundLimit int32 `protobuf:"varint,21,opt,name=RoundLimit,proto3" json:"RoundLimit,omitempty" yaml:"round-limit"`
  650. // ExitOnCaseFail is true, then exit tester on first failure.
  651. ExitOnCaseFail bool `protobuf:"varint,22,opt,name=ExitOnCaseFail,proto3" json:"ExitOnCaseFail,omitempty" yaml:"exit-on-failure"`
  652. // EnablePprof is true to enable profiler.
  653. EnablePprof bool `protobuf:"varint,23,opt,name=EnablePprof,proto3" json:"EnablePprof,omitempty" yaml:"enable-pprof"`
  654. // CaseDelayMs is the delay duration after failure is injected.
  655. // Useful when triggering snapshot or no-op failure cases.
  656. CaseDelayMs uint32 `protobuf:"varint,31,opt,name=CaseDelayMs,proto3" json:"CaseDelayMs,omitempty" yaml:"case-delay-ms"`
  657. // CaseShuffle is true to randomize failure injecting order.
  658. CaseShuffle bool `protobuf:"varint,32,opt,name=CaseShuffle,proto3" json:"CaseShuffle,omitempty" yaml:"case-shuffle"`
  659. // Cases is the selected test cases to schedule.
  660. // If empty, run all failure cases.
  661. Cases []string `protobuf:"bytes,33,rep,name=Cases" json:"Cases,omitempty" yaml:"cases"`
  662. // FailpointCommands is the list of "gofail" commands
  663. // (e.g. panic("etcd-tester"),1*sleep(1000).
  664. FailpointCommands []string `protobuf:"bytes,34,rep,name=FailpointCommands" json:"FailpointCommands,omitempty" yaml:"failpoint-commands"`
  665. // RunnerExecPath is a path of etcd-runner binary.
  666. RunnerExecPath string `protobuf:"bytes,41,opt,name=RunnerExecPath,proto3" json:"RunnerExecPath,omitempty" yaml:"runner-exec-path"`
  667. // ExternalExecPath is a path of script for enabling/disabling an external fault injector.
  668. ExternalExecPath string `protobuf:"bytes,42,opt,name=ExternalExecPath,proto3" json:"ExternalExecPath,omitempty" yaml:"external-exec-path"`
  669. // Stressers is the list of stresser types:
  670. // KV, LEASE, ELECTION_RUNNER, WATCH_RUNNER, LOCK_RACER_RUNNER, LEASE_RUNNER.
  671. Stressers []string `protobuf:"bytes,101,rep,name=Stressers" json:"Stressers,omitempty" yaml:"stressers"`
  672. // Checkers is the list of consistency checker types:
  673. // KV_HASH, LEASE_EXPIRE, NO_CHECK, RUNNER.
  674. // Leave empty to skip consistency checks.
  675. Checkers []string `protobuf:"bytes,102,rep,name=Checkers" json:"Checkers,omitempty" yaml:"checkers"`
  676. // StressKeySize is the size of each small key written into etcd.
  677. StressKeySize int32 `protobuf:"varint,201,opt,name=StressKeySize,proto3" json:"StressKeySize,omitempty" yaml:"stress-key-size"`
  678. // StressKeySizeLarge is the size of each large key written into etcd.
  679. StressKeySizeLarge int32 `protobuf:"varint,202,opt,name=StressKeySizeLarge,proto3" json:"StressKeySizeLarge,omitempty" yaml:"stress-key-size-large"`
  680. // StressKeySuffixRange is the count of key range written into etcd.
  681. // Stress keys are created with "fmt.Sprintf("foo%016x", rand.Intn(keySuffixRange)".
  682. StressKeySuffixRange int32 `protobuf:"varint,203,opt,name=StressKeySuffixRange,proto3" json:"StressKeySuffixRange,omitempty" yaml:"stress-key-suffix-range"`
  683. // StressKeySuffixRangeTxn is the count of key range written into etcd txn (max 100).
  684. // Stress keys are created with "fmt.Sprintf("/k%03d", i)".
  685. StressKeySuffixRangeTxn int32 `protobuf:"varint,204,opt,name=StressKeySuffixRangeTxn,proto3" json:"StressKeySuffixRangeTxn,omitempty" yaml:"stress-key-suffix-range-txn"`
  686. // StressKeyTxnOps is the number of operations per a transaction (max 64).
  687. StressKeyTxnOps int32 `protobuf:"varint,205,opt,name=StressKeyTxnOps,proto3" json:"StressKeyTxnOps,omitempty" yaml:"stress-key-txn-ops"`
  688. // StressClients is the number of concurrent stressing clients
  689. // with "one" shared TCP connection.
  690. StressClients int32 `protobuf:"varint,301,opt,name=StressClients,proto3" json:"StressClients,omitempty" yaml:"stress-clients"`
  691. // StressQPS is the maximum number of stresser requests per second.
  692. StressQPS int32 `protobuf:"varint,302,opt,name=StressQPS,proto3" json:"StressQPS,omitempty" yaml:"stress-qps"`
  693. }
  694. func (m *Tester) Reset() { *m = Tester{} }
  695. func (m *Tester) String() string { return proto.CompactTextString(m) }
  696. func (*Tester) ProtoMessage() {}
  697. func (*Tester) Descriptor() ([]byte, []int) { return fileDescriptorRpc, []int{4} }
  698. type Etcd struct {
  699. Name string `protobuf:"bytes,1,opt,name=Name,proto3" json:"Name,omitempty" yaml:"name"`
  700. DataDir string `protobuf:"bytes,2,opt,name=DataDir,proto3" json:"DataDir,omitempty" yaml:"data-dir"`
  701. WALDir string `protobuf:"bytes,3,opt,name=WALDir,proto3" json:"WALDir,omitempty" yaml:"wal-dir"`
  702. // HeartbeatIntervalMs is the time (in milliseconds) of a heartbeat interval.
  703. // Default value is 100, which is 100ms.
  704. HeartbeatIntervalMs int64 `protobuf:"varint,11,opt,name=HeartbeatIntervalMs,proto3" json:"HeartbeatIntervalMs,omitempty" yaml:"heartbeat-interval"`
  705. // ElectionTimeoutMs is the time (in milliseconds) for an election to timeout.
  706. // Default value is 1000, which is 1s.
  707. ElectionTimeoutMs int64 `protobuf:"varint,12,opt,name=ElectionTimeoutMs,proto3" json:"ElectionTimeoutMs,omitempty" yaml:"election-timeout"`
  708. ListenClientURLs []string `protobuf:"bytes,21,rep,name=ListenClientURLs" json:"ListenClientURLs,omitempty" yaml:"listen-client-urls"`
  709. AdvertiseClientURLs []string `protobuf:"bytes,22,rep,name=AdvertiseClientURLs" json:"AdvertiseClientURLs,omitempty" yaml:"advertise-client-urls"`
  710. ClientAutoTLS bool `protobuf:"varint,23,opt,name=ClientAutoTLS,proto3" json:"ClientAutoTLS,omitempty" yaml:"auto-tls"`
  711. ClientCertAuth bool `protobuf:"varint,24,opt,name=ClientCertAuth,proto3" json:"ClientCertAuth,omitempty" yaml:"client-cert-auth"`
  712. ClientCertFile string `protobuf:"bytes,25,opt,name=ClientCertFile,proto3" json:"ClientCertFile,omitempty" yaml:"cert-file"`
  713. ClientKeyFile string `protobuf:"bytes,26,opt,name=ClientKeyFile,proto3" json:"ClientKeyFile,omitempty" yaml:"key-file"`
  714. ClientTrustedCAFile string `protobuf:"bytes,27,opt,name=ClientTrustedCAFile,proto3" json:"ClientTrustedCAFile,omitempty" yaml:"trusted-ca-file"`
  715. ListenPeerURLs []string `protobuf:"bytes,31,rep,name=ListenPeerURLs" json:"ListenPeerURLs,omitempty" yaml:"listen-peer-urls"`
  716. AdvertisePeerURLs []string `protobuf:"bytes,32,rep,name=AdvertisePeerURLs" json:"AdvertisePeerURLs,omitempty" yaml:"initial-advertise-peer-urls"`
  717. PeerAutoTLS bool `protobuf:"varint,33,opt,name=PeerAutoTLS,proto3" json:"PeerAutoTLS,omitempty" yaml:"peer-auto-tls"`
  718. PeerClientCertAuth bool `protobuf:"varint,34,opt,name=PeerClientCertAuth,proto3" json:"PeerClientCertAuth,omitempty" yaml:"peer-client-cert-auth"`
  719. PeerCertFile string `protobuf:"bytes,35,opt,name=PeerCertFile,proto3" json:"PeerCertFile,omitempty" yaml:"peer-cert-file"`
  720. PeerKeyFile string `protobuf:"bytes,36,opt,name=PeerKeyFile,proto3" json:"PeerKeyFile,omitempty" yaml:"peer-key-file"`
  721. PeerTrustedCAFile string `protobuf:"bytes,37,opt,name=PeerTrustedCAFile,proto3" json:"PeerTrustedCAFile,omitempty" yaml:"peer-trusted-ca-file"`
  722. InitialCluster string `protobuf:"bytes,41,opt,name=InitialCluster,proto3" json:"InitialCluster,omitempty" yaml:"initial-cluster"`
  723. InitialClusterState string `protobuf:"bytes,42,opt,name=InitialClusterState,proto3" json:"InitialClusterState,omitempty" yaml:"initial-cluster-state"`
  724. InitialClusterToken string `protobuf:"bytes,43,opt,name=InitialClusterToken,proto3" json:"InitialClusterToken,omitempty" yaml:"initial-cluster-token"`
  725. SnapshotCount int64 `protobuf:"varint,51,opt,name=SnapshotCount,proto3" json:"SnapshotCount,omitempty" yaml:"snapshot-count"`
  726. QuotaBackendBytes int64 `protobuf:"varint,52,opt,name=QuotaBackendBytes,proto3" json:"QuotaBackendBytes,omitempty" yaml:"quota-backend-bytes"`
  727. PreVote bool `protobuf:"varint,63,opt,name=PreVote,proto3" json:"PreVote,omitempty" yaml:"pre-vote"`
  728. InitialCorruptCheck bool `protobuf:"varint,64,opt,name=InitialCorruptCheck,proto3" json:"InitialCorruptCheck,omitempty" yaml:"initial-corrupt-check"`
  729. }
  730. func (m *Etcd) Reset() { *m = Etcd{} }
  731. func (m *Etcd) String() string { return proto.CompactTextString(m) }
  732. func (*Etcd) ProtoMessage() {}
  733. func (*Etcd) Descriptor() ([]byte, []int) { return fileDescriptorRpc, []int{5} }
  734. func init() {
  735. proto.RegisterType((*Request)(nil), "rpcpb.Request")
  736. proto.RegisterType((*SnapshotInfo)(nil), "rpcpb.SnapshotInfo")
  737. proto.RegisterType((*Response)(nil), "rpcpb.Response")
  738. proto.RegisterType((*Member)(nil), "rpcpb.Member")
  739. proto.RegisterType((*Tester)(nil), "rpcpb.Tester")
  740. proto.RegisterType((*Etcd)(nil), "rpcpb.Etcd")
  741. proto.RegisterEnum("rpcpb.Operation", Operation_name, Operation_value)
  742. proto.RegisterEnum("rpcpb.Case", Case_name, Case_value)
  743. proto.RegisterEnum("rpcpb.Stresser", Stresser_name, Stresser_value)
  744. proto.RegisterEnum("rpcpb.Checker", Checker_name, Checker_value)
  745. }
  746. // Reference imports to suppress errors if they are not otherwise used.
  747. var _ context.Context
  748. var _ grpc.ClientConn
  749. // This is a compile-time assertion to ensure that this generated file
  750. // is compatible with the grpc package it is being compiled against.
  751. const _ = grpc.SupportPackageIsVersion4
  752. // Client API for Transport service
  753. type TransportClient interface {
  754. Transport(ctx context.Context, opts ...grpc.CallOption) (Transport_TransportClient, error)
  755. }
  756. type transportClient struct {
  757. cc *grpc.ClientConn
  758. }
  759. func NewTransportClient(cc *grpc.ClientConn) TransportClient {
  760. return &transportClient{cc}
  761. }
  762. func (c *transportClient) Transport(ctx context.Context, opts ...grpc.CallOption) (Transport_TransportClient, error) {
  763. stream, err := grpc.NewClientStream(ctx, &_Transport_serviceDesc.Streams[0], c.cc, "/rpcpb.Transport/Transport", opts...)
  764. if err != nil {
  765. return nil, err
  766. }
  767. x := &transportTransportClient{stream}
  768. return x, nil
  769. }
  770. type Transport_TransportClient interface {
  771. Send(*Request) error
  772. Recv() (*Response, error)
  773. grpc.ClientStream
  774. }
  775. type transportTransportClient struct {
  776. grpc.ClientStream
  777. }
  778. func (x *transportTransportClient) Send(m *Request) error {
  779. return x.ClientStream.SendMsg(m)
  780. }
  781. func (x *transportTransportClient) Recv() (*Response, error) {
  782. m := new(Response)
  783. if err := x.ClientStream.RecvMsg(m); err != nil {
  784. return nil, err
  785. }
  786. return m, nil
  787. }
  788. // Server API for Transport service
  789. type TransportServer interface {
  790. Transport(Transport_TransportServer) error
  791. }
  792. func RegisterTransportServer(s *grpc.Server, srv TransportServer) {
  793. s.RegisterService(&_Transport_serviceDesc, srv)
  794. }
  795. func _Transport_Transport_Handler(srv interface{}, stream grpc.ServerStream) error {
  796. return srv.(TransportServer).Transport(&transportTransportServer{stream})
  797. }
  798. type Transport_TransportServer interface {
  799. Send(*Response) error
  800. Recv() (*Request, error)
  801. grpc.ServerStream
  802. }
  803. type transportTransportServer struct {
  804. grpc.ServerStream
  805. }
  806. func (x *transportTransportServer) Send(m *Response) error {
  807. return x.ServerStream.SendMsg(m)
  808. }
  809. func (x *transportTransportServer) Recv() (*Request, error) {
  810. m := new(Request)
  811. if err := x.ServerStream.RecvMsg(m); err != nil {
  812. return nil, err
  813. }
  814. return m, nil
  815. }
  816. var _Transport_serviceDesc = grpc.ServiceDesc{
  817. ServiceName: "rpcpb.Transport",
  818. HandlerType: (*TransportServer)(nil),
  819. Methods: []grpc.MethodDesc{},
  820. Streams: []grpc.StreamDesc{
  821. {
  822. StreamName: "Transport",
  823. Handler: _Transport_Transport_Handler,
  824. ServerStreams: true,
  825. ClientStreams: true,
  826. },
  827. },
  828. Metadata: "rpcpb/rpc.proto",
  829. }
  830. func (m *Request) Marshal() (dAtA []byte, err error) {
  831. size := m.Size()
  832. dAtA = make([]byte, size)
  833. n, err := m.MarshalTo(dAtA)
  834. if err != nil {
  835. return nil, err
  836. }
  837. return dAtA[:n], nil
  838. }
  839. func (m *Request) MarshalTo(dAtA []byte) (int, error) {
  840. var i int
  841. _ = i
  842. var l int
  843. _ = l
  844. if m.Operation != 0 {
  845. dAtA[i] = 0x8
  846. i++
  847. i = encodeVarintRpc(dAtA, i, uint64(m.Operation))
  848. }
  849. if m.Member != nil {
  850. dAtA[i] = 0x12
  851. i++
  852. i = encodeVarintRpc(dAtA, i, uint64(m.Member.Size()))
  853. n1, err := m.Member.MarshalTo(dAtA[i:])
  854. if err != nil {
  855. return 0, err
  856. }
  857. i += n1
  858. }
  859. if m.Tester != nil {
  860. dAtA[i] = 0x1a
  861. i++
  862. i = encodeVarintRpc(dAtA, i, uint64(m.Tester.Size()))
  863. n2, err := m.Tester.MarshalTo(dAtA[i:])
  864. if err != nil {
  865. return 0, err
  866. }
  867. i += n2
  868. }
  869. return i, nil
  870. }
  871. func (m *SnapshotInfo) Marshal() (dAtA []byte, err error) {
  872. size := m.Size()
  873. dAtA = make([]byte, size)
  874. n, err := m.MarshalTo(dAtA)
  875. if err != nil {
  876. return nil, err
  877. }
  878. return dAtA[:n], nil
  879. }
  880. func (m *SnapshotInfo) MarshalTo(dAtA []byte) (int, error) {
  881. var i int
  882. _ = i
  883. var l int
  884. _ = l
  885. if len(m.MemberName) > 0 {
  886. dAtA[i] = 0xa
  887. i++
  888. i = encodeVarintRpc(dAtA, i, uint64(len(m.MemberName)))
  889. i += copy(dAtA[i:], m.MemberName)
  890. }
  891. if len(m.MemberClientURLs) > 0 {
  892. for _, s := range m.MemberClientURLs {
  893. dAtA[i] = 0x12
  894. i++
  895. l = len(s)
  896. for l >= 1<<7 {
  897. dAtA[i] = uint8(uint64(l)&0x7f | 0x80)
  898. l >>= 7
  899. i++
  900. }
  901. dAtA[i] = uint8(l)
  902. i++
  903. i += copy(dAtA[i:], s)
  904. }
  905. }
  906. if len(m.SnapshotPath) > 0 {
  907. dAtA[i] = 0x1a
  908. i++
  909. i = encodeVarintRpc(dAtA, i, uint64(len(m.SnapshotPath)))
  910. i += copy(dAtA[i:], m.SnapshotPath)
  911. }
  912. if len(m.SnapshotFileSize) > 0 {
  913. dAtA[i] = 0x22
  914. i++
  915. i = encodeVarintRpc(dAtA, i, uint64(len(m.SnapshotFileSize)))
  916. i += copy(dAtA[i:], m.SnapshotFileSize)
  917. }
  918. if len(m.SnapshotTotalSize) > 0 {
  919. dAtA[i] = 0x2a
  920. i++
  921. i = encodeVarintRpc(dAtA, i, uint64(len(m.SnapshotTotalSize)))
  922. i += copy(dAtA[i:], m.SnapshotTotalSize)
  923. }
  924. if m.SnapshotTotalKey != 0 {
  925. dAtA[i] = 0x30
  926. i++
  927. i = encodeVarintRpc(dAtA, i, uint64(m.SnapshotTotalKey))
  928. }
  929. if m.SnapshotHash != 0 {
  930. dAtA[i] = 0x38
  931. i++
  932. i = encodeVarintRpc(dAtA, i, uint64(m.SnapshotHash))
  933. }
  934. if m.SnapshotRevision != 0 {
  935. dAtA[i] = 0x40
  936. i++
  937. i = encodeVarintRpc(dAtA, i, uint64(m.SnapshotRevision))
  938. }
  939. if len(m.Took) > 0 {
  940. dAtA[i] = 0x4a
  941. i++
  942. i = encodeVarintRpc(dAtA, i, uint64(len(m.Took)))
  943. i += copy(dAtA[i:], m.Took)
  944. }
  945. return i, nil
  946. }
  947. func (m *Response) Marshal() (dAtA []byte, err error) {
  948. size := m.Size()
  949. dAtA = make([]byte, size)
  950. n, err := m.MarshalTo(dAtA)
  951. if err != nil {
  952. return nil, err
  953. }
  954. return dAtA[:n], nil
  955. }
  956. func (m *Response) MarshalTo(dAtA []byte) (int, error) {
  957. var i int
  958. _ = i
  959. var l int
  960. _ = l
  961. if m.Success {
  962. dAtA[i] = 0x8
  963. i++
  964. if m.Success {
  965. dAtA[i] = 1
  966. } else {
  967. dAtA[i] = 0
  968. }
  969. i++
  970. }
  971. if len(m.Status) > 0 {
  972. dAtA[i] = 0x12
  973. i++
  974. i = encodeVarintRpc(dAtA, i, uint64(len(m.Status)))
  975. i += copy(dAtA[i:], m.Status)
  976. }
  977. if m.Member != nil {
  978. dAtA[i] = 0x1a
  979. i++
  980. i = encodeVarintRpc(dAtA, i, uint64(m.Member.Size()))
  981. n3, err := m.Member.MarshalTo(dAtA[i:])
  982. if err != nil {
  983. return 0, err
  984. }
  985. i += n3
  986. }
  987. if m.SnapshotInfo != nil {
  988. dAtA[i] = 0x22
  989. i++
  990. i = encodeVarintRpc(dAtA, i, uint64(m.SnapshotInfo.Size()))
  991. n4, err := m.SnapshotInfo.MarshalTo(dAtA[i:])
  992. if err != nil {
  993. return 0, err
  994. }
  995. i += n4
  996. }
  997. return i, nil
  998. }
  999. func (m *Member) Marshal() (dAtA []byte, err error) {
  1000. size := m.Size()
  1001. dAtA = make([]byte, size)
  1002. n, err := m.MarshalTo(dAtA)
  1003. if err != nil {
  1004. return nil, err
  1005. }
  1006. return dAtA[:n], nil
  1007. }
  1008. func (m *Member) MarshalTo(dAtA []byte) (int, error) {
  1009. var i int
  1010. _ = i
  1011. var l int
  1012. _ = l
  1013. if len(m.EtcdExecPath) > 0 {
  1014. dAtA[i] = 0xa
  1015. i++
  1016. i = encodeVarintRpc(dAtA, i, uint64(len(m.EtcdExecPath)))
  1017. i += copy(dAtA[i:], m.EtcdExecPath)
  1018. }
  1019. if len(m.AgentAddr) > 0 {
  1020. dAtA[i] = 0x5a
  1021. i++
  1022. i = encodeVarintRpc(dAtA, i, uint64(len(m.AgentAddr)))
  1023. i += copy(dAtA[i:], m.AgentAddr)
  1024. }
  1025. if len(m.FailpointHTTPAddr) > 0 {
  1026. dAtA[i] = 0x62
  1027. i++
  1028. i = encodeVarintRpc(dAtA, i, uint64(len(m.FailpointHTTPAddr)))
  1029. i += copy(dAtA[i:], m.FailpointHTTPAddr)
  1030. }
  1031. if len(m.BaseDir) > 0 {
  1032. dAtA[i] = 0xaa
  1033. i++
  1034. dAtA[i] = 0x6
  1035. i++
  1036. i = encodeVarintRpc(dAtA, i, uint64(len(m.BaseDir)))
  1037. i += copy(dAtA[i:], m.BaseDir)
  1038. }
  1039. if len(m.EtcdLogPath) > 0 {
  1040. dAtA[i] = 0xb2
  1041. i++
  1042. dAtA[i] = 0x6
  1043. i++
  1044. i = encodeVarintRpc(dAtA, i, uint64(len(m.EtcdLogPath)))
  1045. i += copy(dAtA[i:], m.EtcdLogPath)
  1046. }
  1047. if m.EtcdClientProxy {
  1048. dAtA[i] = 0xc8
  1049. i++
  1050. dAtA[i] = 0xc
  1051. i++
  1052. if m.EtcdClientProxy {
  1053. dAtA[i] = 1
  1054. } else {
  1055. dAtA[i] = 0
  1056. }
  1057. i++
  1058. }
  1059. if m.EtcdPeerProxy {
  1060. dAtA[i] = 0xd0
  1061. i++
  1062. dAtA[i] = 0xc
  1063. i++
  1064. if m.EtcdPeerProxy {
  1065. dAtA[i] = 1
  1066. } else {
  1067. dAtA[i] = 0
  1068. }
  1069. i++
  1070. }
  1071. if len(m.EtcdClientEndpoint) > 0 {
  1072. dAtA[i] = 0xea
  1073. i++
  1074. dAtA[i] = 0x12
  1075. i++
  1076. i = encodeVarintRpc(dAtA, i, uint64(len(m.EtcdClientEndpoint)))
  1077. i += copy(dAtA[i:], m.EtcdClientEndpoint)
  1078. }
  1079. if m.Etcd != nil {
  1080. dAtA[i] = 0xf2
  1081. i++
  1082. dAtA[i] = 0x12
  1083. i++
  1084. i = encodeVarintRpc(dAtA, i, uint64(m.Etcd.Size()))
  1085. n5, err := m.Etcd.MarshalTo(dAtA[i:])
  1086. if err != nil {
  1087. return 0, err
  1088. }
  1089. i += n5
  1090. }
  1091. if m.EtcdOnSnapshotRestore != nil {
  1092. dAtA[i] = 0xfa
  1093. i++
  1094. dAtA[i] = 0x12
  1095. i++
  1096. i = encodeVarintRpc(dAtA, i, uint64(m.EtcdOnSnapshotRestore.Size()))
  1097. n6, err := m.EtcdOnSnapshotRestore.MarshalTo(dAtA[i:])
  1098. if err != nil {
  1099. return 0, err
  1100. }
  1101. i += n6
  1102. }
  1103. if len(m.ClientCertData) > 0 {
  1104. dAtA[i] = 0x8a
  1105. i++
  1106. dAtA[i] = 0x19
  1107. i++
  1108. i = encodeVarintRpc(dAtA, i, uint64(len(m.ClientCertData)))
  1109. i += copy(dAtA[i:], m.ClientCertData)
  1110. }
  1111. if len(m.ClientCertPath) > 0 {
  1112. dAtA[i] = 0x92
  1113. i++
  1114. dAtA[i] = 0x19
  1115. i++
  1116. i = encodeVarintRpc(dAtA, i, uint64(len(m.ClientCertPath)))
  1117. i += copy(dAtA[i:], m.ClientCertPath)
  1118. }
  1119. if len(m.ClientKeyData) > 0 {
  1120. dAtA[i] = 0x9a
  1121. i++
  1122. dAtA[i] = 0x19
  1123. i++
  1124. i = encodeVarintRpc(dAtA, i, uint64(len(m.ClientKeyData)))
  1125. i += copy(dAtA[i:], m.ClientKeyData)
  1126. }
  1127. if len(m.ClientKeyPath) > 0 {
  1128. dAtA[i] = 0xa2
  1129. i++
  1130. dAtA[i] = 0x19
  1131. i++
  1132. i = encodeVarintRpc(dAtA, i, uint64(len(m.ClientKeyPath)))
  1133. i += copy(dAtA[i:], m.ClientKeyPath)
  1134. }
  1135. if len(m.ClientTrustedCAData) > 0 {
  1136. dAtA[i] = 0xaa
  1137. i++
  1138. dAtA[i] = 0x19
  1139. i++
  1140. i = encodeVarintRpc(dAtA, i, uint64(len(m.ClientTrustedCAData)))
  1141. i += copy(dAtA[i:], m.ClientTrustedCAData)
  1142. }
  1143. if len(m.ClientTrustedCAPath) > 0 {
  1144. dAtA[i] = 0xb2
  1145. i++
  1146. dAtA[i] = 0x19
  1147. i++
  1148. i = encodeVarintRpc(dAtA, i, uint64(len(m.ClientTrustedCAPath)))
  1149. i += copy(dAtA[i:], m.ClientTrustedCAPath)
  1150. }
  1151. if len(m.PeerCertData) > 0 {
  1152. dAtA[i] = 0xaa
  1153. i++
  1154. dAtA[i] = 0x1f
  1155. i++
  1156. i = encodeVarintRpc(dAtA, i, uint64(len(m.PeerCertData)))
  1157. i += copy(dAtA[i:], m.PeerCertData)
  1158. }
  1159. if len(m.PeerCertPath) > 0 {
  1160. dAtA[i] = 0xb2
  1161. i++
  1162. dAtA[i] = 0x1f
  1163. i++
  1164. i = encodeVarintRpc(dAtA, i, uint64(len(m.PeerCertPath)))
  1165. i += copy(dAtA[i:], m.PeerCertPath)
  1166. }
  1167. if len(m.PeerKeyData) > 0 {
  1168. dAtA[i] = 0xba
  1169. i++
  1170. dAtA[i] = 0x1f
  1171. i++
  1172. i = encodeVarintRpc(dAtA, i, uint64(len(m.PeerKeyData)))
  1173. i += copy(dAtA[i:], m.PeerKeyData)
  1174. }
  1175. if len(m.PeerKeyPath) > 0 {
  1176. dAtA[i] = 0xc2
  1177. i++
  1178. dAtA[i] = 0x1f
  1179. i++
  1180. i = encodeVarintRpc(dAtA, i, uint64(len(m.PeerKeyPath)))
  1181. i += copy(dAtA[i:], m.PeerKeyPath)
  1182. }
  1183. if len(m.PeerTrustedCAData) > 0 {
  1184. dAtA[i] = 0xca
  1185. i++
  1186. dAtA[i] = 0x1f
  1187. i++
  1188. i = encodeVarintRpc(dAtA, i, uint64(len(m.PeerTrustedCAData)))
  1189. i += copy(dAtA[i:], m.PeerTrustedCAData)
  1190. }
  1191. if len(m.PeerTrustedCAPath) > 0 {
  1192. dAtA[i] = 0xd2
  1193. i++
  1194. dAtA[i] = 0x1f
  1195. i++
  1196. i = encodeVarintRpc(dAtA, i, uint64(len(m.PeerTrustedCAPath)))
  1197. i += copy(dAtA[i:], m.PeerTrustedCAPath)
  1198. }
  1199. if len(m.SnapshotPath) > 0 {
  1200. dAtA[i] = 0xca
  1201. i++
  1202. dAtA[i] = 0x25
  1203. i++
  1204. i = encodeVarintRpc(dAtA, i, uint64(len(m.SnapshotPath)))
  1205. i += copy(dAtA[i:], m.SnapshotPath)
  1206. }
  1207. if m.SnapshotInfo != nil {
  1208. dAtA[i] = 0xd2
  1209. i++
  1210. dAtA[i] = 0x25
  1211. i++
  1212. i = encodeVarintRpc(dAtA, i, uint64(m.SnapshotInfo.Size()))
  1213. n7, err := m.SnapshotInfo.MarshalTo(dAtA[i:])
  1214. if err != nil {
  1215. return 0, err
  1216. }
  1217. i += n7
  1218. }
  1219. return i, nil
  1220. }
  1221. func (m *Tester) Marshal() (dAtA []byte, err error) {
  1222. size := m.Size()
  1223. dAtA = make([]byte, size)
  1224. n, err := m.MarshalTo(dAtA)
  1225. if err != nil {
  1226. return nil, err
  1227. }
  1228. return dAtA[:n], nil
  1229. }
  1230. func (m *Tester) MarshalTo(dAtA []byte) (int, error) {
  1231. var i int
  1232. _ = i
  1233. var l int
  1234. _ = l
  1235. if len(m.DataDir) > 0 {
  1236. dAtA[i] = 0xa
  1237. i++
  1238. i = encodeVarintRpc(dAtA, i, uint64(len(m.DataDir)))
  1239. i += copy(dAtA[i:], m.DataDir)
  1240. }
  1241. if len(m.Network) > 0 {
  1242. dAtA[i] = 0x12
  1243. i++
  1244. i = encodeVarintRpc(dAtA, i, uint64(len(m.Network)))
  1245. i += copy(dAtA[i:], m.Network)
  1246. }
  1247. if len(m.Addr) > 0 {
  1248. dAtA[i] = 0x1a
  1249. i++
  1250. i = encodeVarintRpc(dAtA, i, uint64(len(m.Addr)))
  1251. i += copy(dAtA[i:], m.Addr)
  1252. }
  1253. if m.DelayLatencyMs != 0 {
  1254. dAtA[i] = 0x58
  1255. i++
  1256. i = encodeVarintRpc(dAtA, i, uint64(m.DelayLatencyMs))
  1257. }
  1258. if m.DelayLatencyMsRv != 0 {
  1259. dAtA[i] = 0x60
  1260. i++
  1261. i = encodeVarintRpc(dAtA, i, uint64(m.DelayLatencyMsRv))
  1262. }
  1263. if m.UpdatedDelayLatencyMs != 0 {
  1264. dAtA[i] = 0x68
  1265. i++
  1266. i = encodeVarintRpc(dAtA, i, uint64(m.UpdatedDelayLatencyMs))
  1267. }
  1268. if m.RoundLimit != 0 {
  1269. dAtA[i] = 0xa8
  1270. i++
  1271. dAtA[i] = 0x1
  1272. i++
  1273. i = encodeVarintRpc(dAtA, i, uint64(m.RoundLimit))
  1274. }
  1275. if m.ExitOnCaseFail {
  1276. dAtA[i] = 0xb0
  1277. i++
  1278. dAtA[i] = 0x1
  1279. i++
  1280. if m.ExitOnCaseFail {
  1281. dAtA[i] = 1
  1282. } else {
  1283. dAtA[i] = 0
  1284. }
  1285. i++
  1286. }
  1287. if m.EnablePprof {
  1288. dAtA[i] = 0xb8
  1289. i++
  1290. dAtA[i] = 0x1
  1291. i++
  1292. if m.EnablePprof {
  1293. dAtA[i] = 1
  1294. } else {
  1295. dAtA[i] = 0
  1296. }
  1297. i++
  1298. }
  1299. if m.CaseDelayMs != 0 {
  1300. dAtA[i] = 0xf8
  1301. i++
  1302. dAtA[i] = 0x1
  1303. i++
  1304. i = encodeVarintRpc(dAtA, i, uint64(m.CaseDelayMs))
  1305. }
  1306. if m.CaseShuffle {
  1307. dAtA[i] = 0x80
  1308. i++
  1309. dAtA[i] = 0x2
  1310. i++
  1311. if m.CaseShuffle {
  1312. dAtA[i] = 1
  1313. } else {
  1314. dAtA[i] = 0
  1315. }
  1316. i++
  1317. }
  1318. if len(m.Cases) > 0 {
  1319. for _, s := range m.Cases {
  1320. dAtA[i] = 0x8a
  1321. i++
  1322. dAtA[i] = 0x2
  1323. i++
  1324. l = len(s)
  1325. for l >= 1<<7 {
  1326. dAtA[i] = uint8(uint64(l)&0x7f | 0x80)
  1327. l >>= 7
  1328. i++
  1329. }
  1330. dAtA[i] = uint8(l)
  1331. i++
  1332. i += copy(dAtA[i:], s)
  1333. }
  1334. }
  1335. if len(m.FailpointCommands) > 0 {
  1336. for _, s := range m.FailpointCommands {
  1337. dAtA[i] = 0x92
  1338. i++
  1339. dAtA[i] = 0x2
  1340. i++
  1341. l = len(s)
  1342. for l >= 1<<7 {
  1343. dAtA[i] = uint8(uint64(l)&0x7f | 0x80)
  1344. l >>= 7
  1345. i++
  1346. }
  1347. dAtA[i] = uint8(l)
  1348. i++
  1349. i += copy(dAtA[i:], s)
  1350. }
  1351. }
  1352. if len(m.RunnerExecPath) > 0 {
  1353. dAtA[i] = 0xca
  1354. i++
  1355. dAtA[i] = 0x2
  1356. i++
  1357. i = encodeVarintRpc(dAtA, i, uint64(len(m.RunnerExecPath)))
  1358. i += copy(dAtA[i:], m.RunnerExecPath)
  1359. }
  1360. if len(m.ExternalExecPath) > 0 {
  1361. dAtA[i] = 0xd2
  1362. i++
  1363. dAtA[i] = 0x2
  1364. i++
  1365. i = encodeVarintRpc(dAtA, i, uint64(len(m.ExternalExecPath)))
  1366. i += copy(dAtA[i:], m.ExternalExecPath)
  1367. }
  1368. if len(m.Stressers) > 0 {
  1369. for _, s := range m.Stressers {
  1370. dAtA[i] = 0xaa
  1371. i++
  1372. dAtA[i] = 0x6
  1373. i++
  1374. l = len(s)
  1375. for l >= 1<<7 {
  1376. dAtA[i] = uint8(uint64(l)&0x7f | 0x80)
  1377. l >>= 7
  1378. i++
  1379. }
  1380. dAtA[i] = uint8(l)
  1381. i++
  1382. i += copy(dAtA[i:], s)
  1383. }
  1384. }
  1385. if len(m.Checkers) > 0 {
  1386. for _, s := range m.Checkers {
  1387. dAtA[i] = 0xb2
  1388. i++
  1389. dAtA[i] = 0x6
  1390. i++
  1391. l = len(s)
  1392. for l >= 1<<7 {
  1393. dAtA[i] = uint8(uint64(l)&0x7f | 0x80)
  1394. l >>= 7
  1395. i++
  1396. }
  1397. dAtA[i] = uint8(l)
  1398. i++
  1399. i += copy(dAtA[i:], s)
  1400. }
  1401. }
  1402. if m.StressKeySize != 0 {
  1403. dAtA[i] = 0xc8
  1404. i++
  1405. dAtA[i] = 0xc
  1406. i++
  1407. i = encodeVarintRpc(dAtA, i, uint64(m.StressKeySize))
  1408. }
  1409. if m.StressKeySizeLarge != 0 {
  1410. dAtA[i] = 0xd0
  1411. i++
  1412. dAtA[i] = 0xc
  1413. i++
  1414. i = encodeVarintRpc(dAtA, i, uint64(m.StressKeySizeLarge))
  1415. }
  1416. if m.StressKeySuffixRange != 0 {
  1417. dAtA[i] = 0xd8
  1418. i++
  1419. dAtA[i] = 0xc
  1420. i++
  1421. i = encodeVarintRpc(dAtA, i, uint64(m.StressKeySuffixRange))
  1422. }
  1423. if m.StressKeySuffixRangeTxn != 0 {
  1424. dAtA[i] = 0xe0
  1425. i++
  1426. dAtA[i] = 0xc
  1427. i++
  1428. i = encodeVarintRpc(dAtA, i, uint64(m.StressKeySuffixRangeTxn))
  1429. }
  1430. if m.StressKeyTxnOps != 0 {
  1431. dAtA[i] = 0xe8
  1432. i++
  1433. dAtA[i] = 0xc
  1434. i++
  1435. i = encodeVarintRpc(dAtA, i, uint64(m.StressKeyTxnOps))
  1436. }
  1437. if m.StressClients != 0 {
  1438. dAtA[i] = 0xe8
  1439. i++
  1440. dAtA[i] = 0x12
  1441. i++
  1442. i = encodeVarintRpc(dAtA, i, uint64(m.StressClients))
  1443. }
  1444. if m.StressQPS != 0 {
  1445. dAtA[i] = 0xf0
  1446. i++
  1447. dAtA[i] = 0x12
  1448. i++
  1449. i = encodeVarintRpc(dAtA, i, uint64(m.StressQPS))
  1450. }
  1451. return i, nil
  1452. }
  1453. func (m *Etcd) Marshal() (dAtA []byte, err error) {
  1454. size := m.Size()
  1455. dAtA = make([]byte, size)
  1456. n, err := m.MarshalTo(dAtA)
  1457. if err != nil {
  1458. return nil, err
  1459. }
  1460. return dAtA[:n], nil
  1461. }
  1462. func (m *Etcd) MarshalTo(dAtA []byte) (int, error) {
  1463. var i int
  1464. _ = i
  1465. var l int
  1466. _ = l
  1467. if len(m.Name) > 0 {
  1468. dAtA[i] = 0xa
  1469. i++
  1470. i = encodeVarintRpc(dAtA, i, uint64(len(m.Name)))
  1471. i += copy(dAtA[i:], m.Name)
  1472. }
  1473. if len(m.DataDir) > 0 {
  1474. dAtA[i] = 0x12
  1475. i++
  1476. i = encodeVarintRpc(dAtA, i, uint64(len(m.DataDir)))
  1477. i += copy(dAtA[i:], m.DataDir)
  1478. }
  1479. if len(m.WALDir) > 0 {
  1480. dAtA[i] = 0x1a
  1481. i++
  1482. i = encodeVarintRpc(dAtA, i, uint64(len(m.WALDir)))
  1483. i += copy(dAtA[i:], m.WALDir)
  1484. }
  1485. if m.HeartbeatIntervalMs != 0 {
  1486. dAtA[i] = 0x58
  1487. i++
  1488. i = encodeVarintRpc(dAtA, i, uint64(m.HeartbeatIntervalMs))
  1489. }
  1490. if m.ElectionTimeoutMs != 0 {
  1491. dAtA[i] = 0x60
  1492. i++
  1493. i = encodeVarintRpc(dAtA, i, uint64(m.ElectionTimeoutMs))
  1494. }
  1495. if len(m.ListenClientURLs) > 0 {
  1496. for _, s := range m.ListenClientURLs {
  1497. dAtA[i] = 0xaa
  1498. i++
  1499. dAtA[i] = 0x1
  1500. i++
  1501. l = len(s)
  1502. for l >= 1<<7 {
  1503. dAtA[i] = uint8(uint64(l)&0x7f | 0x80)
  1504. l >>= 7
  1505. i++
  1506. }
  1507. dAtA[i] = uint8(l)
  1508. i++
  1509. i += copy(dAtA[i:], s)
  1510. }
  1511. }
  1512. if len(m.AdvertiseClientURLs) > 0 {
  1513. for _, s := range m.AdvertiseClientURLs {
  1514. dAtA[i] = 0xb2
  1515. i++
  1516. dAtA[i] = 0x1
  1517. i++
  1518. l = len(s)
  1519. for l >= 1<<7 {
  1520. dAtA[i] = uint8(uint64(l)&0x7f | 0x80)
  1521. l >>= 7
  1522. i++
  1523. }
  1524. dAtA[i] = uint8(l)
  1525. i++
  1526. i += copy(dAtA[i:], s)
  1527. }
  1528. }
  1529. if m.ClientAutoTLS {
  1530. dAtA[i] = 0xb8
  1531. i++
  1532. dAtA[i] = 0x1
  1533. i++
  1534. if m.ClientAutoTLS {
  1535. dAtA[i] = 1
  1536. } else {
  1537. dAtA[i] = 0
  1538. }
  1539. i++
  1540. }
  1541. if m.ClientCertAuth {
  1542. dAtA[i] = 0xc0
  1543. i++
  1544. dAtA[i] = 0x1
  1545. i++
  1546. if m.ClientCertAuth {
  1547. dAtA[i] = 1
  1548. } else {
  1549. dAtA[i] = 0
  1550. }
  1551. i++
  1552. }
  1553. if len(m.ClientCertFile) > 0 {
  1554. dAtA[i] = 0xca
  1555. i++
  1556. dAtA[i] = 0x1
  1557. i++
  1558. i = encodeVarintRpc(dAtA, i, uint64(len(m.ClientCertFile)))
  1559. i += copy(dAtA[i:], m.ClientCertFile)
  1560. }
  1561. if len(m.ClientKeyFile) > 0 {
  1562. dAtA[i] = 0xd2
  1563. i++
  1564. dAtA[i] = 0x1
  1565. i++
  1566. i = encodeVarintRpc(dAtA, i, uint64(len(m.ClientKeyFile)))
  1567. i += copy(dAtA[i:], m.ClientKeyFile)
  1568. }
  1569. if len(m.ClientTrustedCAFile) > 0 {
  1570. dAtA[i] = 0xda
  1571. i++
  1572. dAtA[i] = 0x1
  1573. i++
  1574. i = encodeVarintRpc(dAtA, i, uint64(len(m.ClientTrustedCAFile)))
  1575. i += copy(dAtA[i:], m.ClientTrustedCAFile)
  1576. }
  1577. if len(m.ListenPeerURLs) > 0 {
  1578. for _, s := range m.ListenPeerURLs {
  1579. dAtA[i] = 0xfa
  1580. i++
  1581. dAtA[i] = 0x1
  1582. i++
  1583. l = len(s)
  1584. for l >= 1<<7 {
  1585. dAtA[i] = uint8(uint64(l)&0x7f | 0x80)
  1586. l >>= 7
  1587. i++
  1588. }
  1589. dAtA[i] = uint8(l)
  1590. i++
  1591. i += copy(dAtA[i:], s)
  1592. }
  1593. }
  1594. if len(m.AdvertisePeerURLs) > 0 {
  1595. for _, s := range m.AdvertisePeerURLs {
  1596. dAtA[i] = 0x82
  1597. i++
  1598. dAtA[i] = 0x2
  1599. i++
  1600. l = len(s)
  1601. for l >= 1<<7 {
  1602. dAtA[i] = uint8(uint64(l)&0x7f | 0x80)
  1603. l >>= 7
  1604. i++
  1605. }
  1606. dAtA[i] = uint8(l)
  1607. i++
  1608. i += copy(dAtA[i:], s)
  1609. }
  1610. }
  1611. if m.PeerAutoTLS {
  1612. dAtA[i] = 0x88
  1613. i++
  1614. dAtA[i] = 0x2
  1615. i++
  1616. if m.PeerAutoTLS {
  1617. dAtA[i] = 1
  1618. } else {
  1619. dAtA[i] = 0
  1620. }
  1621. i++
  1622. }
  1623. if m.PeerClientCertAuth {
  1624. dAtA[i] = 0x90
  1625. i++
  1626. dAtA[i] = 0x2
  1627. i++
  1628. if m.PeerClientCertAuth {
  1629. dAtA[i] = 1
  1630. } else {
  1631. dAtA[i] = 0
  1632. }
  1633. i++
  1634. }
  1635. if len(m.PeerCertFile) > 0 {
  1636. dAtA[i] = 0x9a
  1637. i++
  1638. dAtA[i] = 0x2
  1639. i++
  1640. i = encodeVarintRpc(dAtA, i, uint64(len(m.PeerCertFile)))
  1641. i += copy(dAtA[i:], m.PeerCertFile)
  1642. }
  1643. if len(m.PeerKeyFile) > 0 {
  1644. dAtA[i] = 0xa2
  1645. i++
  1646. dAtA[i] = 0x2
  1647. i++
  1648. i = encodeVarintRpc(dAtA, i, uint64(len(m.PeerKeyFile)))
  1649. i += copy(dAtA[i:], m.PeerKeyFile)
  1650. }
  1651. if len(m.PeerTrustedCAFile) > 0 {
  1652. dAtA[i] = 0xaa
  1653. i++
  1654. dAtA[i] = 0x2
  1655. i++
  1656. i = encodeVarintRpc(dAtA, i, uint64(len(m.PeerTrustedCAFile)))
  1657. i += copy(dAtA[i:], m.PeerTrustedCAFile)
  1658. }
  1659. if len(m.InitialCluster) > 0 {
  1660. dAtA[i] = 0xca
  1661. i++
  1662. dAtA[i] = 0x2
  1663. i++
  1664. i = encodeVarintRpc(dAtA, i, uint64(len(m.InitialCluster)))
  1665. i += copy(dAtA[i:], m.InitialCluster)
  1666. }
  1667. if len(m.InitialClusterState) > 0 {
  1668. dAtA[i] = 0xd2
  1669. i++
  1670. dAtA[i] = 0x2
  1671. i++
  1672. i = encodeVarintRpc(dAtA, i, uint64(len(m.InitialClusterState)))
  1673. i += copy(dAtA[i:], m.InitialClusterState)
  1674. }
  1675. if len(m.InitialClusterToken) > 0 {
  1676. dAtA[i] = 0xda
  1677. i++
  1678. dAtA[i] = 0x2
  1679. i++
  1680. i = encodeVarintRpc(dAtA, i, uint64(len(m.InitialClusterToken)))
  1681. i += copy(dAtA[i:], m.InitialClusterToken)
  1682. }
  1683. if m.SnapshotCount != 0 {
  1684. dAtA[i] = 0x98
  1685. i++
  1686. dAtA[i] = 0x3
  1687. i++
  1688. i = encodeVarintRpc(dAtA, i, uint64(m.SnapshotCount))
  1689. }
  1690. if m.QuotaBackendBytes != 0 {
  1691. dAtA[i] = 0xa0
  1692. i++
  1693. dAtA[i] = 0x3
  1694. i++
  1695. i = encodeVarintRpc(dAtA, i, uint64(m.QuotaBackendBytes))
  1696. }
  1697. if m.PreVote {
  1698. dAtA[i] = 0xf8
  1699. i++
  1700. dAtA[i] = 0x3
  1701. i++
  1702. if m.PreVote {
  1703. dAtA[i] = 1
  1704. } else {
  1705. dAtA[i] = 0
  1706. }
  1707. i++
  1708. }
  1709. if m.InitialCorruptCheck {
  1710. dAtA[i] = 0x80
  1711. i++
  1712. dAtA[i] = 0x4
  1713. i++
  1714. if m.InitialCorruptCheck {
  1715. dAtA[i] = 1
  1716. } else {
  1717. dAtA[i] = 0
  1718. }
  1719. i++
  1720. }
  1721. return i, nil
  1722. }
  1723. func encodeVarintRpc(dAtA []byte, offset int, v uint64) int {
  1724. for v >= 1<<7 {
  1725. dAtA[offset] = uint8(v&0x7f | 0x80)
  1726. v >>= 7
  1727. offset++
  1728. }
  1729. dAtA[offset] = uint8(v)
  1730. return offset + 1
  1731. }
  1732. func (m *Request) Size() (n int) {
  1733. var l int
  1734. _ = l
  1735. if m.Operation != 0 {
  1736. n += 1 + sovRpc(uint64(m.Operation))
  1737. }
  1738. if m.Member != nil {
  1739. l = m.Member.Size()
  1740. n += 1 + l + sovRpc(uint64(l))
  1741. }
  1742. if m.Tester != nil {
  1743. l = m.Tester.Size()
  1744. n += 1 + l + sovRpc(uint64(l))
  1745. }
  1746. return n
  1747. }
  1748. func (m *SnapshotInfo) Size() (n int) {
  1749. var l int
  1750. _ = l
  1751. l = len(m.MemberName)
  1752. if l > 0 {
  1753. n += 1 + l + sovRpc(uint64(l))
  1754. }
  1755. if len(m.MemberClientURLs) > 0 {
  1756. for _, s := range m.MemberClientURLs {
  1757. l = len(s)
  1758. n += 1 + l + sovRpc(uint64(l))
  1759. }
  1760. }
  1761. l = len(m.SnapshotPath)
  1762. if l > 0 {
  1763. n += 1 + l + sovRpc(uint64(l))
  1764. }
  1765. l = len(m.SnapshotFileSize)
  1766. if l > 0 {
  1767. n += 1 + l + sovRpc(uint64(l))
  1768. }
  1769. l = len(m.SnapshotTotalSize)
  1770. if l > 0 {
  1771. n += 1 + l + sovRpc(uint64(l))
  1772. }
  1773. if m.SnapshotTotalKey != 0 {
  1774. n += 1 + sovRpc(uint64(m.SnapshotTotalKey))
  1775. }
  1776. if m.SnapshotHash != 0 {
  1777. n += 1 + sovRpc(uint64(m.SnapshotHash))
  1778. }
  1779. if m.SnapshotRevision != 0 {
  1780. n += 1 + sovRpc(uint64(m.SnapshotRevision))
  1781. }
  1782. l = len(m.Took)
  1783. if l > 0 {
  1784. n += 1 + l + sovRpc(uint64(l))
  1785. }
  1786. return n
  1787. }
  1788. func (m *Response) Size() (n int) {
  1789. var l int
  1790. _ = l
  1791. if m.Success {
  1792. n += 2
  1793. }
  1794. l = len(m.Status)
  1795. if l > 0 {
  1796. n += 1 + l + sovRpc(uint64(l))
  1797. }
  1798. if m.Member != nil {
  1799. l = m.Member.Size()
  1800. n += 1 + l + sovRpc(uint64(l))
  1801. }
  1802. if m.SnapshotInfo != nil {
  1803. l = m.SnapshotInfo.Size()
  1804. n += 1 + l + sovRpc(uint64(l))
  1805. }
  1806. return n
  1807. }
  1808. func (m *Member) Size() (n int) {
  1809. var l int
  1810. _ = l
  1811. l = len(m.EtcdExecPath)
  1812. if l > 0 {
  1813. n += 1 + l + sovRpc(uint64(l))
  1814. }
  1815. l = len(m.AgentAddr)
  1816. if l > 0 {
  1817. n += 1 + l + sovRpc(uint64(l))
  1818. }
  1819. l = len(m.FailpointHTTPAddr)
  1820. if l > 0 {
  1821. n += 1 + l + sovRpc(uint64(l))
  1822. }
  1823. l = len(m.BaseDir)
  1824. if l > 0 {
  1825. n += 2 + l + sovRpc(uint64(l))
  1826. }
  1827. l = len(m.EtcdLogPath)
  1828. if l > 0 {
  1829. n += 2 + l + sovRpc(uint64(l))
  1830. }
  1831. if m.EtcdClientProxy {
  1832. n += 3
  1833. }
  1834. if m.EtcdPeerProxy {
  1835. n += 3
  1836. }
  1837. l = len(m.EtcdClientEndpoint)
  1838. if l > 0 {
  1839. n += 2 + l + sovRpc(uint64(l))
  1840. }
  1841. if m.Etcd != nil {
  1842. l = m.Etcd.Size()
  1843. n += 2 + l + sovRpc(uint64(l))
  1844. }
  1845. if m.EtcdOnSnapshotRestore != nil {
  1846. l = m.EtcdOnSnapshotRestore.Size()
  1847. n += 2 + l + sovRpc(uint64(l))
  1848. }
  1849. l = len(m.ClientCertData)
  1850. if l > 0 {
  1851. n += 2 + l + sovRpc(uint64(l))
  1852. }
  1853. l = len(m.ClientCertPath)
  1854. if l > 0 {
  1855. n += 2 + l + sovRpc(uint64(l))
  1856. }
  1857. l = len(m.ClientKeyData)
  1858. if l > 0 {
  1859. n += 2 + l + sovRpc(uint64(l))
  1860. }
  1861. l = len(m.ClientKeyPath)
  1862. if l > 0 {
  1863. n += 2 + l + sovRpc(uint64(l))
  1864. }
  1865. l = len(m.ClientTrustedCAData)
  1866. if l > 0 {
  1867. n += 2 + l + sovRpc(uint64(l))
  1868. }
  1869. l = len(m.ClientTrustedCAPath)
  1870. if l > 0 {
  1871. n += 2 + l + sovRpc(uint64(l))
  1872. }
  1873. l = len(m.PeerCertData)
  1874. if l > 0 {
  1875. n += 2 + l + sovRpc(uint64(l))
  1876. }
  1877. l = len(m.PeerCertPath)
  1878. if l > 0 {
  1879. n += 2 + l + sovRpc(uint64(l))
  1880. }
  1881. l = len(m.PeerKeyData)
  1882. if l > 0 {
  1883. n += 2 + l + sovRpc(uint64(l))
  1884. }
  1885. l = len(m.PeerKeyPath)
  1886. if l > 0 {
  1887. n += 2 + l + sovRpc(uint64(l))
  1888. }
  1889. l = len(m.PeerTrustedCAData)
  1890. if l > 0 {
  1891. n += 2 + l + sovRpc(uint64(l))
  1892. }
  1893. l = len(m.PeerTrustedCAPath)
  1894. if l > 0 {
  1895. n += 2 + l + sovRpc(uint64(l))
  1896. }
  1897. l = len(m.SnapshotPath)
  1898. if l > 0 {
  1899. n += 2 + l + sovRpc(uint64(l))
  1900. }
  1901. if m.SnapshotInfo != nil {
  1902. l = m.SnapshotInfo.Size()
  1903. n += 2 + l + sovRpc(uint64(l))
  1904. }
  1905. return n
  1906. }
  1907. func (m *Tester) Size() (n int) {
  1908. var l int
  1909. _ = l
  1910. l = len(m.DataDir)
  1911. if l > 0 {
  1912. n += 1 + l + sovRpc(uint64(l))
  1913. }
  1914. l = len(m.Network)
  1915. if l > 0 {
  1916. n += 1 + l + sovRpc(uint64(l))
  1917. }
  1918. l = len(m.Addr)
  1919. if l > 0 {
  1920. n += 1 + l + sovRpc(uint64(l))
  1921. }
  1922. if m.DelayLatencyMs != 0 {
  1923. n += 1 + sovRpc(uint64(m.DelayLatencyMs))
  1924. }
  1925. if m.DelayLatencyMsRv != 0 {
  1926. n += 1 + sovRpc(uint64(m.DelayLatencyMsRv))
  1927. }
  1928. if m.UpdatedDelayLatencyMs != 0 {
  1929. n += 1 + sovRpc(uint64(m.UpdatedDelayLatencyMs))
  1930. }
  1931. if m.RoundLimit != 0 {
  1932. n += 2 + sovRpc(uint64(m.RoundLimit))
  1933. }
  1934. if m.ExitOnCaseFail {
  1935. n += 3
  1936. }
  1937. if m.EnablePprof {
  1938. n += 3
  1939. }
  1940. if m.CaseDelayMs != 0 {
  1941. n += 2 + sovRpc(uint64(m.CaseDelayMs))
  1942. }
  1943. if m.CaseShuffle {
  1944. n += 3
  1945. }
  1946. if len(m.Cases) > 0 {
  1947. for _, s := range m.Cases {
  1948. l = len(s)
  1949. n += 2 + l + sovRpc(uint64(l))
  1950. }
  1951. }
  1952. if len(m.FailpointCommands) > 0 {
  1953. for _, s := range m.FailpointCommands {
  1954. l = len(s)
  1955. n += 2 + l + sovRpc(uint64(l))
  1956. }
  1957. }
  1958. l = len(m.RunnerExecPath)
  1959. if l > 0 {
  1960. n += 2 + l + sovRpc(uint64(l))
  1961. }
  1962. l = len(m.ExternalExecPath)
  1963. if l > 0 {
  1964. n += 2 + l + sovRpc(uint64(l))
  1965. }
  1966. if len(m.Stressers) > 0 {
  1967. for _, s := range m.Stressers {
  1968. l = len(s)
  1969. n += 2 + l + sovRpc(uint64(l))
  1970. }
  1971. }
  1972. if len(m.Checkers) > 0 {
  1973. for _, s := range m.Checkers {
  1974. l = len(s)
  1975. n += 2 + l + sovRpc(uint64(l))
  1976. }
  1977. }
  1978. if m.StressKeySize != 0 {
  1979. n += 2 + sovRpc(uint64(m.StressKeySize))
  1980. }
  1981. if m.StressKeySizeLarge != 0 {
  1982. n += 2 + sovRpc(uint64(m.StressKeySizeLarge))
  1983. }
  1984. if m.StressKeySuffixRange != 0 {
  1985. n += 2 + sovRpc(uint64(m.StressKeySuffixRange))
  1986. }
  1987. if m.StressKeySuffixRangeTxn != 0 {
  1988. n += 2 + sovRpc(uint64(m.StressKeySuffixRangeTxn))
  1989. }
  1990. if m.StressKeyTxnOps != 0 {
  1991. n += 2 + sovRpc(uint64(m.StressKeyTxnOps))
  1992. }
  1993. if m.StressClients != 0 {
  1994. n += 2 + sovRpc(uint64(m.StressClients))
  1995. }
  1996. if m.StressQPS != 0 {
  1997. n += 2 + sovRpc(uint64(m.StressQPS))
  1998. }
  1999. return n
  2000. }
  2001. func (m *Etcd) Size() (n int) {
  2002. var l int
  2003. _ = l
  2004. l = len(m.Name)
  2005. if l > 0 {
  2006. n += 1 + l + sovRpc(uint64(l))
  2007. }
  2008. l = len(m.DataDir)
  2009. if l > 0 {
  2010. n += 1 + l + sovRpc(uint64(l))
  2011. }
  2012. l = len(m.WALDir)
  2013. if l > 0 {
  2014. n += 1 + l + sovRpc(uint64(l))
  2015. }
  2016. if m.HeartbeatIntervalMs != 0 {
  2017. n += 1 + sovRpc(uint64(m.HeartbeatIntervalMs))
  2018. }
  2019. if m.ElectionTimeoutMs != 0 {
  2020. n += 1 + sovRpc(uint64(m.ElectionTimeoutMs))
  2021. }
  2022. if len(m.ListenClientURLs) > 0 {
  2023. for _, s := range m.ListenClientURLs {
  2024. l = len(s)
  2025. n += 2 + l + sovRpc(uint64(l))
  2026. }
  2027. }
  2028. if len(m.AdvertiseClientURLs) > 0 {
  2029. for _, s := range m.AdvertiseClientURLs {
  2030. l = len(s)
  2031. n += 2 + l + sovRpc(uint64(l))
  2032. }
  2033. }
  2034. if m.ClientAutoTLS {
  2035. n += 3
  2036. }
  2037. if m.ClientCertAuth {
  2038. n += 3
  2039. }
  2040. l = len(m.ClientCertFile)
  2041. if l > 0 {
  2042. n += 2 + l + sovRpc(uint64(l))
  2043. }
  2044. l = len(m.ClientKeyFile)
  2045. if l > 0 {
  2046. n += 2 + l + sovRpc(uint64(l))
  2047. }
  2048. l = len(m.ClientTrustedCAFile)
  2049. if l > 0 {
  2050. n += 2 + l + sovRpc(uint64(l))
  2051. }
  2052. if len(m.ListenPeerURLs) > 0 {
  2053. for _, s := range m.ListenPeerURLs {
  2054. l = len(s)
  2055. n += 2 + l + sovRpc(uint64(l))
  2056. }
  2057. }
  2058. if len(m.AdvertisePeerURLs) > 0 {
  2059. for _, s := range m.AdvertisePeerURLs {
  2060. l = len(s)
  2061. n += 2 + l + sovRpc(uint64(l))
  2062. }
  2063. }
  2064. if m.PeerAutoTLS {
  2065. n += 3
  2066. }
  2067. if m.PeerClientCertAuth {
  2068. n += 3
  2069. }
  2070. l = len(m.PeerCertFile)
  2071. if l > 0 {
  2072. n += 2 + l + sovRpc(uint64(l))
  2073. }
  2074. l = len(m.PeerKeyFile)
  2075. if l > 0 {
  2076. n += 2 + l + sovRpc(uint64(l))
  2077. }
  2078. l = len(m.PeerTrustedCAFile)
  2079. if l > 0 {
  2080. n += 2 + l + sovRpc(uint64(l))
  2081. }
  2082. l = len(m.InitialCluster)
  2083. if l > 0 {
  2084. n += 2 + l + sovRpc(uint64(l))
  2085. }
  2086. l = len(m.InitialClusterState)
  2087. if l > 0 {
  2088. n += 2 + l + sovRpc(uint64(l))
  2089. }
  2090. l = len(m.InitialClusterToken)
  2091. if l > 0 {
  2092. n += 2 + l + sovRpc(uint64(l))
  2093. }
  2094. if m.SnapshotCount != 0 {
  2095. n += 2 + sovRpc(uint64(m.SnapshotCount))
  2096. }
  2097. if m.QuotaBackendBytes != 0 {
  2098. n += 2 + sovRpc(uint64(m.QuotaBackendBytes))
  2099. }
  2100. if m.PreVote {
  2101. n += 3
  2102. }
  2103. if m.InitialCorruptCheck {
  2104. n += 3
  2105. }
  2106. return n
  2107. }
  2108. func sovRpc(x uint64) (n int) {
  2109. for {
  2110. n++
  2111. x >>= 7
  2112. if x == 0 {
  2113. break
  2114. }
  2115. }
  2116. return n
  2117. }
  2118. func sozRpc(x uint64) (n int) {
  2119. return sovRpc(uint64((x << 1) ^ uint64((int64(x) >> 63))))
  2120. }
  2121. func (m *Request) Unmarshal(dAtA []byte) error {
  2122. l := len(dAtA)
  2123. iNdEx := 0
  2124. for iNdEx < l {
  2125. preIndex := iNdEx
  2126. var wire uint64
  2127. for shift := uint(0); ; shift += 7 {
  2128. if shift >= 64 {
  2129. return ErrIntOverflowRpc
  2130. }
  2131. if iNdEx >= l {
  2132. return io.ErrUnexpectedEOF
  2133. }
  2134. b := dAtA[iNdEx]
  2135. iNdEx++
  2136. wire |= (uint64(b) & 0x7F) << shift
  2137. if b < 0x80 {
  2138. break
  2139. }
  2140. }
  2141. fieldNum := int32(wire >> 3)
  2142. wireType := int(wire & 0x7)
  2143. if wireType == 4 {
  2144. return fmt.Errorf("proto: Request: wiretype end group for non-group")
  2145. }
  2146. if fieldNum <= 0 {
  2147. return fmt.Errorf("proto: Request: illegal tag %d (wire type %d)", fieldNum, wire)
  2148. }
  2149. switch fieldNum {
  2150. case 1:
  2151. if wireType != 0 {
  2152. return fmt.Errorf("proto: wrong wireType = %d for field Operation", wireType)
  2153. }
  2154. m.Operation = 0
  2155. for shift := uint(0); ; shift += 7 {
  2156. if shift >= 64 {
  2157. return ErrIntOverflowRpc
  2158. }
  2159. if iNdEx >= l {
  2160. return io.ErrUnexpectedEOF
  2161. }
  2162. b := dAtA[iNdEx]
  2163. iNdEx++
  2164. m.Operation |= (Operation(b) & 0x7F) << shift
  2165. if b < 0x80 {
  2166. break
  2167. }
  2168. }
  2169. case 2:
  2170. if wireType != 2 {
  2171. return fmt.Errorf("proto: wrong wireType = %d for field Member", wireType)
  2172. }
  2173. var msglen int
  2174. for shift := uint(0); ; shift += 7 {
  2175. if shift >= 64 {
  2176. return ErrIntOverflowRpc
  2177. }
  2178. if iNdEx >= l {
  2179. return io.ErrUnexpectedEOF
  2180. }
  2181. b := dAtA[iNdEx]
  2182. iNdEx++
  2183. msglen |= (int(b) & 0x7F) << shift
  2184. if b < 0x80 {
  2185. break
  2186. }
  2187. }
  2188. if msglen < 0 {
  2189. return ErrInvalidLengthRpc
  2190. }
  2191. postIndex := iNdEx + msglen
  2192. if postIndex > l {
  2193. return io.ErrUnexpectedEOF
  2194. }
  2195. if m.Member == nil {
  2196. m.Member = &Member{}
  2197. }
  2198. if err := m.Member.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  2199. return err
  2200. }
  2201. iNdEx = postIndex
  2202. case 3:
  2203. if wireType != 2 {
  2204. return fmt.Errorf("proto: wrong wireType = %d for field Tester", wireType)
  2205. }
  2206. var msglen int
  2207. for shift := uint(0); ; shift += 7 {
  2208. if shift >= 64 {
  2209. return ErrIntOverflowRpc
  2210. }
  2211. if iNdEx >= l {
  2212. return io.ErrUnexpectedEOF
  2213. }
  2214. b := dAtA[iNdEx]
  2215. iNdEx++
  2216. msglen |= (int(b) & 0x7F) << shift
  2217. if b < 0x80 {
  2218. break
  2219. }
  2220. }
  2221. if msglen < 0 {
  2222. return ErrInvalidLengthRpc
  2223. }
  2224. postIndex := iNdEx + msglen
  2225. if postIndex > l {
  2226. return io.ErrUnexpectedEOF
  2227. }
  2228. if m.Tester == nil {
  2229. m.Tester = &Tester{}
  2230. }
  2231. if err := m.Tester.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  2232. return err
  2233. }
  2234. iNdEx = postIndex
  2235. default:
  2236. iNdEx = preIndex
  2237. skippy, err := skipRpc(dAtA[iNdEx:])
  2238. if err != nil {
  2239. return err
  2240. }
  2241. if skippy < 0 {
  2242. return ErrInvalidLengthRpc
  2243. }
  2244. if (iNdEx + skippy) > l {
  2245. return io.ErrUnexpectedEOF
  2246. }
  2247. iNdEx += skippy
  2248. }
  2249. }
  2250. if iNdEx > l {
  2251. return io.ErrUnexpectedEOF
  2252. }
  2253. return nil
  2254. }
  2255. func (m *SnapshotInfo) Unmarshal(dAtA []byte) error {
  2256. l := len(dAtA)
  2257. iNdEx := 0
  2258. for iNdEx < l {
  2259. preIndex := iNdEx
  2260. var wire uint64
  2261. for shift := uint(0); ; shift += 7 {
  2262. if shift >= 64 {
  2263. return ErrIntOverflowRpc
  2264. }
  2265. if iNdEx >= l {
  2266. return io.ErrUnexpectedEOF
  2267. }
  2268. b := dAtA[iNdEx]
  2269. iNdEx++
  2270. wire |= (uint64(b) & 0x7F) << shift
  2271. if b < 0x80 {
  2272. break
  2273. }
  2274. }
  2275. fieldNum := int32(wire >> 3)
  2276. wireType := int(wire & 0x7)
  2277. if wireType == 4 {
  2278. return fmt.Errorf("proto: SnapshotInfo: wiretype end group for non-group")
  2279. }
  2280. if fieldNum <= 0 {
  2281. return fmt.Errorf("proto: SnapshotInfo: illegal tag %d (wire type %d)", fieldNum, wire)
  2282. }
  2283. switch fieldNum {
  2284. case 1:
  2285. if wireType != 2 {
  2286. return fmt.Errorf("proto: wrong wireType = %d for field MemberName", wireType)
  2287. }
  2288. var stringLen uint64
  2289. for shift := uint(0); ; shift += 7 {
  2290. if shift >= 64 {
  2291. return ErrIntOverflowRpc
  2292. }
  2293. if iNdEx >= l {
  2294. return io.ErrUnexpectedEOF
  2295. }
  2296. b := dAtA[iNdEx]
  2297. iNdEx++
  2298. stringLen |= (uint64(b) & 0x7F) << shift
  2299. if b < 0x80 {
  2300. break
  2301. }
  2302. }
  2303. intStringLen := int(stringLen)
  2304. if intStringLen < 0 {
  2305. return ErrInvalidLengthRpc
  2306. }
  2307. postIndex := iNdEx + intStringLen
  2308. if postIndex > l {
  2309. return io.ErrUnexpectedEOF
  2310. }
  2311. m.MemberName = string(dAtA[iNdEx:postIndex])
  2312. iNdEx = postIndex
  2313. case 2:
  2314. if wireType != 2 {
  2315. return fmt.Errorf("proto: wrong wireType = %d for field MemberClientURLs", wireType)
  2316. }
  2317. var stringLen uint64
  2318. for shift := uint(0); ; shift += 7 {
  2319. if shift >= 64 {
  2320. return ErrIntOverflowRpc
  2321. }
  2322. if iNdEx >= l {
  2323. return io.ErrUnexpectedEOF
  2324. }
  2325. b := dAtA[iNdEx]
  2326. iNdEx++
  2327. stringLen |= (uint64(b) & 0x7F) << shift
  2328. if b < 0x80 {
  2329. break
  2330. }
  2331. }
  2332. intStringLen := int(stringLen)
  2333. if intStringLen < 0 {
  2334. return ErrInvalidLengthRpc
  2335. }
  2336. postIndex := iNdEx + intStringLen
  2337. if postIndex > l {
  2338. return io.ErrUnexpectedEOF
  2339. }
  2340. m.MemberClientURLs = append(m.MemberClientURLs, string(dAtA[iNdEx:postIndex]))
  2341. iNdEx = postIndex
  2342. case 3:
  2343. if wireType != 2 {
  2344. return fmt.Errorf("proto: wrong wireType = %d for field SnapshotPath", wireType)
  2345. }
  2346. var stringLen uint64
  2347. for shift := uint(0); ; shift += 7 {
  2348. if shift >= 64 {
  2349. return ErrIntOverflowRpc
  2350. }
  2351. if iNdEx >= l {
  2352. return io.ErrUnexpectedEOF
  2353. }
  2354. b := dAtA[iNdEx]
  2355. iNdEx++
  2356. stringLen |= (uint64(b) & 0x7F) << shift
  2357. if b < 0x80 {
  2358. break
  2359. }
  2360. }
  2361. intStringLen := int(stringLen)
  2362. if intStringLen < 0 {
  2363. return ErrInvalidLengthRpc
  2364. }
  2365. postIndex := iNdEx + intStringLen
  2366. if postIndex > l {
  2367. return io.ErrUnexpectedEOF
  2368. }
  2369. m.SnapshotPath = string(dAtA[iNdEx:postIndex])
  2370. iNdEx = postIndex
  2371. case 4:
  2372. if wireType != 2 {
  2373. return fmt.Errorf("proto: wrong wireType = %d for field SnapshotFileSize", wireType)
  2374. }
  2375. var stringLen uint64
  2376. for shift := uint(0); ; shift += 7 {
  2377. if shift >= 64 {
  2378. return ErrIntOverflowRpc
  2379. }
  2380. if iNdEx >= l {
  2381. return io.ErrUnexpectedEOF
  2382. }
  2383. b := dAtA[iNdEx]
  2384. iNdEx++
  2385. stringLen |= (uint64(b) & 0x7F) << shift
  2386. if b < 0x80 {
  2387. break
  2388. }
  2389. }
  2390. intStringLen := int(stringLen)
  2391. if intStringLen < 0 {
  2392. return ErrInvalidLengthRpc
  2393. }
  2394. postIndex := iNdEx + intStringLen
  2395. if postIndex > l {
  2396. return io.ErrUnexpectedEOF
  2397. }
  2398. m.SnapshotFileSize = string(dAtA[iNdEx:postIndex])
  2399. iNdEx = postIndex
  2400. case 5:
  2401. if wireType != 2 {
  2402. return fmt.Errorf("proto: wrong wireType = %d for field SnapshotTotalSize", wireType)
  2403. }
  2404. var stringLen uint64
  2405. for shift := uint(0); ; shift += 7 {
  2406. if shift >= 64 {
  2407. return ErrIntOverflowRpc
  2408. }
  2409. if iNdEx >= l {
  2410. return io.ErrUnexpectedEOF
  2411. }
  2412. b := dAtA[iNdEx]
  2413. iNdEx++
  2414. stringLen |= (uint64(b) & 0x7F) << shift
  2415. if b < 0x80 {
  2416. break
  2417. }
  2418. }
  2419. intStringLen := int(stringLen)
  2420. if intStringLen < 0 {
  2421. return ErrInvalidLengthRpc
  2422. }
  2423. postIndex := iNdEx + intStringLen
  2424. if postIndex > l {
  2425. return io.ErrUnexpectedEOF
  2426. }
  2427. m.SnapshotTotalSize = string(dAtA[iNdEx:postIndex])
  2428. iNdEx = postIndex
  2429. case 6:
  2430. if wireType != 0 {
  2431. return fmt.Errorf("proto: wrong wireType = %d for field SnapshotTotalKey", wireType)
  2432. }
  2433. m.SnapshotTotalKey = 0
  2434. for shift := uint(0); ; shift += 7 {
  2435. if shift >= 64 {
  2436. return ErrIntOverflowRpc
  2437. }
  2438. if iNdEx >= l {
  2439. return io.ErrUnexpectedEOF
  2440. }
  2441. b := dAtA[iNdEx]
  2442. iNdEx++
  2443. m.SnapshotTotalKey |= (int64(b) & 0x7F) << shift
  2444. if b < 0x80 {
  2445. break
  2446. }
  2447. }
  2448. case 7:
  2449. if wireType != 0 {
  2450. return fmt.Errorf("proto: wrong wireType = %d for field SnapshotHash", wireType)
  2451. }
  2452. m.SnapshotHash = 0
  2453. for shift := uint(0); ; shift += 7 {
  2454. if shift >= 64 {
  2455. return ErrIntOverflowRpc
  2456. }
  2457. if iNdEx >= l {
  2458. return io.ErrUnexpectedEOF
  2459. }
  2460. b := dAtA[iNdEx]
  2461. iNdEx++
  2462. m.SnapshotHash |= (int64(b) & 0x7F) << shift
  2463. if b < 0x80 {
  2464. break
  2465. }
  2466. }
  2467. case 8:
  2468. if wireType != 0 {
  2469. return fmt.Errorf("proto: wrong wireType = %d for field SnapshotRevision", wireType)
  2470. }
  2471. m.SnapshotRevision = 0
  2472. for shift := uint(0); ; shift += 7 {
  2473. if shift >= 64 {
  2474. return ErrIntOverflowRpc
  2475. }
  2476. if iNdEx >= l {
  2477. return io.ErrUnexpectedEOF
  2478. }
  2479. b := dAtA[iNdEx]
  2480. iNdEx++
  2481. m.SnapshotRevision |= (int64(b) & 0x7F) << shift
  2482. if b < 0x80 {
  2483. break
  2484. }
  2485. }
  2486. case 9:
  2487. if wireType != 2 {
  2488. return fmt.Errorf("proto: wrong wireType = %d for field Took", wireType)
  2489. }
  2490. var stringLen uint64
  2491. for shift := uint(0); ; shift += 7 {
  2492. if shift >= 64 {
  2493. return ErrIntOverflowRpc
  2494. }
  2495. if iNdEx >= l {
  2496. return io.ErrUnexpectedEOF
  2497. }
  2498. b := dAtA[iNdEx]
  2499. iNdEx++
  2500. stringLen |= (uint64(b) & 0x7F) << shift
  2501. if b < 0x80 {
  2502. break
  2503. }
  2504. }
  2505. intStringLen := int(stringLen)
  2506. if intStringLen < 0 {
  2507. return ErrInvalidLengthRpc
  2508. }
  2509. postIndex := iNdEx + intStringLen
  2510. if postIndex > l {
  2511. return io.ErrUnexpectedEOF
  2512. }
  2513. m.Took = string(dAtA[iNdEx:postIndex])
  2514. iNdEx = postIndex
  2515. default:
  2516. iNdEx = preIndex
  2517. skippy, err := skipRpc(dAtA[iNdEx:])
  2518. if err != nil {
  2519. return err
  2520. }
  2521. if skippy < 0 {
  2522. return ErrInvalidLengthRpc
  2523. }
  2524. if (iNdEx + skippy) > l {
  2525. return io.ErrUnexpectedEOF
  2526. }
  2527. iNdEx += skippy
  2528. }
  2529. }
  2530. if iNdEx > l {
  2531. return io.ErrUnexpectedEOF
  2532. }
  2533. return nil
  2534. }
  2535. func (m *Response) Unmarshal(dAtA []byte) error {
  2536. l := len(dAtA)
  2537. iNdEx := 0
  2538. for iNdEx < l {
  2539. preIndex := iNdEx
  2540. var wire uint64
  2541. for shift := uint(0); ; shift += 7 {
  2542. if shift >= 64 {
  2543. return ErrIntOverflowRpc
  2544. }
  2545. if iNdEx >= l {
  2546. return io.ErrUnexpectedEOF
  2547. }
  2548. b := dAtA[iNdEx]
  2549. iNdEx++
  2550. wire |= (uint64(b) & 0x7F) << shift
  2551. if b < 0x80 {
  2552. break
  2553. }
  2554. }
  2555. fieldNum := int32(wire >> 3)
  2556. wireType := int(wire & 0x7)
  2557. if wireType == 4 {
  2558. return fmt.Errorf("proto: Response: wiretype end group for non-group")
  2559. }
  2560. if fieldNum <= 0 {
  2561. return fmt.Errorf("proto: Response: illegal tag %d (wire type %d)", fieldNum, wire)
  2562. }
  2563. switch fieldNum {
  2564. case 1:
  2565. if wireType != 0 {
  2566. return fmt.Errorf("proto: wrong wireType = %d for field Success", wireType)
  2567. }
  2568. var v int
  2569. for shift := uint(0); ; shift += 7 {
  2570. if shift >= 64 {
  2571. return ErrIntOverflowRpc
  2572. }
  2573. if iNdEx >= l {
  2574. return io.ErrUnexpectedEOF
  2575. }
  2576. b := dAtA[iNdEx]
  2577. iNdEx++
  2578. v |= (int(b) & 0x7F) << shift
  2579. if b < 0x80 {
  2580. break
  2581. }
  2582. }
  2583. m.Success = bool(v != 0)
  2584. case 2:
  2585. if wireType != 2 {
  2586. return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType)
  2587. }
  2588. var stringLen uint64
  2589. for shift := uint(0); ; shift += 7 {
  2590. if shift >= 64 {
  2591. return ErrIntOverflowRpc
  2592. }
  2593. if iNdEx >= l {
  2594. return io.ErrUnexpectedEOF
  2595. }
  2596. b := dAtA[iNdEx]
  2597. iNdEx++
  2598. stringLen |= (uint64(b) & 0x7F) << shift
  2599. if b < 0x80 {
  2600. break
  2601. }
  2602. }
  2603. intStringLen := int(stringLen)
  2604. if intStringLen < 0 {
  2605. return ErrInvalidLengthRpc
  2606. }
  2607. postIndex := iNdEx + intStringLen
  2608. if postIndex > l {
  2609. return io.ErrUnexpectedEOF
  2610. }
  2611. m.Status = string(dAtA[iNdEx:postIndex])
  2612. iNdEx = postIndex
  2613. case 3:
  2614. if wireType != 2 {
  2615. return fmt.Errorf("proto: wrong wireType = %d for field Member", wireType)
  2616. }
  2617. var msglen int
  2618. for shift := uint(0); ; shift += 7 {
  2619. if shift >= 64 {
  2620. return ErrIntOverflowRpc
  2621. }
  2622. if iNdEx >= l {
  2623. return io.ErrUnexpectedEOF
  2624. }
  2625. b := dAtA[iNdEx]
  2626. iNdEx++
  2627. msglen |= (int(b) & 0x7F) << shift
  2628. if b < 0x80 {
  2629. break
  2630. }
  2631. }
  2632. if msglen < 0 {
  2633. return ErrInvalidLengthRpc
  2634. }
  2635. postIndex := iNdEx + msglen
  2636. if postIndex > l {
  2637. return io.ErrUnexpectedEOF
  2638. }
  2639. if m.Member == nil {
  2640. m.Member = &Member{}
  2641. }
  2642. if err := m.Member.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  2643. return err
  2644. }
  2645. iNdEx = postIndex
  2646. case 4:
  2647. if wireType != 2 {
  2648. return fmt.Errorf("proto: wrong wireType = %d for field SnapshotInfo", wireType)
  2649. }
  2650. var msglen int
  2651. for shift := uint(0); ; shift += 7 {
  2652. if shift >= 64 {
  2653. return ErrIntOverflowRpc
  2654. }
  2655. if iNdEx >= l {
  2656. return io.ErrUnexpectedEOF
  2657. }
  2658. b := dAtA[iNdEx]
  2659. iNdEx++
  2660. msglen |= (int(b) & 0x7F) << shift
  2661. if b < 0x80 {
  2662. break
  2663. }
  2664. }
  2665. if msglen < 0 {
  2666. return ErrInvalidLengthRpc
  2667. }
  2668. postIndex := iNdEx + msglen
  2669. if postIndex > l {
  2670. return io.ErrUnexpectedEOF
  2671. }
  2672. if m.SnapshotInfo == nil {
  2673. m.SnapshotInfo = &SnapshotInfo{}
  2674. }
  2675. if err := m.SnapshotInfo.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  2676. return err
  2677. }
  2678. iNdEx = postIndex
  2679. default:
  2680. iNdEx = preIndex
  2681. skippy, err := skipRpc(dAtA[iNdEx:])
  2682. if err != nil {
  2683. return err
  2684. }
  2685. if skippy < 0 {
  2686. return ErrInvalidLengthRpc
  2687. }
  2688. if (iNdEx + skippy) > l {
  2689. return io.ErrUnexpectedEOF
  2690. }
  2691. iNdEx += skippy
  2692. }
  2693. }
  2694. if iNdEx > l {
  2695. return io.ErrUnexpectedEOF
  2696. }
  2697. return nil
  2698. }
  2699. func (m *Member) Unmarshal(dAtA []byte) error {
  2700. l := len(dAtA)
  2701. iNdEx := 0
  2702. for iNdEx < l {
  2703. preIndex := iNdEx
  2704. var wire uint64
  2705. for shift := uint(0); ; shift += 7 {
  2706. if shift >= 64 {
  2707. return ErrIntOverflowRpc
  2708. }
  2709. if iNdEx >= l {
  2710. return io.ErrUnexpectedEOF
  2711. }
  2712. b := dAtA[iNdEx]
  2713. iNdEx++
  2714. wire |= (uint64(b) & 0x7F) << shift
  2715. if b < 0x80 {
  2716. break
  2717. }
  2718. }
  2719. fieldNum := int32(wire >> 3)
  2720. wireType := int(wire & 0x7)
  2721. if wireType == 4 {
  2722. return fmt.Errorf("proto: Member: wiretype end group for non-group")
  2723. }
  2724. if fieldNum <= 0 {
  2725. return fmt.Errorf("proto: Member: illegal tag %d (wire type %d)", fieldNum, wire)
  2726. }
  2727. switch fieldNum {
  2728. case 1:
  2729. if wireType != 2 {
  2730. return fmt.Errorf("proto: wrong wireType = %d for field EtcdExecPath", wireType)
  2731. }
  2732. var stringLen uint64
  2733. for shift := uint(0); ; shift += 7 {
  2734. if shift >= 64 {
  2735. return ErrIntOverflowRpc
  2736. }
  2737. if iNdEx >= l {
  2738. return io.ErrUnexpectedEOF
  2739. }
  2740. b := dAtA[iNdEx]
  2741. iNdEx++
  2742. stringLen |= (uint64(b) & 0x7F) << shift
  2743. if b < 0x80 {
  2744. break
  2745. }
  2746. }
  2747. intStringLen := int(stringLen)
  2748. if intStringLen < 0 {
  2749. return ErrInvalidLengthRpc
  2750. }
  2751. postIndex := iNdEx + intStringLen
  2752. if postIndex > l {
  2753. return io.ErrUnexpectedEOF
  2754. }
  2755. m.EtcdExecPath = string(dAtA[iNdEx:postIndex])
  2756. iNdEx = postIndex
  2757. case 11:
  2758. if wireType != 2 {
  2759. return fmt.Errorf("proto: wrong wireType = %d for field AgentAddr", wireType)
  2760. }
  2761. var stringLen uint64
  2762. for shift := uint(0); ; shift += 7 {
  2763. if shift >= 64 {
  2764. return ErrIntOverflowRpc
  2765. }
  2766. if iNdEx >= l {
  2767. return io.ErrUnexpectedEOF
  2768. }
  2769. b := dAtA[iNdEx]
  2770. iNdEx++
  2771. stringLen |= (uint64(b) & 0x7F) << shift
  2772. if b < 0x80 {
  2773. break
  2774. }
  2775. }
  2776. intStringLen := int(stringLen)
  2777. if intStringLen < 0 {
  2778. return ErrInvalidLengthRpc
  2779. }
  2780. postIndex := iNdEx + intStringLen
  2781. if postIndex > l {
  2782. return io.ErrUnexpectedEOF
  2783. }
  2784. m.AgentAddr = string(dAtA[iNdEx:postIndex])
  2785. iNdEx = postIndex
  2786. case 12:
  2787. if wireType != 2 {
  2788. return fmt.Errorf("proto: wrong wireType = %d for field FailpointHTTPAddr", wireType)
  2789. }
  2790. var stringLen uint64
  2791. for shift := uint(0); ; shift += 7 {
  2792. if shift >= 64 {
  2793. return ErrIntOverflowRpc
  2794. }
  2795. if iNdEx >= l {
  2796. return io.ErrUnexpectedEOF
  2797. }
  2798. b := dAtA[iNdEx]
  2799. iNdEx++
  2800. stringLen |= (uint64(b) & 0x7F) << shift
  2801. if b < 0x80 {
  2802. break
  2803. }
  2804. }
  2805. intStringLen := int(stringLen)
  2806. if intStringLen < 0 {
  2807. return ErrInvalidLengthRpc
  2808. }
  2809. postIndex := iNdEx + intStringLen
  2810. if postIndex > l {
  2811. return io.ErrUnexpectedEOF
  2812. }
  2813. m.FailpointHTTPAddr = string(dAtA[iNdEx:postIndex])
  2814. iNdEx = postIndex
  2815. case 101:
  2816. if wireType != 2 {
  2817. return fmt.Errorf("proto: wrong wireType = %d for field BaseDir", wireType)
  2818. }
  2819. var stringLen uint64
  2820. for shift := uint(0); ; shift += 7 {
  2821. if shift >= 64 {
  2822. return ErrIntOverflowRpc
  2823. }
  2824. if iNdEx >= l {
  2825. return io.ErrUnexpectedEOF
  2826. }
  2827. b := dAtA[iNdEx]
  2828. iNdEx++
  2829. stringLen |= (uint64(b) & 0x7F) << shift
  2830. if b < 0x80 {
  2831. break
  2832. }
  2833. }
  2834. intStringLen := int(stringLen)
  2835. if intStringLen < 0 {
  2836. return ErrInvalidLengthRpc
  2837. }
  2838. postIndex := iNdEx + intStringLen
  2839. if postIndex > l {
  2840. return io.ErrUnexpectedEOF
  2841. }
  2842. m.BaseDir = string(dAtA[iNdEx:postIndex])
  2843. iNdEx = postIndex
  2844. case 102:
  2845. if wireType != 2 {
  2846. return fmt.Errorf("proto: wrong wireType = %d for field EtcdLogPath", wireType)
  2847. }
  2848. var stringLen uint64
  2849. for shift := uint(0); ; shift += 7 {
  2850. if shift >= 64 {
  2851. return ErrIntOverflowRpc
  2852. }
  2853. if iNdEx >= l {
  2854. return io.ErrUnexpectedEOF
  2855. }
  2856. b := dAtA[iNdEx]
  2857. iNdEx++
  2858. stringLen |= (uint64(b) & 0x7F) << shift
  2859. if b < 0x80 {
  2860. break
  2861. }
  2862. }
  2863. intStringLen := int(stringLen)
  2864. if intStringLen < 0 {
  2865. return ErrInvalidLengthRpc
  2866. }
  2867. postIndex := iNdEx + intStringLen
  2868. if postIndex > l {
  2869. return io.ErrUnexpectedEOF
  2870. }
  2871. m.EtcdLogPath = string(dAtA[iNdEx:postIndex])
  2872. iNdEx = postIndex
  2873. case 201:
  2874. if wireType != 0 {
  2875. return fmt.Errorf("proto: wrong wireType = %d for field EtcdClientProxy", wireType)
  2876. }
  2877. var v int
  2878. for shift := uint(0); ; shift += 7 {
  2879. if shift >= 64 {
  2880. return ErrIntOverflowRpc
  2881. }
  2882. if iNdEx >= l {
  2883. return io.ErrUnexpectedEOF
  2884. }
  2885. b := dAtA[iNdEx]
  2886. iNdEx++
  2887. v |= (int(b) & 0x7F) << shift
  2888. if b < 0x80 {
  2889. break
  2890. }
  2891. }
  2892. m.EtcdClientProxy = bool(v != 0)
  2893. case 202:
  2894. if wireType != 0 {
  2895. return fmt.Errorf("proto: wrong wireType = %d for field EtcdPeerProxy", wireType)
  2896. }
  2897. var v int
  2898. for shift := uint(0); ; shift += 7 {
  2899. if shift >= 64 {
  2900. return ErrIntOverflowRpc
  2901. }
  2902. if iNdEx >= l {
  2903. return io.ErrUnexpectedEOF
  2904. }
  2905. b := dAtA[iNdEx]
  2906. iNdEx++
  2907. v |= (int(b) & 0x7F) << shift
  2908. if b < 0x80 {
  2909. break
  2910. }
  2911. }
  2912. m.EtcdPeerProxy = bool(v != 0)
  2913. case 301:
  2914. if wireType != 2 {
  2915. return fmt.Errorf("proto: wrong wireType = %d for field EtcdClientEndpoint", wireType)
  2916. }
  2917. var stringLen uint64
  2918. for shift := uint(0); ; shift += 7 {
  2919. if shift >= 64 {
  2920. return ErrIntOverflowRpc
  2921. }
  2922. if iNdEx >= l {
  2923. return io.ErrUnexpectedEOF
  2924. }
  2925. b := dAtA[iNdEx]
  2926. iNdEx++
  2927. stringLen |= (uint64(b) & 0x7F) << shift
  2928. if b < 0x80 {
  2929. break
  2930. }
  2931. }
  2932. intStringLen := int(stringLen)
  2933. if intStringLen < 0 {
  2934. return ErrInvalidLengthRpc
  2935. }
  2936. postIndex := iNdEx + intStringLen
  2937. if postIndex > l {
  2938. return io.ErrUnexpectedEOF
  2939. }
  2940. m.EtcdClientEndpoint = string(dAtA[iNdEx:postIndex])
  2941. iNdEx = postIndex
  2942. case 302:
  2943. if wireType != 2 {
  2944. return fmt.Errorf("proto: wrong wireType = %d for field Etcd", wireType)
  2945. }
  2946. var msglen int
  2947. for shift := uint(0); ; shift += 7 {
  2948. if shift >= 64 {
  2949. return ErrIntOverflowRpc
  2950. }
  2951. if iNdEx >= l {
  2952. return io.ErrUnexpectedEOF
  2953. }
  2954. b := dAtA[iNdEx]
  2955. iNdEx++
  2956. msglen |= (int(b) & 0x7F) << shift
  2957. if b < 0x80 {
  2958. break
  2959. }
  2960. }
  2961. if msglen < 0 {
  2962. return ErrInvalidLengthRpc
  2963. }
  2964. postIndex := iNdEx + msglen
  2965. if postIndex > l {
  2966. return io.ErrUnexpectedEOF
  2967. }
  2968. if m.Etcd == nil {
  2969. m.Etcd = &Etcd{}
  2970. }
  2971. if err := m.Etcd.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  2972. return err
  2973. }
  2974. iNdEx = postIndex
  2975. case 303:
  2976. if wireType != 2 {
  2977. return fmt.Errorf("proto: wrong wireType = %d for field EtcdOnSnapshotRestore", wireType)
  2978. }
  2979. var msglen int
  2980. for shift := uint(0); ; shift += 7 {
  2981. if shift >= 64 {
  2982. return ErrIntOverflowRpc
  2983. }
  2984. if iNdEx >= l {
  2985. return io.ErrUnexpectedEOF
  2986. }
  2987. b := dAtA[iNdEx]
  2988. iNdEx++
  2989. msglen |= (int(b) & 0x7F) << shift
  2990. if b < 0x80 {
  2991. break
  2992. }
  2993. }
  2994. if msglen < 0 {
  2995. return ErrInvalidLengthRpc
  2996. }
  2997. postIndex := iNdEx + msglen
  2998. if postIndex > l {
  2999. return io.ErrUnexpectedEOF
  3000. }
  3001. if m.EtcdOnSnapshotRestore == nil {
  3002. m.EtcdOnSnapshotRestore = &Etcd{}
  3003. }
  3004. if err := m.EtcdOnSnapshotRestore.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  3005. return err
  3006. }
  3007. iNdEx = postIndex
  3008. case 401:
  3009. if wireType != 2 {
  3010. return fmt.Errorf("proto: wrong wireType = %d for field ClientCertData", wireType)
  3011. }
  3012. var stringLen uint64
  3013. for shift := uint(0); ; shift += 7 {
  3014. if shift >= 64 {
  3015. return ErrIntOverflowRpc
  3016. }
  3017. if iNdEx >= l {
  3018. return io.ErrUnexpectedEOF
  3019. }
  3020. b := dAtA[iNdEx]
  3021. iNdEx++
  3022. stringLen |= (uint64(b) & 0x7F) << shift
  3023. if b < 0x80 {
  3024. break
  3025. }
  3026. }
  3027. intStringLen := int(stringLen)
  3028. if intStringLen < 0 {
  3029. return ErrInvalidLengthRpc
  3030. }
  3031. postIndex := iNdEx + intStringLen
  3032. if postIndex > l {
  3033. return io.ErrUnexpectedEOF
  3034. }
  3035. m.ClientCertData = string(dAtA[iNdEx:postIndex])
  3036. iNdEx = postIndex
  3037. case 402:
  3038. if wireType != 2 {
  3039. return fmt.Errorf("proto: wrong wireType = %d for field ClientCertPath", wireType)
  3040. }
  3041. var stringLen uint64
  3042. for shift := uint(0); ; shift += 7 {
  3043. if shift >= 64 {
  3044. return ErrIntOverflowRpc
  3045. }
  3046. if iNdEx >= l {
  3047. return io.ErrUnexpectedEOF
  3048. }
  3049. b := dAtA[iNdEx]
  3050. iNdEx++
  3051. stringLen |= (uint64(b) & 0x7F) << shift
  3052. if b < 0x80 {
  3053. break
  3054. }
  3055. }
  3056. intStringLen := int(stringLen)
  3057. if intStringLen < 0 {
  3058. return ErrInvalidLengthRpc
  3059. }
  3060. postIndex := iNdEx + intStringLen
  3061. if postIndex > l {
  3062. return io.ErrUnexpectedEOF
  3063. }
  3064. m.ClientCertPath = string(dAtA[iNdEx:postIndex])
  3065. iNdEx = postIndex
  3066. case 403:
  3067. if wireType != 2 {
  3068. return fmt.Errorf("proto: wrong wireType = %d for field ClientKeyData", wireType)
  3069. }
  3070. var stringLen uint64
  3071. for shift := uint(0); ; shift += 7 {
  3072. if shift >= 64 {
  3073. return ErrIntOverflowRpc
  3074. }
  3075. if iNdEx >= l {
  3076. return io.ErrUnexpectedEOF
  3077. }
  3078. b := dAtA[iNdEx]
  3079. iNdEx++
  3080. stringLen |= (uint64(b) & 0x7F) << shift
  3081. if b < 0x80 {
  3082. break
  3083. }
  3084. }
  3085. intStringLen := int(stringLen)
  3086. if intStringLen < 0 {
  3087. return ErrInvalidLengthRpc
  3088. }
  3089. postIndex := iNdEx + intStringLen
  3090. if postIndex > l {
  3091. return io.ErrUnexpectedEOF
  3092. }
  3093. m.ClientKeyData = string(dAtA[iNdEx:postIndex])
  3094. iNdEx = postIndex
  3095. case 404:
  3096. if wireType != 2 {
  3097. return fmt.Errorf("proto: wrong wireType = %d for field ClientKeyPath", wireType)
  3098. }
  3099. var stringLen uint64
  3100. for shift := uint(0); ; shift += 7 {
  3101. if shift >= 64 {
  3102. return ErrIntOverflowRpc
  3103. }
  3104. if iNdEx >= l {
  3105. return io.ErrUnexpectedEOF
  3106. }
  3107. b := dAtA[iNdEx]
  3108. iNdEx++
  3109. stringLen |= (uint64(b) & 0x7F) << shift
  3110. if b < 0x80 {
  3111. break
  3112. }
  3113. }
  3114. intStringLen := int(stringLen)
  3115. if intStringLen < 0 {
  3116. return ErrInvalidLengthRpc
  3117. }
  3118. postIndex := iNdEx + intStringLen
  3119. if postIndex > l {
  3120. return io.ErrUnexpectedEOF
  3121. }
  3122. m.ClientKeyPath = string(dAtA[iNdEx:postIndex])
  3123. iNdEx = postIndex
  3124. case 405:
  3125. if wireType != 2 {
  3126. return fmt.Errorf("proto: wrong wireType = %d for field ClientTrustedCAData", wireType)
  3127. }
  3128. var stringLen uint64
  3129. for shift := uint(0); ; shift += 7 {
  3130. if shift >= 64 {
  3131. return ErrIntOverflowRpc
  3132. }
  3133. if iNdEx >= l {
  3134. return io.ErrUnexpectedEOF
  3135. }
  3136. b := dAtA[iNdEx]
  3137. iNdEx++
  3138. stringLen |= (uint64(b) & 0x7F) << shift
  3139. if b < 0x80 {
  3140. break
  3141. }
  3142. }
  3143. intStringLen := int(stringLen)
  3144. if intStringLen < 0 {
  3145. return ErrInvalidLengthRpc
  3146. }
  3147. postIndex := iNdEx + intStringLen
  3148. if postIndex > l {
  3149. return io.ErrUnexpectedEOF
  3150. }
  3151. m.ClientTrustedCAData = string(dAtA[iNdEx:postIndex])
  3152. iNdEx = postIndex
  3153. case 406:
  3154. if wireType != 2 {
  3155. return fmt.Errorf("proto: wrong wireType = %d for field ClientTrustedCAPath", wireType)
  3156. }
  3157. var stringLen uint64
  3158. for shift := uint(0); ; shift += 7 {
  3159. if shift >= 64 {
  3160. return ErrIntOverflowRpc
  3161. }
  3162. if iNdEx >= l {
  3163. return io.ErrUnexpectedEOF
  3164. }
  3165. b := dAtA[iNdEx]
  3166. iNdEx++
  3167. stringLen |= (uint64(b) & 0x7F) << shift
  3168. if b < 0x80 {
  3169. break
  3170. }
  3171. }
  3172. intStringLen := int(stringLen)
  3173. if intStringLen < 0 {
  3174. return ErrInvalidLengthRpc
  3175. }
  3176. postIndex := iNdEx + intStringLen
  3177. if postIndex > l {
  3178. return io.ErrUnexpectedEOF
  3179. }
  3180. m.ClientTrustedCAPath = string(dAtA[iNdEx:postIndex])
  3181. iNdEx = postIndex
  3182. case 501:
  3183. if wireType != 2 {
  3184. return fmt.Errorf("proto: wrong wireType = %d for field PeerCertData", wireType)
  3185. }
  3186. var stringLen uint64
  3187. for shift := uint(0); ; shift += 7 {
  3188. if shift >= 64 {
  3189. return ErrIntOverflowRpc
  3190. }
  3191. if iNdEx >= l {
  3192. return io.ErrUnexpectedEOF
  3193. }
  3194. b := dAtA[iNdEx]
  3195. iNdEx++
  3196. stringLen |= (uint64(b) & 0x7F) << shift
  3197. if b < 0x80 {
  3198. break
  3199. }
  3200. }
  3201. intStringLen := int(stringLen)
  3202. if intStringLen < 0 {
  3203. return ErrInvalidLengthRpc
  3204. }
  3205. postIndex := iNdEx + intStringLen
  3206. if postIndex > l {
  3207. return io.ErrUnexpectedEOF
  3208. }
  3209. m.PeerCertData = string(dAtA[iNdEx:postIndex])
  3210. iNdEx = postIndex
  3211. case 502:
  3212. if wireType != 2 {
  3213. return fmt.Errorf("proto: wrong wireType = %d for field PeerCertPath", wireType)
  3214. }
  3215. var stringLen uint64
  3216. for shift := uint(0); ; shift += 7 {
  3217. if shift >= 64 {
  3218. return ErrIntOverflowRpc
  3219. }
  3220. if iNdEx >= l {
  3221. return io.ErrUnexpectedEOF
  3222. }
  3223. b := dAtA[iNdEx]
  3224. iNdEx++
  3225. stringLen |= (uint64(b) & 0x7F) << shift
  3226. if b < 0x80 {
  3227. break
  3228. }
  3229. }
  3230. intStringLen := int(stringLen)
  3231. if intStringLen < 0 {
  3232. return ErrInvalidLengthRpc
  3233. }
  3234. postIndex := iNdEx + intStringLen
  3235. if postIndex > l {
  3236. return io.ErrUnexpectedEOF
  3237. }
  3238. m.PeerCertPath = string(dAtA[iNdEx:postIndex])
  3239. iNdEx = postIndex
  3240. case 503:
  3241. if wireType != 2 {
  3242. return fmt.Errorf("proto: wrong wireType = %d for field PeerKeyData", wireType)
  3243. }
  3244. var stringLen uint64
  3245. for shift := uint(0); ; shift += 7 {
  3246. if shift >= 64 {
  3247. return ErrIntOverflowRpc
  3248. }
  3249. if iNdEx >= l {
  3250. return io.ErrUnexpectedEOF
  3251. }
  3252. b := dAtA[iNdEx]
  3253. iNdEx++
  3254. stringLen |= (uint64(b) & 0x7F) << shift
  3255. if b < 0x80 {
  3256. break
  3257. }
  3258. }
  3259. intStringLen := int(stringLen)
  3260. if intStringLen < 0 {
  3261. return ErrInvalidLengthRpc
  3262. }
  3263. postIndex := iNdEx + intStringLen
  3264. if postIndex > l {
  3265. return io.ErrUnexpectedEOF
  3266. }
  3267. m.PeerKeyData = string(dAtA[iNdEx:postIndex])
  3268. iNdEx = postIndex
  3269. case 504:
  3270. if wireType != 2 {
  3271. return fmt.Errorf("proto: wrong wireType = %d for field PeerKeyPath", wireType)
  3272. }
  3273. var stringLen uint64
  3274. for shift := uint(0); ; shift += 7 {
  3275. if shift >= 64 {
  3276. return ErrIntOverflowRpc
  3277. }
  3278. if iNdEx >= l {
  3279. return io.ErrUnexpectedEOF
  3280. }
  3281. b := dAtA[iNdEx]
  3282. iNdEx++
  3283. stringLen |= (uint64(b) & 0x7F) << shift
  3284. if b < 0x80 {
  3285. break
  3286. }
  3287. }
  3288. intStringLen := int(stringLen)
  3289. if intStringLen < 0 {
  3290. return ErrInvalidLengthRpc
  3291. }
  3292. postIndex := iNdEx + intStringLen
  3293. if postIndex > l {
  3294. return io.ErrUnexpectedEOF
  3295. }
  3296. m.PeerKeyPath = string(dAtA[iNdEx:postIndex])
  3297. iNdEx = postIndex
  3298. case 505:
  3299. if wireType != 2 {
  3300. return fmt.Errorf("proto: wrong wireType = %d for field PeerTrustedCAData", wireType)
  3301. }
  3302. var stringLen uint64
  3303. for shift := uint(0); ; shift += 7 {
  3304. if shift >= 64 {
  3305. return ErrIntOverflowRpc
  3306. }
  3307. if iNdEx >= l {
  3308. return io.ErrUnexpectedEOF
  3309. }
  3310. b := dAtA[iNdEx]
  3311. iNdEx++
  3312. stringLen |= (uint64(b) & 0x7F) << shift
  3313. if b < 0x80 {
  3314. break
  3315. }
  3316. }
  3317. intStringLen := int(stringLen)
  3318. if intStringLen < 0 {
  3319. return ErrInvalidLengthRpc
  3320. }
  3321. postIndex := iNdEx + intStringLen
  3322. if postIndex > l {
  3323. return io.ErrUnexpectedEOF
  3324. }
  3325. m.PeerTrustedCAData = string(dAtA[iNdEx:postIndex])
  3326. iNdEx = postIndex
  3327. case 506:
  3328. if wireType != 2 {
  3329. return fmt.Errorf("proto: wrong wireType = %d for field PeerTrustedCAPath", wireType)
  3330. }
  3331. var stringLen uint64
  3332. for shift := uint(0); ; shift += 7 {
  3333. if shift >= 64 {
  3334. return ErrIntOverflowRpc
  3335. }
  3336. if iNdEx >= l {
  3337. return io.ErrUnexpectedEOF
  3338. }
  3339. b := dAtA[iNdEx]
  3340. iNdEx++
  3341. stringLen |= (uint64(b) & 0x7F) << shift
  3342. if b < 0x80 {
  3343. break
  3344. }
  3345. }
  3346. intStringLen := int(stringLen)
  3347. if intStringLen < 0 {
  3348. return ErrInvalidLengthRpc
  3349. }
  3350. postIndex := iNdEx + intStringLen
  3351. if postIndex > l {
  3352. return io.ErrUnexpectedEOF
  3353. }
  3354. m.PeerTrustedCAPath = string(dAtA[iNdEx:postIndex])
  3355. iNdEx = postIndex
  3356. case 601:
  3357. if wireType != 2 {
  3358. return fmt.Errorf("proto: wrong wireType = %d for field SnapshotPath", wireType)
  3359. }
  3360. var stringLen uint64
  3361. for shift := uint(0); ; shift += 7 {
  3362. if shift >= 64 {
  3363. return ErrIntOverflowRpc
  3364. }
  3365. if iNdEx >= l {
  3366. return io.ErrUnexpectedEOF
  3367. }
  3368. b := dAtA[iNdEx]
  3369. iNdEx++
  3370. stringLen |= (uint64(b) & 0x7F) << shift
  3371. if b < 0x80 {
  3372. break
  3373. }
  3374. }
  3375. intStringLen := int(stringLen)
  3376. if intStringLen < 0 {
  3377. return ErrInvalidLengthRpc
  3378. }
  3379. postIndex := iNdEx + intStringLen
  3380. if postIndex > l {
  3381. return io.ErrUnexpectedEOF
  3382. }
  3383. m.SnapshotPath = string(dAtA[iNdEx:postIndex])
  3384. iNdEx = postIndex
  3385. case 602:
  3386. if wireType != 2 {
  3387. return fmt.Errorf("proto: wrong wireType = %d for field SnapshotInfo", wireType)
  3388. }
  3389. var msglen int
  3390. for shift := uint(0); ; shift += 7 {
  3391. if shift >= 64 {
  3392. return ErrIntOverflowRpc
  3393. }
  3394. if iNdEx >= l {
  3395. return io.ErrUnexpectedEOF
  3396. }
  3397. b := dAtA[iNdEx]
  3398. iNdEx++
  3399. msglen |= (int(b) & 0x7F) << shift
  3400. if b < 0x80 {
  3401. break
  3402. }
  3403. }
  3404. if msglen < 0 {
  3405. return ErrInvalidLengthRpc
  3406. }
  3407. postIndex := iNdEx + msglen
  3408. if postIndex > l {
  3409. return io.ErrUnexpectedEOF
  3410. }
  3411. if m.SnapshotInfo == nil {
  3412. m.SnapshotInfo = &SnapshotInfo{}
  3413. }
  3414. if err := m.SnapshotInfo.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  3415. return err
  3416. }
  3417. iNdEx = postIndex
  3418. default:
  3419. iNdEx = preIndex
  3420. skippy, err := skipRpc(dAtA[iNdEx:])
  3421. if err != nil {
  3422. return err
  3423. }
  3424. if skippy < 0 {
  3425. return ErrInvalidLengthRpc
  3426. }
  3427. if (iNdEx + skippy) > l {
  3428. return io.ErrUnexpectedEOF
  3429. }
  3430. iNdEx += skippy
  3431. }
  3432. }
  3433. if iNdEx > l {
  3434. return io.ErrUnexpectedEOF
  3435. }
  3436. return nil
  3437. }
  3438. func (m *Tester) Unmarshal(dAtA []byte) error {
  3439. l := len(dAtA)
  3440. iNdEx := 0
  3441. for iNdEx < l {
  3442. preIndex := iNdEx
  3443. var wire uint64
  3444. for shift := uint(0); ; shift += 7 {
  3445. if shift >= 64 {
  3446. return ErrIntOverflowRpc
  3447. }
  3448. if iNdEx >= l {
  3449. return io.ErrUnexpectedEOF
  3450. }
  3451. b := dAtA[iNdEx]
  3452. iNdEx++
  3453. wire |= (uint64(b) & 0x7F) << shift
  3454. if b < 0x80 {
  3455. break
  3456. }
  3457. }
  3458. fieldNum := int32(wire >> 3)
  3459. wireType := int(wire & 0x7)
  3460. if wireType == 4 {
  3461. return fmt.Errorf("proto: Tester: wiretype end group for non-group")
  3462. }
  3463. if fieldNum <= 0 {
  3464. return fmt.Errorf("proto: Tester: illegal tag %d (wire type %d)", fieldNum, wire)
  3465. }
  3466. switch fieldNum {
  3467. case 1:
  3468. if wireType != 2 {
  3469. return fmt.Errorf("proto: wrong wireType = %d for field DataDir", wireType)
  3470. }
  3471. var stringLen uint64
  3472. for shift := uint(0); ; shift += 7 {
  3473. if shift >= 64 {
  3474. return ErrIntOverflowRpc
  3475. }
  3476. if iNdEx >= l {
  3477. return io.ErrUnexpectedEOF
  3478. }
  3479. b := dAtA[iNdEx]
  3480. iNdEx++
  3481. stringLen |= (uint64(b) & 0x7F) << shift
  3482. if b < 0x80 {
  3483. break
  3484. }
  3485. }
  3486. intStringLen := int(stringLen)
  3487. if intStringLen < 0 {
  3488. return ErrInvalidLengthRpc
  3489. }
  3490. postIndex := iNdEx + intStringLen
  3491. if postIndex > l {
  3492. return io.ErrUnexpectedEOF
  3493. }
  3494. m.DataDir = string(dAtA[iNdEx:postIndex])
  3495. iNdEx = postIndex
  3496. case 2:
  3497. if wireType != 2 {
  3498. return fmt.Errorf("proto: wrong wireType = %d for field Network", wireType)
  3499. }
  3500. var stringLen uint64
  3501. for shift := uint(0); ; shift += 7 {
  3502. if shift >= 64 {
  3503. return ErrIntOverflowRpc
  3504. }
  3505. if iNdEx >= l {
  3506. return io.ErrUnexpectedEOF
  3507. }
  3508. b := dAtA[iNdEx]
  3509. iNdEx++
  3510. stringLen |= (uint64(b) & 0x7F) << shift
  3511. if b < 0x80 {
  3512. break
  3513. }
  3514. }
  3515. intStringLen := int(stringLen)
  3516. if intStringLen < 0 {
  3517. return ErrInvalidLengthRpc
  3518. }
  3519. postIndex := iNdEx + intStringLen
  3520. if postIndex > l {
  3521. return io.ErrUnexpectedEOF
  3522. }
  3523. m.Network = string(dAtA[iNdEx:postIndex])
  3524. iNdEx = postIndex
  3525. case 3:
  3526. if wireType != 2 {
  3527. return fmt.Errorf("proto: wrong wireType = %d for field Addr", wireType)
  3528. }
  3529. var stringLen uint64
  3530. for shift := uint(0); ; shift += 7 {
  3531. if shift >= 64 {
  3532. return ErrIntOverflowRpc
  3533. }
  3534. if iNdEx >= l {
  3535. return io.ErrUnexpectedEOF
  3536. }
  3537. b := dAtA[iNdEx]
  3538. iNdEx++
  3539. stringLen |= (uint64(b) & 0x7F) << shift
  3540. if b < 0x80 {
  3541. break
  3542. }
  3543. }
  3544. intStringLen := int(stringLen)
  3545. if intStringLen < 0 {
  3546. return ErrInvalidLengthRpc
  3547. }
  3548. postIndex := iNdEx + intStringLen
  3549. if postIndex > l {
  3550. return io.ErrUnexpectedEOF
  3551. }
  3552. m.Addr = string(dAtA[iNdEx:postIndex])
  3553. iNdEx = postIndex
  3554. case 11:
  3555. if wireType != 0 {
  3556. return fmt.Errorf("proto: wrong wireType = %d for field DelayLatencyMs", wireType)
  3557. }
  3558. m.DelayLatencyMs = 0
  3559. for shift := uint(0); ; shift += 7 {
  3560. if shift >= 64 {
  3561. return ErrIntOverflowRpc
  3562. }
  3563. if iNdEx >= l {
  3564. return io.ErrUnexpectedEOF
  3565. }
  3566. b := dAtA[iNdEx]
  3567. iNdEx++
  3568. m.DelayLatencyMs |= (uint32(b) & 0x7F) << shift
  3569. if b < 0x80 {
  3570. break
  3571. }
  3572. }
  3573. case 12:
  3574. if wireType != 0 {
  3575. return fmt.Errorf("proto: wrong wireType = %d for field DelayLatencyMsRv", wireType)
  3576. }
  3577. m.DelayLatencyMsRv = 0
  3578. for shift := uint(0); ; shift += 7 {
  3579. if shift >= 64 {
  3580. return ErrIntOverflowRpc
  3581. }
  3582. if iNdEx >= l {
  3583. return io.ErrUnexpectedEOF
  3584. }
  3585. b := dAtA[iNdEx]
  3586. iNdEx++
  3587. m.DelayLatencyMsRv |= (uint32(b) & 0x7F) << shift
  3588. if b < 0x80 {
  3589. break
  3590. }
  3591. }
  3592. case 13:
  3593. if wireType != 0 {
  3594. return fmt.Errorf("proto: wrong wireType = %d for field UpdatedDelayLatencyMs", wireType)
  3595. }
  3596. m.UpdatedDelayLatencyMs = 0
  3597. for shift := uint(0); ; shift += 7 {
  3598. if shift >= 64 {
  3599. return ErrIntOverflowRpc
  3600. }
  3601. if iNdEx >= l {
  3602. return io.ErrUnexpectedEOF
  3603. }
  3604. b := dAtA[iNdEx]
  3605. iNdEx++
  3606. m.UpdatedDelayLatencyMs |= (uint32(b) & 0x7F) << shift
  3607. if b < 0x80 {
  3608. break
  3609. }
  3610. }
  3611. case 21:
  3612. if wireType != 0 {
  3613. return fmt.Errorf("proto: wrong wireType = %d for field RoundLimit", wireType)
  3614. }
  3615. m.RoundLimit = 0
  3616. for shift := uint(0); ; shift += 7 {
  3617. if shift >= 64 {
  3618. return ErrIntOverflowRpc
  3619. }
  3620. if iNdEx >= l {
  3621. return io.ErrUnexpectedEOF
  3622. }
  3623. b := dAtA[iNdEx]
  3624. iNdEx++
  3625. m.RoundLimit |= (int32(b) & 0x7F) << shift
  3626. if b < 0x80 {
  3627. break
  3628. }
  3629. }
  3630. case 22:
  3631. if wireType != 0 {
  3632. return fmt.Errorf("proto: wrong wireType = %d for field ExitOnCaseFail", wireType)
  3633. }
  3634. var v int
  3635. for shift := uint(0); ; shift += 7 {
  3636. if shift >= 64 {
  3637. return ErrIntOverflowRpc
  3638. }
  3639. if iNdEx >= l {
  3640. return io.ErrUnexpectedEOF
  3641. }
  3642. b := dAtA[iNdEx]
  3643. iNdEx++
  3644. v |= (int(b) & 0x7F) << shift
  3645. if b < 0x80 {
  3646. break
  3647. }
  3648. }
  3649. m.ExitOnCaseFail = bool(v != 0)
  3650. case 23:
  3651. if wireType != 0 {
  3652. return fmt.Errorf("proto: wrong wireType = %d for field EnablePprof", wireType)
  3653. }
  3654. var v int
  3655. for shift := uint(0); ; shift += 7 {
  3656. if shift >= 64 {
  3657. return ErrIntOverflowRpc
  3658. }
  3659. if iNdEx >= l {
  3660. return io.ErrUnexpectedEOF
  3661. }
  3662. b := dAtA[iNdEx]
  3663. iNdEx++
  3664. v |= (int(b) & 0x7F) << shift
  3665. if b < 0x80 {
  3666. break
  3667. }
  3668. }
  3669. m.EnablePprof = bool(v != 0)
  3670. case 31:
  3671. if wireType != 0 {
  3672. return fmt.Errorf("proto: wrong wireType = %d for field CaseDelayMs", wireType)
  3673. }
  3674. m.CaseDelayMs = 0
  3675. for shift := uint(0); ; shift += 7 {
  3676. if shift >= 64 {
  3677. return ErrIntOverflowRpc
  3678. }
  3679. if iNdEx >= l {
  3680. return io.ErrUnexpectedEOF
  3681. }
  3682. b := dAtA[iNdEx]
  3683. iNdEx++
  3684. m.CaseDelayMs |= (uint32(b) & 0x7F) << shift
  3685. if b < 0x80 {
  3686. break
  3687. }
  3688. }
  3689. case 32:
  3690. if wireType != 0 {
  3691. return fmt.Errorf("proto: wrong wireType = %d for field CaseShuffle", wireType)
  3692. }
  3693. var v int
  3694. for shift := uint(0); ; shift += 7 {
  3695. if shift >= 64 {
  3696. return ErrIntOverflowRpc
  3697. }
  3698. if iNdEx >= l {
  3699. return io.ErrUnexpectedEOF
  3700. }
  3701. b := dAtA[iNdEx]
  3702. iNdEx++
  3703. v |= (int(b) & 0x7F) << shift
  3704. if b < 0x80 {
  3705. break
  3706. }
  3707. }
  3708. m.CaseShuffle = bool(v != 0)
  3709. case 33:
  3710. if wireType != 2 {
  3711. return fmt.Errorf("proto: wrong wireType = %d for field Cases", wireType)
  3712. }
  3713. var stringLen uint64
  3714. for shift := uint(0); ; shift += 7 {
  3715. if shift >= 64 {
  3716. return ErrIntOverflowRpc
  3717. }
  3718. if iNdEx >= l {
  3719. return io.ErrUnexpectedEOF
  3720. }
  3721. b := dAtA[iNdEx]
  3722. iNdEx++
  3723. stringLen |= (uint64(b) & 0x7F) << shift
  3724. if b < 0x80 {
  3725. break
  3726. }
  3727. }
  3728. intStringLen := int(stringLen)
  3729. if intStringLen < 0 {
  3730. return ErrInvalidLengthRpc
  3731. }
  3732. postIndex := iNdEx + intStringLen
  3733. if postIndex > l {
  3734. return io.ErrUnexpectedEOF
  3735. }
  3736. m.Cases = append(m.Cases, string(dAtA[iNdEx:postIndex]))
  3737. iNdEx = postIndex
  3738. case 34:
  3739. if wireType != 2 {
  3740. return fmt.Errorf("proto: wrong wireType = %d for field FailpointCommands", wireType)
  3741. }
  3742. var stringLen uint64
  3743. for shift := uint(0); ; shift += 7 {
  3744. if shift >= 64 {
  3745. return ErrIntOverflowRpc
  3746. }
  3747. if iNdEx >= l {
  3748. return io.ErrUnexpectedEOF
  3749. }
  3750. b := dAtA[iNdEx]
  3751. iNdEx++
  3752. stringLen |= (uint64(b) & 0x7F) << shift
  3753. if b < 0x80 {
  3754. break
  3755. }
  3756. }
  3757. intStringLen := int(stringLen)
  3758. if intStringLen < 0 {
  3759. return ErrInvalidLengthRpc
  3760. }
  3761. postIndex := iNdEx + intStringLen
  3762. if postIndex > l {
  3763. return io.ErrUnexpectedEOF
  3764. }
  3765. m.FailpointCommands = append(m.FailpointCommands, string(dAtA[iNdEx:postIndex]))
  3766. iNdEx = postIndex
  3767. case 41:
  3768. if wireType != 2 {
  3769. return fmt.Errorf("proto: wrong wireType = %d for field RunnerExecPath", wireType)
  3770. }
  3771. var stringLen uint64
  3772. for shift := uint(0); ; shift += 7 {
  3773. if shift >= 64 {
  3774. return ErrIntOverflowRpc
  3775. }
  3776. if iNdEx >= l {
  3777. return io.ErrUnexpectedEOF
  3778. }
  3779. b := dAtA[iNdEx]
  3780. iNdEx++
  3781. stringLen |= (uint64(b) & 0x7F) << shift
  3782. if b < 0x80 {
  3783. break
  3784. }
  3785. }
  3786. intStringLen := int(stringLen)
  3787. if intStringLen < 0 {
  3788. return ErrInvalidLengthRpc
  3789. }
  3790. postIndex := iNdEx + intStringLen
  3791. if postIndex > l {
  3792. return io.ErrUnexpectedEOF
  3793. }
  3794. m.RunnerExecPath = string(dAtA[iNdEx:postIndex])
  3795. iNdEx = postIndex
  3796. case 42:
  3797. if wireType != 2 {
  3798. return fmt.Errorf("proto: wrong wireType = %d for field ExternalExecPath", wireType)
  3799. }
  3800. var stringLen uint64
  3801. for shift := uint(0); ; shift += 7 {
  3802. if shift >= 64 {
  3803. return ErrIntOverflowRpc
  3804. }
  3805. if iNdEx >= l {
  3806. return io.ErrUnexpectedEOF
  3807. }
  3808. b := dAtA[iNdEx]
  3809. iNdEx++
  3810. stringLen |= (uint64(b) & 0x7F) << shift
  3811. if b < 0x80 {
  3812. break
  3813. }
  3814. }
  3815. intStringLen := int(stringLen)
  3816. if intStringLen < 0 {
  3817. return ErrInvalidLengthRpc
  3818. }
  3819. postIndex := iNdEx + intStringLen
  3820. if postIndex > l {
  3821. return io.ErrUnexpectedEOF
  3822. }
  3823. m.ExternalExecPath = string(dAtA[iNdEx:postIndex])
  3824. iNdEx = postIndex
  3825. case 101:
  3826. if wireType != 2 {
  3827. return fmt.Errorf("proto: wrong wireType = %d for field Stressers", wireType)
  3828. }
  3829. var stringLen uint64
  3830. for shift := uint(0); ; shift += 7 {
  3831. if shift >= 64 {
  3832. return ErrIntOverflowRpc
  3833. }
  3834. if iNdEx >= l {
  3835. return io.ErrUnexpectedEOF
  3836. }
  3837. b := dAtA[iNdEx]
  3838. iNdEx++
  3839. stringLen |= (uint64(b) & 0x7F) << shift
  3840. if b < 0x80 {
  3841. break
  3842. }
  3843. }
  3844. intStringLen := int(stringLen)
  3845. if intStringLen < 0 {
  3846. return ErrInvalidLengthRpc
  3847. }
  3848. postIndex := iNdEx + intStringLen
  3849. if postIndex > l {
  3850. return io.ErrUnexpectedEOF
  3851. }
  3852. m.Stressers = append(m.Stressers, string(dAtA[iNdEx:postIndex]))
  3853. iNdEx = postIndex
  3854. case 102:
  3855. if wireType != 2 {
  3856. return fmt.Errorf("proto: wrong wireType = %d for field Checkers", wireType)
  3857. }
  3858. var stringLen uint64
  3859. for shift := uint(0); ; shift += 7 {
  3860. if shift >= 64 {
  3861. return ErrIntOverflowRpc
  3862. }
  3863. if iNdEx >= l {
  3864. return io.ErrUnexpectedEOF
  3865. }
  3866. b := dAtA[iNdEx]
  3867. iNdEx++
  3868. stringLen |= (uint64(b) & 0x7F) << shift
  3869. if b < 0x80 {
  3870. break
  3871. }
  3872. }
  3873. intStringLen := int(stringLen)
  3874. if intStringLen < 0 {
  3875. return ErrInvalidLengthRpc
  3876. }
  3877. postIndex := iNdEx + intStringLen
  3878. if postIndex > l {
  3879. return io.ErrUnexpectedEOF
  3880. }
  3881. m.Checkers = append(m.Checkers, string(dAtA[iNdEx:postIndex]))
  3882. iNdEx = postIndex
  3883. case 201:
  3884. if wireType != 0 {
  3885. return fmt.Errorf("proto: wrong wireType = %d for field StressKeySize", wireType)
  3886. }
  3887. m.StressKeySize = 0
  3888. for shift := uint(0); ; shift += 7 {
  3889. if shift >= 64 {
  3890. return ErrIntOverflowRpc
  3891. }
  3892. if iNdEx >= l {
  3893. return io.ErrUnexpectedEOF
  3894. }
  3895. b := dAtA[iNdEx]
  3896. iNdEx++
  3897. m.StressKeySize |= (int32(b) & 0x7F) << shift
  3898. if b < 0x80 {
  3899. break
  3900. }
  3901. }
  3902. case 202:
  3903. if wireType != 0 {
  3904. return fmt.Errorf("proto: wrong wireType = %d for field StressKeySizeLarge", wireType)
  3905. }
  3906. m.StressKeySizeLarge = 0
  3907. for shift := uint(0); ; shift += 7 {
  3908. if shift >= 64 {
  3909. return ErrIntOverflowRpc
  3910. }
  3911. if iNdEx >= l {
  3912. return io.ErrUnexpectedEOF
  3913. }
  3914. b := dAtA[iNdEx]
  3915. iNdEx++
  3916. m.StressKeySizeLarge |= (int32(b) & 0x7F) << shift
  3917. if b < 0x80 {
  3918. break
  3919. }
  3920. }
  3921. case 203:
  3922. if wireType != 0 {
  3923. return fmt.Errorf("proto: wrong wireType = %d for field StressKeySuffixRange", wireType)
  3924. }
  3925. m.StressKeySuffixRange = 0
  3926. for shift := uint(0); ; shift += 7 {
  3927. if shift >= 64 {
  3928. return ErrIntOverflowRpc
  3929. }
  3930. if iNdEx >= l {
  3931. return io.ErrUnexpectedEOF
  3932. }
  3933. b := dAtA[iNdEx]
  3934. iNdEx++
  3935. m.StressKeySuffixRange |= (int32(b) & 0x7F) << shift
  3936. if b < 0x80 {
  3937. break
  3938. }
  3939. }
  3940. case 204:
  3941. if wireType != 0 {
  3942. return fmt.Errorf("proto: wrong wireType = %d for field StressKeySuffixRangeTxn", wireType)
  3943. }
  3944. m.StressKeySuffixRangeTxn = 0
  3945. for shift := uint(0); ; shift += 7 {
  3946. if shift >= 64 {
  3947. return ErrIntOverflowRpc
  3948. }
  3949. if iNdEx >= l {
  3950. return io.ErrUnexpectedEOF
  3951. }
  3952. b := dAtA[iNdEx]
  3953. iNdEx++
  3954. m.StressKeySuffixRangeTxn |= (int32(b) & 0x7F) << shift
  3955. if b < 0x80 {
  3956. break
  3957. }
  3958. }
  3959. case 205:
  3960. if wireType != 0 {
  3961. return fmt.Errorf("proto: wrong wireType = %d for field StressKeyTxnOps", wireType)
  3962. }
  3963. m.StressKeyTxnOps = 0
  3964. for shift := uint(0); ; shift += 7 {
  3965. if shift >= 64 {
  3966. return ErrIntOverflowRpc
  3967. }
  3968. if iNdEx >= l {
  3969. return io.ErrUnexpectedEOF
  3970. }
  3971. b := dAtA[iNdEx]
  3972. iNdEx++
  3973. m.StressKeyTxnOps |= (int32(b) & 0x7F) << shift
  3974. if b < 0x80 {
  3975. break
  3976. }
  3977. }
  3978. case 301:
  3979. if wireType != 0 {
  3980. return fmt.Errorf("proto: wrong wireType = %d for field StressClients", wireType)
  3981. }
  3982. m.StressClients = 0
  3983. for shift := uint(0); ; shift += 7 {
  3984. if shift >= 64 {
  3985. return ErrIntOverflowRpc
  3986. }
  3987. if iNdEx >= l {
  3988. return io.ErrUnexpectedEOF
  3989. }
  3990. b := dAtA[iNdEx]
  3991. iNdEx++
  3992. m.StressClients |= (int32(b) & 0x7F) << shift
  3993. if b < 0x80 {
  3994. break
  3995. }
  3996. }
  3997. case 302:
  3998. if wireType != 0 {
  3999. return fmt.Errorf("proto: wrong wireType = %d for field StressQPS", wireType)
  4000. }
  4001. m.StressQPS = 0
  4002. for shift := uint(0); ; shift += 7 {
  4003. if shift >= 64 {
  4004. return ErrIntOverflowRpc
  4005. }
  4006. if iNdEx >= l {
  4007. return io.ErrUnexpectedEOF
  4008. }
  4009. b := dAtA[iNdEx]
  4010. iNdEx++
  4011. m.StressQPS |= (int32(b) & 0x7F) << shift
  4012. if b < 0x80 {
  4013. break
  4014. }
  4015. }
  4016. default:
  4017. iNdEx = preIndex
  4018. skippy, err := skipRpc(dAtA[iNdEx:])
  4019. if err != nil {
  4020. return err
  4021. }
  4022. if skippy < 0 {
  4023. return ErrInvalidLengthRpc
  4024. }
  4025. if (iNdEx + skippy) > l {
  4026. return io.ErrUnexpectedEOF
  4027. }
  4028. iNdEx += skippy
  4029. }
  4030. }
  4031. if iNdEx > l {
  4032. return io.ErrUnexpectedEOF
  4033. }
  4034. return nil
  4035. }
  4036. func (m *Etcd) Unmarshal(dAtA []byte) error {
  4037. l := len(dAtA)
  4038. iNdEx := 0
  4039. for iNdEx < l {
  4040. preIndex := iNdEx
  4041. var wire uint64
  4042. for shift := uint(0); ; shift += 7 {
  4043. if shift >= 64 {
  4044. return ErrIntOverflowRpc
  4045. }
  4046. if iNdEx >= l {
  4047. return io.ErrUnexpectedEOF
  4048. }
  4049. b := dAtA[iNdEx]
  4050. iNdEx++
  4051. wire |= (uint64(b) & 0x7F) << shift
  4052. if b < 0x80 {
  4053. break
  4054. }
  4055. }
  4056. fieldNum := int32(wire >> 3)
  4057. wireType := int(wire & 0x7)
  4058. if wireType == 4 {
  4059. return fmt.Errorf("proto: Etcd: wiretype end group for non-group")
  4060. }
  4061. if fieldNum <= 0 {
  4062. return fmt.Errorf("proto: Etcd: illegal tag %d (wire type %d)", fieldNum, wire)
  4063. }
  4064. switch fieldNum {
  4065. case 1:
  4066. if wireType != 2 {
  4067. return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType)
  4068. }
  4069. var stringLen uint64
  4070. for shift := uint(0); ; shift += 7 {
  4071. if shift >= 64 {
  4072. return ErrIntOverflowRpc
  4073. }
  4074. if iNdEx >= l {
  4075. return io.ErrUnexpectedEOF
  4076. }
  4077. b := dAtA[iNdEx]
  4078. iNdEx++
  4079. stringLen |= (uint64(b) & 0x7F) << shift
  4080. if b < 0x80 {
  4081. break
  4082. }
  4083. }
  4084. intStringLen := int(stringLen)
  4085. if intStringLen < 0 {
  4086. return ErrInvalidLengthRpc
  4087. }
  4088. postIndex := iNdEx + intStringLen
  4089. if postIndex > l {
  4090. return io.ErrUnexpectedEOF
  4091. }
  4092. m.Name = string(dAtA[iNdEx:postIndex])
  4093. iNdEx = postIndex
  4094. case 2:
  4095. if wireType != 2 {
  4096. return fmt.Errorf("proto: wrong wireType = %d for field DataDir", wireType)
  4097. }
  4098. var stringLen uint64
  4099. for shift := uint(0); ; shift += 7 {
  4100. if shift >= 64 {
  4101. return ErrIntOverflowRpc
  4102. }
  4103. if iNdEx >= l {
  4104. return io.ErrUnexpectedEOF
  4105. }
  4106. b := dAtA[iNdEx]
  4107. iNdEx++
  4108. stringLen |= (uint64(b) & 0x7F) << shift
  4109. if b < 0x80 {
  4110. break
  4111. }
  4112. }
  4113. intStringLen := int(stringLen)
  4114. if intStringLen < 0 {
  4115. return ErrInvalidLengthRpc
  4116. }
  4117. postIndex := iNdEx + intStringLen
  4118. if postIndex > l {
  4119. return io.ErrUnexpectedEOF
  4120. }
  4121. m.DataDir = string(dAtA[iNdEx:postIndex])
  4122. iNdEx = postIndex
  4123. case 3:
  4124. if wireType != 2 {
  4125. return fmt.Errorf("proto: wrong wireType = %d for field WALDir", wireType)
  4126. }
  4127. var stringLen uint64
  4128. for shift := uint(0); ; shift += 7 {
  4129. if shift >= 64 {
  4130. return ErrIntOverflowRpc
  4131. }
  4132. if iNdEx >= l {
  4133. return io.ErrUnexpectedEOF
  4134. }
  4135. b := dAtA[iNdEx]
  4136. iNdEx++
  4137. stringLen |= (uint64(b) & 0x7F) << shift
  4138. if b < 0x80 {
  4139. break
  4140. }
  4141. }
  4142. intStringLen := int(stringLen)
  4143. if intStringLen < 0 {
  4144. return ErrInvalidLengthRpc
  4145. }
  4146. postIndex := iNdEx + intStringLen
  4147. if postIndex > l {
  4148. return io.ErrUnexpectedEOF
  4149. }
  4150. m.WALDir = string(dAtA[iNdEx:postIndex])
  4151. iNdEx = postIndex
  4152. case 11:
  4153. if wireType != 0 {
  4154. return fmt.Errorf("proto: wrong wireType = %d for field HeartbeatIntervalMs", wireType)
  4155. }
  4156. m.HeartbeatIntervalMs = 0
  4157. for shift := uint(0); ; shift += 7 {
  4158. if shift >= 64 {
  4159. return ErrIntOverflowRpc
  4160. }
  4161. if iNdEx >= l {
  4162. return io.ErrUnexpectedEOF
  4163. }
  4164. b := dAtA[iNdEx]
  4165. iNdEx++
  4166. m.HeartbeatIntervalMs |= (int64(b) & 0x7F) << shift
  4167. if b < 0x80 {
  4168. break
  4169. }
  4170. }
  4171. case 12:
  4172. if wireType != 0 {
  4173. return fmt.Errorf("proto: wrong wireType = %d for field ElectionTimeoutMs", wireType)
  4174. }
  4175. m.ElectionTimeoutMs = 0
  4176. for shift := uint(0); ; shift += 7 {
  4177. if shift >= 64 {
  4178. return ErrIntOverflowRpc
  4179. }
  4180. if iNdEx >= l {
  4181. return io.ErrUnexpectedEOF
  4182. }
  4183. b := dAtA[iNdEx]
  4184. iNdEx++
  4185. m.ElectionTimeoutMs |= (int64(b) & 0x7F) << shift
  4186. if b < 0x80 {
  4187. break
  4188. }
  4189. }
  4190. case 21:
  4191. if wireType != 2 {
  4192. return fmt.Errorf("proto: wrong wireType = %d for field ListenClientURLs", wireType)
  4193. }
  4194. var stringLen uint64
  4195. for shift := uint(0); ; shift += 7 {
  4196. if shift >= 64 {
  4197. return ErrIntOverflowRpc
  4198. }
  4199. if iNdEx >= l {
  4200. return io.ErrUnexpectedEOF
  4201. }
  4202. b := dAtA[iNdEx]
  4203. iNdEx++
  4204. stringLen |= (uint64(b) & 0x7F) << shift
  4205. if b < 0x80 {
  4206. break
  4207. }
  4208. }
  4209. intStringLen := int(stringLen)
  4210. if intStringLen < 0 {
  4211. return ErrInvalidLengthRpc
  4212. }
  4213. postIndex := iNdEx + intStringLen
  4214. if postIndex > l {
  4215. return io.ErrUnexpectedEOF
  4216. }
  4217. m.ListenClientURLs = append(m.ListenClientURLs, string(dAtA[iNdEx:postIndex]))
  4218. iNdEx = postIndex
  4219. case 22:
  4220. if wireType != 2 {
  4221. return fmt.Errorf("proto: wrong wireType = %d for field AdvertiseClientURLs", wireType)
  4222. }
  4223. var stringLen uint64
  4224. for shift := uint(0); ; shift += 7 {
  4225. if shift >= 64 {
  4226. return ErrIntOverflowRpc
  4227. }
  4228. if iNdEx >= l {
  4229. return io.ErrUnexpectedEOF
  4230. }
  4231. b := dAtA[iNdEx]
  4232. iNdEx++
  4233. stringLen |= (uint64(b) & 0x7F) << shift
  4234. if b < 0x80 {
  4235. break
  4236. }
  4237. }
  4238. intStringLen := int(stringLen)
  4239. if intStringLen < 0 {
  4240. return ErrInvalidLengthRpc
  4241. }
  4242. postIndex := iNdEx + intStringLen
  4243. if postIndex > l {
  4244. return io.ErrUnexpectedEOF
  4245. }
  4246. m.AdvertiseClientURLs = append(m.AdvertiseClientURLs, string(dAtA[iNdEx:postIndex]))
  4247. iNdEx = postIndex
  4248. case 23:
  4249. if wireType != 0 {
  4250. return fmt.Errorf("proto: wrong wireType = %d for field ClientAutoTLS", wireType)
  4251. }
  4252. var v int
  4253. for shift := uint(0); ; shift += 7 {
  4254. if shift >= 64 {
  4255. return ErrIntOverflowRpc
  4256. }
  4257. if iNdEx >= l {
  4258. return io.ErrUnexpectedEOF
  4259. }
  4260. b := dAtA[iNdEx]
  4261. iNdEx++
  4262. v |= (int(b) & 0x7F) << shift
  4263. if b < 0x80 {
  4264. break
  4265. }
  4266. }
  4267. m.ClientAutoTLS = bool(v != 0)
  4268. case 24:
  4269. if wireType != 0 {
  4270. return fmt.Errorf("proto: wrong wireType = %d for field ClientCertAuth", wireType)
  4271. }
  4272. var v int
  4273. for shift := uint(0); ; shift += 7 {
  4274. if shift >= 64 {
  4275. return ErrIntOverflowRpc
  4276. }
  4277. if iNdEx >= l {
  4278. return io.ErrUnexpectedEOF
  4279. }
  4280. b := dAtA[iNdEx]
  4281. iNdEx++
  4282. v |= (int(b) & 0x7F) << shift
  4283. if b < 0x80 {
  4284. break
  4285. }
  4286. }
  4287. m.ClientCertAuth = bool(v != 0)
  4288. case 25:
  4289. if wireType != 2 {
  4290. return fmt.Errorf("proto: wrong wireType = %d for field ClientCertFile", wireType)
  4291. }
  4292. var stringLen uint64
  4293. for shift := uint(0); ; shift += 7 {
  4294. if shift >= 64 {
  4295. return ErrIntOverflowRpc
  4296. }
  4297. if iNdEx >= l {
  4298. return io.ErrUnexpectedEOF
  4299. }
  4300. b := dAtA[iNdEx]
  4301. iNdEx++
  4302. stringLen |= (uint64(b) & 0x7F) << shift
  4303. if b < 0x80 {
  4304. break
  4305. }
  4306. }
  4307. intStringLen := int(stringLen)
  4308. if intStringLen < 0 {
  4309. return ErrInvalidLengthRpc
  4310. }
  4311. postIndex := iNdEx + intStringLen
  4312. if postIndex > l {
  4313. return io.ErrUnexpectedEOF
  4314. }
  4315. m.ClientCertFile = string(dAtA[iNdEx:postIndex])
  4316. iNdEx = postIndex
  4317. case 26:
  4318. if wireType != 2 {
  4319. return fmt.Errorf("proto: wrong wireType = %d for field ClientKeyFile", wireType)
  4320. }
  4321. var stringLen uint64
  4322. for shift := uint(0); ; shift += 7 {
  4323. if shift >= 64 {
  4324. return ErrIntOverflowRpc
  4325. }
  4326. if iNdEx >= l {
  4327. return io.ErrUnexpectedEOF
  4328. }
  4329. b := dAtA[iNdEx]
  4330. iNdEx++
  4331. stringLen |= (uint64(b) & 0x7F) << shift
  4332. if b < 0x80 {
  4333. break
  4334. }
  4335. }
  4336. intStringLen := int(stringLen)
  4337. if intStringLen < 0 {
  4338. return ErrInvalidLengthRpc
  4339. }
  4340. postIndex := iNdEx + intStringLen
  4341. if postIndex > l {
  4342. return io.ErrUnexpectedEOF
  4343. }
  4344. m.ClientKeyFile = string(dAtA[iNdEx:postIndex])
  4345. iNdEx = postIndex
  4346. case 27:
  4347. if wireType != 2 {
  4348. return fmt.Errorf("proto: wrong wireType = %d for field ClientTrustedCAFile", wireType)
  4349. }
  4350. var stringLen uint64
  4351. for shift := uint(0); ; shift += 7 {
  4352. if shift >= 64 {
  4353. return ErrIntOverflowRpc
  4354. }
  4355. if iNdEx >= l {
  4356. return io.ErrUnexpectedEOF
  4357. }
  4358. b := dAtA[iNdEx]
  4359. iNdEx++
  4360. stringLen |= (uint64(b) & 0x7F) << shift
  4361. if b < 0x80 {
  4362. break
  4363. }
  4364. }
  4365. intStringLen := int(stringLen)
  4366. if intStringLen < 0 {
  4367. return ErrInvalidLengthRpc
  4368. }
  4369. postIndex := iNdEx + intStringLen
  4370. if postIndex > l {
  4371. return io.ErrUnexpectedEOF
  4372. }
  4373. m.ClientTrustedCAFile = string(dAtA[iNdEx:postIndex])
  4374. iNdEx = postIndex
  4375. case 31:
  4376. if wireType != 2 {
  4377. return fmt.Errorf("proto: wrong wireType = %d for field ListenPeerURLs", wireType)
  4378. }
  4379. var stringLen uint64
  4380. for shift := uint(0); ; shift += 7 {
  4381. if shift >= 64 {
  4382. return ErrIntOverflowRpc
  4383. }
  4384. if iNdEx >= l {
  4385. return io.ErrUnexpectedEOF
  4386. }
  4387. b := dAtA[iNdEx]
  4388. iNdEx++
  4389. stringLen |= (uint64(b) & 0x7F) << shift
  4390. if b < 0x80 {
  4391. break
  4392. }
  4393. }
  4394. intStringLen := int(stringLen)
  4395. if intStringLen < 0 {
  4396. return ErrInvalidLengthRpc
  4397. }
  4398. postIndex := iNdEx + intStringLen
  4399. if postIndex > l {
  4400. return io.ErrUnexpectedEOF
  4401. }
  4402. m.ListenPeerURLs = append(m.ListenPeerURLs, string(dAtA[iNdEx:postIndex]))
  4403. iNdEx = postIndex
  4404. case 32:
  4405. if wireType != 2 {
  4406. return fmt.Errorf("proto: wrong wireType = %d for field AdvertisePeerURLs", wireType)
  4407. }
  4408. var stringLen uint64
  4409. for shift := uint(0); ; shift += 7 {
  4410. if shift >= 64 {
  4411. return ErrIntOverflowRpc
  4412. }
  4413. if iNdEx >= l {
  4414. return io.ErrUnexpectedEOF
  4415. }
  4416. b := dAtA[iNdEx]
  4417. iNdEx++
  4418. stringLen |= (uint64(b) & 0x7F) << shift
  4419. if b < 0x80 {
  4420. break
  4421. }
  4422. }
  4423. intStringLen := int(stringLen)
  4424. if intStringLen < 0 {
  4425. return ErrInvalidLengthRpc
  4426. }
  4427. postIndex := iNdEx + intStringLen
  4428. if postIndex > l {
  4429. return io.ErrUnexpectedEOF
  4430. }
  4431. m.AdvertisePeerURLs = append(m.AdvertisePeerURLs, string(dAtA[iNdEx:postIndex]))
  4432. iNdEx = postIndex
  4433. case 33:
  4434. if wireType != 0 {
  4435. return fmt.Errorf("proto: wrong wireType = %d for field PeerAutoTLS", wireType)
  4436. }
  4437. var v int
  4438. for shift := uint(0); ; shift += 7 {
  4439. if shift >= 64 {
  4440. return ErrIntOverflowRpc
  4441. }
  4442. if iNdEx >= l {
  4443. return io.ErrUnexpectedEOF
  4444. }
  4445. b := dAtA[iNdEx]
  4446. iNdEx++
  4447. v |= (int(b) & 0x7F) << shift
  4448. if b < 0x80 {
  4449. break
  4450. }
  4451. }
  4452. m.PeerAutoTLS = bool(v != 0)
  4453. case 34:
  4454. if wireType != 0 {
  4455. return fmt.Errorf("proto: wrong wireType = %d for field PeerClientCertAuth", wireType)
  4456. }
  4457. var v int
  4458. for shift := uint(0); ; shift += 7 {
  4459. if shift >= 64 {
  4460. return ErrIntOverflowRpc
  4461. }
  4462. if iNdEx >= l {
  4463. return io.ErrUnexpectedEOF
  4464. }
  4465. b := dAtA[iNdEx]
  4466. iNdEx++
  4467. v |= (int(b) & 0x7F) << shift
  4468. if b < 0x80 {
  4469. break
  4470. }
  4471. }
  4472. m.PeerClientCertAuth = bool(v != 0)
  4473. case 35:
  4474. if wireType != 2 {
  4475. return fmt.Errorf("proto: wrong wireType = %d for field PeerCertFile", wireType)
  4476. }
  4477. var stringLen uint64
  4478. for shift := uint(0); ; shift += 7 {
  4479. if shift >= 64 {
  4480. return ErrIntOverflowRpc
  4481. }
  4482. if iNdEx >= l {
  4483. return io.ErrUnexpectedEOF
  4484. }
  4485. b := dAtA[iNdEx]
  4486. iNdEx++
  4487. stringLen |= (uint64(b) & 0x7F) << shift
  4488. if b < 0x80 {
  4489. break
  4490. }
  4491. }
  4492. intStringLen := int(stringLen)
  4493. if intStringLen < 0 {
  4494. return ErrInvalidLengthRpc
  4495. }
  4496. postIndex := iNdEx + intStringLen
  4497. if postIndex > l {
  4498. return io.ErrUnexpectedEOF
  4499. }
  4500. m.PeerCertFile = string(dAtA[iNdEx:postIndex])
  4501. iNdEx = postIndex
  4502. case 36:
  4503. if wireType != 2 {
  4504. return fmt.Errorf("proto: wrong wireType = %d for field PeerKeyFile", wireType)
  4505. }
  4506. var stringLen uint64
  4507. for shift := uint(0); ; shift += 7 {
  4508. if shift >= 64 {
  4509. return ErrIntOverflowRpc
  4510. }
  4511. if iNdEx >= l {
  4512. return io.ErrUnexpectedEOF
  4513. }
  4514. b := dAtA[iNdEx]
  4515. iNdEx++
  4516. stringLen |= (uint64(b) & 0x7F) << shift
  4517. if b < 0x80 {
  4518. break
  4519. }
  4520. }
  4521. intStringLen := int(stringLen)
  4522. if intStringLen < 0 {
  4523. return ErrInvalidLengthRpc
  4524. }
  4525. postIndex := iNdEx + intStringLen
  4526. if postIndex > l {
  4527. return io.ErrUnexpectedEOF
  4528. }
  4529. m.PeerKeyFile = string(dAtA[iNdEx:postIndex])
  4530. iNdEx = postIndex
  4531. case 37:
  4532. if wireType != 2 {
  4533. return fmt.Errorf("proto: wrong wireType = %d for field PeerTrustedCAFile", wireType)
  4534. }
  4535. var stringLen uint64
  4536. for shift := uint(0); ; shift += 7 {
  4537. if shift >= 64 {
  4538. return ErrIntOverflowRpc
  4539. }
  4540. if iNdEx >= l {
  4541. return io.ErrUnexpectedEOF
  4542. }
  4543. b := dAtA[iNdEx]
  4544. iNdEx++
  4545. stringLen |= (uint64(b) & 0x7F) << shift
  4546. if b < 0x80 {
  4547. break
  4548. }
  4549. }
  4550. intStringLen := int(stringLen)
  4551. if intStringLen < 0 {
  4552. return ErrInvalidLengthRpc
  4553. }
  4554. postIndex := iNdEx + intStringLen
  4555. if postIndex > l {
  4556. return io.ErrUnexpectedEOF
  4557. }
  4558. m.PeerTrustedCAFile = string(dAtA[iNdEx:postIndex])
  4559. iNdEx = postIndex
  4560. case 41:
  4561. if wireType != 2 {
  4562. return fmt.Errorf("proto: wrong wireType = %d for field InitialCluster", wireType)
  4563. }
  4564. var stringLen uint64
  4565. for shift := uint(0); ; shift += 7 {
  4566. if shift >= 64 {
  4567. return ErrIntOverflowRpc
  4568. }
  4569. if iNdEx >= l {
  4570. return io.ErrUnexpectedEOF
  4571. }
  4572. b := dAtA[iNdEx]
  4573. iNdEx++
  4574. stringLen |= (uint64(b) & 0x7F) << shift
  4575. if b < 0x80 {
  4576. break
  4577. }
  4578. }
  4579. intStringLen := int(stringLen)
  4580. if intStringLen < 0 {
  4581. return ErrInvalidLengthRpc
  4582. }
  4583. postIndex := iNdEx + intStringLen
  4584. if postIndex > l {
  4585. return io.ErrUnexpectedEOF
  4586. }
  4587. m.InitialCluster = string(dAtA[iNdEx:postIndex])
  4588. iNdEx = postIndex
  4589. case 42:
  4590. if wireType != 2 {
  4591. return fmt.Errorf("proto: wrong wireType = %d for field InitialClusterState", wireType)
  4592. }
  4593. var stringLen uint64
  4594. for shift := uint(0); ; shift += 7 {
  4595. if shift >= 64 {
  4596. return ErrIntOverflowRpc
  4597. }
  4598. if iNdEx >= l {
  4599. return io.ErrUnexpectedEOF
  4600. }
  4601. b := dAtA[iNdEx]
  4602. iNdEx++
  4603. stringLen |= (uint64(b) & 0x7F) << shift
  4604. if b < 0x80 {
  4605. break
  4606. }
  4607. }
  4608. intStringLen := int(stringLen)
  4609. if intStringLen < 0 {
  4610. return ErrInvalidLengthRpc
  4611. }
  4612. postIndex := iNdEx + intStringLen
  4613. if postIndex > l {
  4614. return io.ErrUnexpectedEOF
  4615. }
  4616. m.InitialClusterState = string(dAtA[iNdEx:postIndex])
  4617. iNdEx = postIndex
  4618. case 43:
  4619. if wireType != 2 {
  4620. return fmt.Errorf("proto: wrong wireType = %d for field InitialClusterToken", wireType)
  4621. }
  4622. var stringLen uint64
  4623. for shift := uint(0); ; shift += 7 {
  4624. if shift >= 64 {
  4625. return ErrIntOverflowRpc
  4626. }
  4627. if iNdEx >= l {
  4628. return io.ErrUnexpectedEOF
  4629. }
  4630. b := dAtA[iNdEx]
  4631. iNdEx++
  4632. stringLen |= (uint64(b) & 0x7F) << shift
  4633. if b < 0x80 {
  4634. break
  4635. }
  4636. }
  4637. intStringLen := int(stringLen)
  4638. if intStringLen < 0 {
  4639. return ErrInvalidLengthRpc
  4640. }
  4641. postIndex := iNdEx + intStringLen
  4642. if postIndex > l {
  4643. return io.ErrUnexpectedEOF
  4644. }
  4645. m.InitialClusterToken = string(dAtA[iNdEx:postIndex])
  4646. iNdEx = postIndex
  4647. case 51:
  4648. if wireType != 0 {
  4649. return fmt.Errorf("proto: wrong wireType = %d for field SnapshotCount", wireType)
  4650. }
  4651. m.SnapshotCount = 0
  4652. for shift := uint(0); ; shift += 7 {
  4653. if shift >= 64 {
  4654. return ErrIntOverflowRpc
  4655. }
  4656. if iNdEx >= l {
  4657. return io.ErrUnexpectedEOF
  4658. }
  4659. b := dAtA[iNdEx]
  4660. iNdEx++
  4661. m.SnapshotCount |= (int64(b) & 0x7F) << shift
  4662. if b < 0x80 {
  4663. break
  4664. }
  4665. }
  4666. case 52:
  4667. if wireType != 0 {
  4668. return fmt.Errorf("proto: wrong wireType = %d for field QuotaBackendBytes", wireType)
  4669. }
  4670. m.QuotaBackendBytes = 0
  4671. for shift := uint(0); ; shift += 7 {
  4672. if shift >= 64 {
  4673. return ErrIntOverflowRpc
  4674. }
  4675. if iNdEx >= l {
  4676. return io.ErrUnexpectedEOF
  4677. }
  4678. b := dAtA[iNdEx]
  4679. iNdEx++
  4680. m.QuotaBackendBytes |= (int64(b) & 0x7F) << shift
  4681. if b < 0x80 {
  4682. break
  4683. }
  4684. }
  4685. case 63:
  4686. if wireType != 0 {
  4687. return fmt.Errorf("proto: wrong wireType = %d for field PreVote", wireType)
  4688. }
  4689. var v int
  4690. for shift := uint(0); ; shift += 7 {
  4691. if shift >= 64 {
  4692. return ErrIntOverflowRpc
  4693. }
  4694. if iNdEx >= l {
  4695. return io.ErrUnexpectedEOF
  4696. }
  4697. b := dAtA[iNdEx]
  4698. iNdEx++
  4699. v |= (int(b) & 0x7F) << shift
  4700. if b < 0x80 {
  4701. break
  4702. }
  4703. }
  4704. m.PreVote = bool(v != 0)
  4705. case 64:
  4706. if wireType != 0 {
  4707. return fmt.Errorf("proto: wrong wireType = %d for field InitialCorruptCheck", wireType)
  4708. }
  4709. var v int
  4710. for shift := uint(0); ; shift += 7 {
  4711. if shift >= 64 {
  4712. return ErrIntOverflowRpc
  4713. }
  4714. if iNdEx >= l {
  4715. return io.ErrUnexpectedEOF
  4716. }
  4717. b := dAtA[iNdEx]
  4718. iNdEx++
  4719. v |= (int(b) & 0x7F) << shift
  4720. if b < 0x80 {
  4721. break
  4722. }
  4723. }
  4724. m.InitialCorruptCheck = bool(v != 0)
  4725. default:
  4726. iNdEx = preIndex
  4727. skippy, err := skipRpc(dAtA[iNdEx:])
  4728. if err != nil {
  4729. return err
  4730. }
  4731. if skippy < 0 {
  4732. return ErrInvalidLengthRpc
  4733. }
  4734. if (iNdEx + skippy) > l {
  4735. return io.ErrUnexpectedEOF
  4736. }
  4737. iNdEx += skippy
  4738. }
  4739. }
  4740. if iNdEx > l {
  4741. return io.ErrUnexpectedEOF
  4742. }
  4743. return nil
  4744. }
  4745. func skipRpc(dAtA []byte) (n int, err error) {
  4746. l := len(dAtA)
  4747. iNdEx := 0
  4748. for iNdEx < l {
  4749. var wire uint64
  4750. for shift := uint(0); ; shift += 7 {
  4751. if shift >= 64 {
  4752. return 0, ErrIntOverflowRpc
  4753. }
  4754. if iNdEx >= l {
  4755. return 0, io.ErrUnexpectedEOF
  4756. }
  4757. b := dAtA[iNdEx]
  4758. iNdEx++
  4759. wire |= (uint64(b) & 0x7F) << shift
  4760. if b < 0x80 {
  4761. break
  4762. }
  4763. }
  4764. wireType := int(wire & 0x7)
  4765. switch wireType {
  4766. case 0:
  4767. for shift := uint(0); ; shift += 7 {
  4768. if shift >= 64 {
  4769. return 0, ErrIntOverflowRpc
  4770. }
  4771. if iNdEx >= l {
  4772. return 0, io.ErrUnexpectedEOF
  4773. }
  4774. iNdEx++
  4775. if dAtA[iNdEx-1] < 0x80 {
  4776. break
  4777. }
  4778. }
  4779. return iNdEx, nil
  4780. case 1:
  4781. iNdEx += 8
  4782. return iNdEx, nil
  4783. case 2:
  4784. var length int
  4785. for shift := uint(0); ; shift += 7 {
  4786. if shift >= 64 {
  4787. return 0, ErrIntOverflowRpc
  4788. }
  4789. if iNdEx >= l {
  4790. return 0, io.ErrUnexpectedEOF
  4791. }
  4792. b := dAtA[iNdEx]
  4793. iNdEx++
  4794. length |= (int(b) & 0x7F) << shift
  4795. if b < 0x80 {
  4796. break
  4797. }
  4798. }
  4799. iNdEx += length
  4800. if length < 0 {
  4801. return 0, ErrInvalidLengthRpc
  4802. }
  4803. return iNdEx, nil
  4804. case 3:
  4805. for {
  4806. var innerWire uint64
  4807. var start int = iNdEx
  4808. for shift := uint(0); ; shift += 7 {
  4809. if shift >= 64 {
  4810. return 0, ErrIntOverflowRpc
  4811. }
  4812. if iNdEx >= l {
  4813. return 0, io.ErrUnexpectedEOF
  4814. }
  4815. b := dAtA[iNdEx]
  4816. iNdEx++
  4817. innerWire |= (uint64(b) & 0x7F) << shift
  4818. if b < 0x80 {
  4819. break
  4820. }
  4821. }
  4822. innerWireType := int(innerWire & 0x7)
  4823. if innerWireType == 4 {
  4824. break
  4825. }
  4826. next, err := skipRpc(dAtA[start:])
  4827. if err != nil {
  4828. return 0, err
  4829. }
  4830. iNdEx = start + next
  4831. }
  4832. return iNdEx, nil
  4833. case 4:
  4834. return iNdEx, nil
  4835. case 5:
  4836. iNdEx += 4
  4837. return iNdEx, nil
  4838. default:
  4839. return 0, fmt.Errorf("proto: illegal wireType %d", wireType)
  4840. }
  4841. }
  4842. panic("unreachable")
  4843. }
  4844. var (
  4845. ErrInvalidLengthRpc = fmt.Errorf("proto: negative length found during unmarshaling")
  4846. ErrIntOverflowRpc = fmt.Errorf("proto: integer overflow")
  4847. )
  4848. func init() { proto.RegisterFile("rpcpb/rpc.proto", fileDescriptorRpc) }
  4849. var fileDescriptorRpc = []byte{
  4850. // 2808 bytes of a gzipped FileDescriptorProto
  4851. 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x59, 0xdb, 0x73, 0xdb, 0xc6,
  4852. 0xf5, 0x16, 0x44, 0x5d, 0x57, 0x37, 0x68, 0x65, 0xd9, 0xf0, 0x4d, 0x90, 0xe1, 0x38, 0x3f, 0x59,
  4853. 0x09, 0xec, 0xfc, 0xec, 0x4c, 0x2e, 0x4e, 0x13, 0x07, 0xa4, 0x20, 0x8b, 0x15, 0x44, 0xd2, 0x4b,
  4854. 0xc8, 0x76, 0x9e, 0x38, 0x10, 0xb9, 0x92, 0x30, 0xa6, 0x00, 0x06, 0x58, 0x2a, 0x52, 0xfe, 0x81,
  4855. 0xbe, 0xf6, 0x3e, 0xed, 0x4c, 0x9f, 0xfa, 0xdc, 0xb4, 0xff, 0x86, 0x73, 0x6b, 0xd3, 0xf6, 0xa9,
  4856. 0xed, 0x0c, 0xa7, 0x4d, 0x5f, 0xfa, 0xd4, 0x07, 0x4e, 0x6f, 0xe9, 0x53, 0x67, 0x77, 0x01, 0x71,
  4857. 0x01, 0x90, 0x92, 0x9e, 0xa4, 0x3d, 0xe7, 0xfb, 0xbe, 0x3d, 0xbb, 0x67, 0xb1, 0xe7, 0x00, 0x04,
  4858. 0x73, 0x41, 0xab, 0xde, 0xda, 0xb9, 0x1b, 0xb4, 0xea, 0x77, 0x5a, 0x81, 0x4f, 0x7c, 0x38, 0xca,
  4859. 0x0c, 0x57, 0xf4, 0x3d, 0x97, 0xec, 0xb7, 0x77, 0xee, 0xd4, 0xfd, 0x83, 0xbb, 0x7b, 0xfe, 0x9e,
  4860. 0x7f, 0x97, 0x79, 0x77, 0xda, 0xbb, 0x6c, 0xc4, 0x06, 0xec, 0x3f, 0xce, 0xd2, 0xbe, 0x23, 0x81,
  4861. 0x71, 0x84, 0x3f, 0x6c, 0xe3, 0x90, 0xc0, 0x3b, 0x60, 0xb2, 0xdc, 0xc2, 0x81, 0x43, 0x5c, 0xdf,
  4862. 0x53, 0xa4, 0x65, 0x69, 0x65, 0xf6, 0x9e, 0x7c, 0x87, 0xa9, 0xde, 0x39, 0xb1, 0xa3, 0x1e, 0x04,
  4863. 0xde, 0x02, 0x63, 0x5b, 0xf8, 0x60, 0x07, 0x07, 0xca, 0xf0, 0xb2, 0xb4, 0x32, 0x75, 0x6f, 0x26,
  4864. 0x02, 0x73, 0x23, 0x8a, 0x9c, 0x14, 0x66, 0xe3, 0x90, 0xe0, 0x40, 0xc9, 0x25, 0x60, 0xdc, 0x88,
  4865. 0x22, 0xa7, 0xf6, 0xb7, 0x61, 0x30, 0x5d, 0xf5, 0x9c, 0x56, 0xb8, 0xef, 0x93, 0xa2, 0xb7, 0xeb,
  4866. 0xc3, 0x25, 0x00, 0xb8, 0x42, 0xc9, 0x39, 0xc0, 0x2c, 0x9e, 0x49, 0x24, 0x58, 0xe0, 0x2a, 0x90,
  4867. 0xf9, 0xa8, 0xd0, 0x74, 0xb1, 0x47, 0xb6, 0x91, 0x15, 0x2a, 0xc3, 0xcb, 0xb9, 0x95, 0x49, 0x94,
  4868. 0xb1, 0x43, 0xad, 0xa7, 0x5d, 0x71, 0xc8, 0x3e, 0x8b, 0x64, 0x12, 0x25, 0x6c, 0x54, 0x2f, 0x1e,
  4869. 0xaf, 0xbb, 0x4d, 0x5c, 0x75, 0x3f, 0xc6, 0xca, 0x08, 0xc3, 0x65, 0xec, 0xf0, 0x55, 0x30, 0x1f,
  4870. 0xdb, 0x6c, 0x9f, 0x38, 0x4d, 0x06, 0x1e, 0x65, 0xe0, 0xac, 0x43, 0x54, 0x66, 0xc6, 0x4d, 0x7c,
  4871. 0xac, 0x8c, 0x2d, 0x4b, 0x2b, 0x39, 0x94, 0xb1, 0x8b, 0x91, 0x6e, 0x38, 0xe1, 0xbe, 0x32, 0xce,
  4872. 0x70, 0x09, 0x9b, 0xa8, 0x87, 0xf0, 0xa1, 0x1b, 0xd2, 0x7c, 0x4d, 0x24, 0xf5, 0x62, 0x3b, 0x84,
  4873. 0x60, 0xc4, 0xf6, 0xfd, 0xe7, 0xca, 0x24, 0x0b, 0x8e, 0xfd, 0xaf, 0xfd, 0x4c, 0x02, 0x13, 0x08,
  4874. 0x87, 0x2d, 0xdf, 0x0b, 0x31, 0x54, 0xc0, 0x78, 0xb5, 0x5d, 0xaf, 0xe3, 0x30, 0x64, 0x7b, 0x3c,
  4875. 0x81, 0xe2, 0x21, 0xbc, 0x08, 0xc6, 0xaa, 0xc4, 0x21, 0xed, 0x90, 0xe5, 0x77, 0x12, 0x45, 0x23,
  4876. 0x21, 0xef, 0xb9, 0xd3, 0xf2, 0xfe, 0x66, 0x32, 0x9f, 0x6c, 0x2f, 0xa7, 0xee, 0x2d, 0x44, 0x60,
  4877. 0xd1, 0x85, 0x12, 0x40, 0xed, 0x4f, 0xd3, 0xf1, 0x04, 0xf0, 0x5d, 0x30, 0x6d, 0x92, 0x7a, 0xc3,
  4878. 0x3c, 0xc2, 0x75, 0x96, 0x37, 0x76, 0x0a, 0xf2, 0x97, 0xbb, 0x1d, 0x75, 0xf1, 0xd8, 0x39, 0x68,
  4879. 0x3e, 0xd0, 0x30, 0xa9, 0x37, 0x74, 0x7c, 0x84, 0xeb, 0x7a, 0xcb, 0x21, 0xfb, 0x1a, 0x4a, 0xc0,
  4880. 0xe1, 0x7d, 0x30, 0x69, 0xec, 0x61, 0x8f, 0x18, 0x8d, 0x46, 0xa0, 0x4c, 0x31, 0xee, 0x62, 0xb7,
  4881. 0xa3, 0xce, 0x73, 0xae, 0x43, 0x5d, 0xba, 0xd3, 0x68, 0x04, 0x1a, 0xea, 0xe1, 0xa0, 0x05, 0xe6,
  4882. 0xd7, 0x1d, 0xb7, 0xd9, 0xf2, 0x5d, 0x8f, 0x6c, 0xd8, 0x76, 0x85, 0x91, 0xa7, 0x19, 0x79, 0xa9,
  4883. 0xdb, 0x51, 0xaf, 0x70, 0xf2, 0x6e, 0x0c, 0xd1, 0xf7, 0x09, 0x69, 0x45, 0x2a, 0x59, 0x22, 0xd4,
  4884. 0xc1, 0x78, 0xde, 0x09, 0xf1, 0x9a, 0x1b, 0x28, 0x98, 0x69, 0x2c, 0x74, 0x3b, 0xea, 0x1c, 0xd7,
  4885. 0xd8, 0x71, 0x42, 0xac, 0x37, 0xdc, 0x40, 0x43, 0x31, 0x06, 0x3e, 0x00, 0x53, 0x74, 0x05, 0x96,
  4886. 0xbf, 0xc7, 0xd6, 0xbb, 0xcb, 0x28, 0x4a, 0xb7, 0xa3, 0x5e, 0x10, 0xd6, 0xdb, 0xf4, 0xf7, 0xa2,
  4887. 0xe5, 0x8a, 0x60, 0xf8, 0x08, 0xcc, 0xd1, 0x21, 0x3f, 0xf6, 0x95, 0xc0, 0x3f, 0x3a, 0x56, 0x3e,
  4888. 0x65, 0x29, 0xcd, 0x5f, 0xeb, 0x76, 0x54, 0x45, 0x10, 0xa8, 0x33, 0x88, 0xde, 0xa2, 0x18, 0x0d,
  4889. 0xa5, 0x59, 0xd0, 0x00, 0x33, 0xd4, 0x54, 0xc1, 0x38, 0xe0, 0x32, 0x9f, 0x71, 0x99, 0x2b, 0xdd,
  4890. 0x8e, 0x7a, 0x51, 0x90, 0x69, 0x61, 0x1c, 0xc4, 0x22, 0x49, 0x06, 0xac, 0x00, 0xd8, 0x53, 0x35,
  4891. 0xbd, 0x06, 0xdb, 0x14, 0xe5, 0x13, 0x76, 0x90, 0xf2, 0x6a, 0xb7, 0xa3, 0x5e, 0xcd, 0x86, 0x83,
  4892. 0x23, 0x98, 0x86, 0xfa, 0x70, 0xe1, 0xff, 0x83, 0x11, 0x6a, 0x55, 0x7e, 0xc9, 0x2f, 0x9b, 0xa9,
  4893. 0xe8, 0x1c, 0x51, 0x5b, 0x7e, 0xae, 0xdb, 0x51, 0xa7, 0x7a, 0x82, 0x1a, 0x62, 0x50, 0x98, 0x07,
  4894. 0x8b, 0xf4, 0x6f, 0xd9, 0xeb, 0x3d, 0x15, 0x21, 0xf1, 0x03, 0xac, 0xfc, 0x2a, 0xab, 0x81, 0xfa,
  4895. 0x43, 0xe1, 0x1a, 0x98, 0xe5, 0x81, 0x14, 0x70, 0x40, 0xd6, 0x1c, 0xe2, 0x28, 0xdf, 0x63, 0x97,
  4896. 0x47, 0xfe, 0x6a, 0xb7, 0xa3, 0x5e, 0xe2, 0x73, 0x46, 0xf1, 0xd7, 0x71, 0x40, 0xf4, 0x86, 0x43,
  4897. 0x1c, 0x0d, 0xa5, 0x38, 0x49, 0x15, 0x96, 0xd9, 0xef, 0x9f, 0xaa, 0xc2, 0xb3, 0x9b, 0xe2, 0xd0,
  4898. 0xbc, 0x70, 0xcb, 0x26, 0x3e, 0x66, 0xa1, 0xfc, 0x80, 0x8b, 0x08, 0x79, 0x89, 0x44, 0x9e, 0xe3,
  4899. 0xe3, 0x28, 0x92, 0x24, 0x23, 0x21, 0xc1, 0xe2, 0xf8, 0xe1, 0x69, 0x12, 0x3c, 0x8c, 0x24, 0x03,
  4900. 0xda, 0x60, 0x81, 0x1b, 0xec, 0xa0, 0x1d, 0x12, 0xdc, 0x28, 0x18, 0x2c, 0x96, 0x1f, 0x71, 0xa1,
  4901. 0x1b, 0xdd, 0x8e, 0x7a, 0x3d, 0x21, 0x44, 0x38, 0x4c, 0xaf, 0x3b, 0x51, 0x48, 0xfd, 0xe8, 0x7d,
  4902. 0x54, 0x59, 0x78, 0x3f, 0x3e, 0x87, 0x2a, 0x8f, 0xb2, 0x1f, 0x1d, 0xbe, 0x07, 0xa6, 0xe9, 0x99,
  4903. 0x3c, 0xc9, 0xdd, 0x3f, 0x73, 0xe9, 0x0b, 0x84, 0x9d, 0x61, 0x21, 0x73, 0x09, 0xbc, 0xc8, 0x67,
  4904. 0xe1, 0xfc, 0xeb, 0x14, 0x7e, 0x74, 0x01, 0x89, 0x78, 0xf8, 0x0e, 0x98, 0xa2, 0xe3, 0x38, 0x5f,
  4905. 0xff, 0xce, 0xa5, 0x9f, 0x67, 0x46, 0xef, 0x65, 0x4b, 0x44, 0x0b, 0x64, 0x36, 0xf7, 0x7f, 0x06,
  4906. 0x93, 0xa3, 0xcb, 0x40, 0x40, 0xc3, 0x12, 0x98, 0xa7, 0xc3, 0x64, 0x8e, 0xbe, 0xc9, 0xa5, 0x9f,
  4907. 0x3f, 0x26, 0x91, 0xc9, 0x50, 0x96, 0x9a, 0xd1, 0x63, 0x21, 0xfd, 0xf7, 0x4c, 0x3d, 0x1e, 0x59,
  4908. 0x96, 0x4a, 0x6f, 0xf6, 0x44, 0x45, 0xfe, 0xc3, 0x48, 0x7a, 0x75, 0x61, 0xe4, 0x8e, 0x37, 0x36,
  4909. 0x51, 0xac, 0xdf, 0x4a, 0x15, 0x97, 0x3f, 0x9e, 0xbb, 0xba, 0xfc, 0x7c, 0x3a, 0xee, 0x47, 0xe8,
  4910. 0xdd, 0x4c, 0xd7, 0x46, 0xef, 0x66, 0x29, 0x7d, 0x37, 0xd3, 0x8d, 0x88, 0xee, 0xe6, 0x08, 0x03,
  4911. 0x5f, 0x05, 0xe3, 0x25, 0x4c, 0x3e, 0xf2, 0x83, 0xe7, 0xbc, 0x20, 0xe6, 0x61, 0xb7, 0xa3, 0xce,
  4912. 0x72, 0xb8, 0xc7, 0x1d, 0x1a, 0x8a, 0x21, 0xf0, 0x26, 0x18, 0x61, 0x95, 0x83, 0x6f, 0x91, 0x70,
  4913. 0x43, 0xf1, 0x52, 0xc1, 0x9c, 0xb0, 0x00, 0x66, 0xd7, 0x70, 0xd3, 0x39, 0xb6, 0x1c, 0x82, 0xbd,
  4914. 0xfa, 0xf1, 0x56, 0xc8, 0xaa, 0xd4, 0x8c, 0x78, 0x2d, 0x34, 0xa8, 0x5f, 0x6f, 0x72, 0x80, 0x7e,
  4915. 0x10, 0x6a, 0x28, 0x45, 0x81, 0xdf, 0x06, 0x72, 0xd2, 0x82, 0x0e, 0x59, 0xbd, 0x9a, 0x11, 0xeb,
  4916. 0x55, 0x5a, 0x46, 0x0f, 0x0e, 0x35, 0x94, 0xe1, 0xc1, 0x0f, 0xc0, 0xe2, 0x76, 0xab, 0xe1, 0x10,
  4917. 0xdc, 0x48, 0xc5, 0x35, 0xc3, 0x04, 0x6f, 0x76, 0x3b, 0xaa, 0xca, 0x05, 0xdb, 0x1c, 0xa6, 0x67,
  4918. 0xe3, 0xeb, 0xaf, 0x00, 0xdf, 0x00, 0x00, 0xf9, 0x6d, 0xaf, 0x61, 0xb9, 0x07, 0x2e, 0x51, 0x16,
  4919. 0x97, 0xa5, 0x95, 0xd1, 0xfc, 0xc5, 0x6e, 0x47, 0x85, 0x5c, 0x2f, 0xa0, 0x3e, 0xbd, 0x49, 0x9d,
  4920. 0x1a, 0x12, 0x90, 0x30, 0x0f, 0x66, 0xcd, 0x23, 0x97, 0x94, 0xbd, 0x82, 0x13, 0x62, 0x5a, 0x60,
  4921. 0x95, 0x8b, 0x99, 0x6a, 0x74, 0xe4, 0x12, 0xdd, 0xf7, 0x74, 0x5a, 0x94, 0xdb, 0x01, 0xd6, 0x50,
  4922. 0x8a, 0x01, 0xdf, 0x06, 0x53, 0xa6, 0xe7, 0xec, 0x34, 0x71, 0xa5, 0x15, 0xf8, 0xbb, 0xca, 0x25,
  4923. 0x26, 0x70, 0xa9, 0xdb, 0x51, 0x17, 0x22, 0x01, 0xe6, 0xd4, 0x5b, 0xd4, 0x4b, 0xab, 0x6a, 0x0f,
  4924. 0x4b, 0x2b, 0x32, 0x95, 0x61, 0x8b, 0xd9, 0x0a, 0x15, 0x95, 0xed, 0x83, 0x70, 0x4c, 0xeb, 0xac,
  4925. 0x88, 0xb3, 0x4d, 0xa0, 0x8b, 0x17, 0xc1, 0x74, 0x5a, 0x3a, 0xac, 0xee, 0xb7, 0x77, 0x77, 0x9b,
  4926. 0x58, 0x59, 0x4e, 0x4f, 0xcb, 0xb8, 0x21, 0xf7, 0x46, 0xd4, 0x08, 0x0b, 0x5f, 0x06, 0xa3, 0x74,
  4927. 0x18, 0x2a, 0x37, 0x68, 0x4b, 0x9b, 0x97, 0xbb, 0x1d, 0x75, 0xba, 0x47, 0x0a, 0x35, 0xc4, 0xdd,
  4928. 0x70, 0x53, 0xe8, 0x56, 0x0a, 0xfe, 0xc1, 0x81, 0xe3, 0x35, 0x42, 0x45, 0x63, 0x9c, 0xeb, 0xdd,
  4929. 0x8e, 0x7a, 0x39, 0xdd, 0xad, 0xd4, 0x23, 0x8c, 0xd8, 0xac, 0xc4, 0x3c, 0x7a, 0x1c, 0x51, 0xdb,
  4930. 0xf3, 0x70, 0x70, 0xd2, 0x70, 0xdd, 0x4e, 0x57, 0xa9, 0x80, 0xf9, 0xc5, 0x96, 0x2b, 0x45, 0x81,
  4931. 0x45, 0x20, 0x9b, 0x47, 0x04, 0x07, 0x9e, 0xd3, 0x3c, 0x91, 0x59, 0x65, 0x32, 0x42, 0x40, 0x38,
  4932. 0x42, 0x88, 0x42, 0x19, 0x1a, 0xbc, 0x07, 0x26, 0xab, 0x24, 0xc0, 0x61, 0x88, 0x83, 0x50, 0xc1,
  4933. 0x6c, 0x51, 0x17, 0xba, 0x1d, 0x55, 0x8e, 0x2e, 0x88, 0xd8, 0xa5, 0xa1, 0x1e, 0x0c, 0xde, 0x05,
  4934. 0x13, 0x85, 0x7d, 0x5c, 0x7f, 0x4e, 0x29, 0xbb, 0x8c, 0x22, 0x3c, 0xd5, 0xf5, 0xc8, 0xa3, 0xa1,
  4935. 0x13, 0x10, 0x2d, 0x89, 0x9c, 0xbd, 0x89, 0x8f, 0x59, 0x1f, 0xcf, 0x9a, 0xa6, 0x51, 0xf1, 0x7c,
  4936. 0xf1, 0x99, 0xd8, 0x55, 0x1b, 0xba, 0x1f, 0x63, 0x0d, 0x25, 0x19, 0xf0, 0x31, 0x80, 0x09, 0x83,
  4937. 0xe5, 0x04, 0x7b, 0x98, 0x77, 0x4d, 0xa3, 0xf9, 0xe5, 0x6e, 0x47, 0xbd, 0xd6, 0x57, 0x47, 0x6f,
  4938. 0x52, 0x9c, 0x86, 0xfa, 0x90, 0xe1, 0x53, 0x70, 0xa1, 0x67, 0x6d, 0xef, 0xee, 0xba, 0x47, 0xc8,
  4939. 0xf1, 0xf6, 0xb0, 0xf2, 0x39, 0x17, 0xd5, 0xba, 0x1d, 0x75, 0x29, 0x2b, 0xca, 0x80, 0x7a, 0x40,
  4940. 0x91, 0x1a, 0xea, 0x2b, 0x00, 0x1d, 0x70, 0xa9, 0x9f, 0xdd, 0x3e, 0xf2, 0x94, 0x2f, 0xb8, 0xf6,
  4941. 0xcb, 0xdd, 0x8e, 0xaa, 0x9d, 0xaa, 0xad, 0x93, 0x23, 0x4f, 0x43, 0x83, 0x74, 0xe0, 0x06, 0x98,
  4942. 0x3b, 0x71, 0xd9, 0x47, 0x5e, 0xb9, 0x15, 0x2a, 0x5f, 0x72, 0x69, 0xe1, 0x04, 0x08, 0xd2, 0xe4,
  4943. 0xc8, 0xd3, 0xfd, 0x56, 0xa8, 0xa1, 0x34, 0x0d, 0xbe, 0x1f, 0xe7, 0x86, 0x17, 0xf7, 0x90, 0x77,
  4944. 0x90, 0xa3, 0x62, 0x01, 0x8e, 0x74, 0x78, 0x5b, 0x10, 0x9e, 0xa4, 0x26, 0x22, 0xc0, 0xd7, 0xe3,
  4945. 0x23, 0xf4, 0xb8, 0x52, 0xe5, 0xbd, 0xe3, 0xa8, 0xf8, 0x0e, 0x10, 0xb1, 0x3f, 0x6c, 0xf5, 0x0e,
  4946. 0xd1, 0xe3, 0x4a, 0x55, 0xfb, 0x66, 0x86, 0x77, 0x9b, 0xf4, 0x16, 0xef, 0xbd, 0x7e, 0x8a, 0xb7,
  4947. 0xb8, 0xe7, 0x1c, 0x60, 0x0d, 0x31, 0xa7, 0x58, 0x47, 0x86, 0xcf, 0x51, 0x47, 0x56, 0xc1, 0xd8,
  4948. 0x53, 0xc3, 0xa2, 0xe8, 0x5c, 0xba, 0x8c, 0x7c, 0xe4, 0x34, 0x39, 0x38, 0x42, 0xc0, 0x32, 0x58,
  4949. 0xd8, 0xc0, 0x4e, 0x40, 0x76, 0xb0, 0x43, 0x8a, 0x1e, 0xc1, 0xc1, 0xa1, 0xd3, 0x8c, 0xaa, 0x44,
  4950. 0x4e, 0xdc, 0xcd, 0xfd, 0x18, 0xa4, 0xbb, 0x11, 0x4a, 0x43, 0xfd, 0x98, 0xb0, 0x08, 0xe6, 0xcd,
  4951. 0x26, 0xae, 0xd3, 0x17, 0x78, 0xdb, 0x3d, 0xc0, 0x7e, 0x9b, 0x6c, 0x85, 0xac, 0x5a, 0xe4, 0xc4,
  4952. 0xa7, 0x1c, 0x47, 0x10, 0x9d, 0x70, 0x8c, 0x86, 0xb2, 0x2c, 0xfa, 0xa0, 0x5b, 0x6e, 0x48, 0xb0,
  4953. 0x27, 0xbc, 0x80, 0x2f, 0xa6, 0x6f, 0x9e, 0x26, 0x43, 0xc4, 0x2d, 0x7e, 0x3b, 0x68, 0x86, 0x1a,
  4954. 0xca, 0xd0, 0x20, 0x02, 0x0b, 0x46, 0xe3, 0x10, 0x07, 0xc4, 0x0d, 0xb1, 0xa0, 0x76, 0x91, 0xa9,
  4955. 0x09, 0x0f, 0x90, 0x13, 0x83, 0x92, 0x82, 0xfd, 0xc8, 0xf0, 0xed, 0xb8, 0xd5, 0x35, 0xda, 0xc4,
  4956. 0xb7, 0xad, 0x6a, 0x74, 0xeb, 0x0b, 0xb9, 0x71, 0xda, 0xc4, 0xd7, 0x09, 0x15, 0x48, 0x22, 0xe9,
  4957. 0x3d, 0xd8, 0x6b, 0xbd, 0x8d, 0x36, 0xd9, 0x57, 0x14, 0xc6, 0x1d, 0xd0, 0xad, 0x3b, 0xed, 0x54,
  4958. 0xb7, 0x4e, 0x29, 0xf0, 0x5b, 0xa2, 0xc8, 0xba, 0xdb, 0xc4, 0xca, 0x65, 0x96, 0x6e, 0xe1, 0x06,
  4959. 0x63, 0xec, 0x5d, 0x97, 0x5e, 0xfe, 0x29, 0x6c, 0x2f, 0xfa, 0x4d, 0x7c, 0xcc, 0xc8, 0x57, 0xd2,
  4960. 0x27, 0x8b, 0x3e, 0x39, 0x9c, 0x9b, 0x44, 0x42, 0x2b, 0xd3, 0x4a, 0x33, 0x81, 0xab, 0xe9, 0x46,
  4961. 0x5f, 0x68, 0xd3, 0xb8, 0x4e, 0x3f, 0x1a, 0xdd, 0x0b, 0x9e, 0x2e, 0xda, 0xc3, 0xb1, 0xac, 0xa8,
  4962. 0x2c, 0x2b, 0xc2, 0x5e, 0x44, 0x39, 0x66, 0xbd, 0x1f, 0x4f, 0x48, 0x8a, 0x02, 0x6d, 0x30, 0x7f,
  4963. 0x92, 0xa2, 0x13, 0x9d, 0x65, 0xa6, 0x23, 0xdc, 0x36, 0xae, 0xe7, 0x12, 0xd7, 0x69, 0xea, 0xbd,
  4964. 0x2c, 0x0b, 0x92, 0x59, 0x01, 0x5a, 0x9a, 0xe9, 0xff, 0x71, 0x7e, 0x6f, 0xb0, 0x1c, 0xa5, 0xfb,
  4965. 0xe3, 0x5e, 0x92, 0x45, 0x30, 0x7d, 0x41, 0x65, 0x9d, 0x7a, 0x32, 0xcd, 0x1a, 0x93, 0x10, 0x0e,
  4966. 0x1c, 0x6f, 0xef, 0x33, 0xb9, 0xee, 0xc3, 0xa5, 0x1d, 0x6d, 0xdc, 0xfb, 0xb3, 0xfd, 0xbe, 0x39,
  4967. 0xf8, 0x55, 0x81, 0x6f, 0x77, 0x02, 0x1e, 0x2f, 0x26, 0x4e, 0xf7, 0x4b, 0x03, 0x9b, 0x7d, 0x4e,
  4968. 0x16, 0xc1, 0x70, 0x2b, 0xd5, 0x9c, 0x33, 0x85, 0x5b, 0x67, 0xf5, 0xe6, 0x5c, 0x28, 0xcb, 0xa4,
  4969. 0x1d, 0x57, 0x91, 0xa7, 0xa2, 0xd0, 0x6c, 0xb3, 0x2f, 0x77, 0xb7, 0xd3, 0x67, 0x27, 0x4e, 0x55,
  4970. 0x9d, 0x03, 0x34, 0x94, 0x62, 0xd0, 0x27, 0x3a, 0x69, 0xa9, 0x12, 0x87, 0xe0, 0xa8, 0x11, 0x10,
  4971. 0x36, 0x38, 0x25, 0xa4, 0x87, 0x14, 0xa6, 0xa1, 0x7e, 0xe4, 0xac, 0xa6, 0xed, 0x3f, 0xc7, 0x9e,
  4972. 0xf2, 0xca, 0x59, 0x9a, 0x84, 0xc2, 0x32, 0x9a, 0x8c, 0x0c, 0x1f, 0x82, 0x99, 0xf8, 0xf5, 0xa0,
  4973. 0xe0, 0xb7, 0x3d, 0xa2, 0xdc, 0x67, 0x77, 0xa1, 0x58, 0x60, 0xe2, 0xf7, 0x90, 0x3a, 0xf5, 0xd3,
  4974. 0x02, 0x23, 0xe2, 0xa1, 0x05, 0xe6, 0x1f, 0xb7, 0x7d, 0xe2, 0xe4, 0x9d, 0xfa, 0x73, 0xec, 0x35,
  4975. 0xf2, 0xc7, 0x04, 0x87, 0xca, 0xeb, 0x4c, 0x44, 0x68, 0xbf, 0x3f, 0xa4, 0x10, 0x7d, 0x87, 0x63,
  4976. 0xf4, 0x1d, 0x0a, 0xd2, 0x50, 0x96, 0x48, 0x4b, 0x49, 0x25, 0xc0, 0x4f, 0x7c, 0x82, 0x95, 0x87,
  4977. 0xe9, 0xeb, 0xaa, 0x15, 0x60, 0xfd, 0xd0, 0xa7, 0xbb, 0x13, 0x63, 0xc4, 0x1d, 0xf1, 0x83, 0xa0,
  4978. 0xdd, 0x22, 0xac, 0xab, 0x51, 0xde, 0x4f, 0x1f, 0xe3, 0x93, 0x1d, 0xe1, 0x28, 0x9d, 0xf5, 0x41,
  4979. 0xc2, 0x8e, 0x08, 0xe4, 0xd5, 0x9f, 0xe6, 0x84, 0xef, 0xc0, 0x70, 0x0e, 0x4c, 0x95, 0xca, 0x76,
  4980. 0xad, 0x6a, 0x1b, 0xc8, 0x36, 0xd7, 0xe4, 0x21, 0x78, 0x11, 0xc0, 0x62, 0xa9, 0x68, 0x17, 0x0d,
  4981. 0x8b, 0x1b, 0x6b, 0xa6, 0x5d, 0x58, 0x93, 0x01, 0x94, 0xc1, 0x34, 0x32, 0x05, 0xcb, 0x14, 0xb5,
  4982. 0x54, 0x8b, 0x8f, 0x6c, 0x13, 0x6d, 0x71, 0xcb, 0x05, 0xb8, 0x0c, 0xae, 0x55, 0x8b, 0x8f, 0x1e,
  4983. 0x6f, 0x17, 0x39, 0xa6, 0x66, 0x94, 0xd6, 0x6a, 0xc8, 0xdc, 0x2a, 0x3f, 0x31, 0x6b, 0x6b, 0x86,
  4984. 0x6d, 0xc8, 0x8b, 0x70, 0x1e, 0xcc, 0x54, 0x8d, 0x27, 0x66, 0xad, 0x5a, 0x32, 0x2a, 0xd5, 0x8d,
  4985. 0xb2, 0x2d, 0x2f, 0xc1, 0x1b, 0xe0, 0x3a, 0x15, 0x2e, 0x23, 0xb3, 0x16, 0x4f, 0xb0, 0x8e, 0xca,
  4986. 0x5b, 0x3d, 0x88, 0x0a, 0x2f, 0x83, 0xc5, 0xfe, 0xae, 0x65, 0xca, 0xce, 0x4c, 0x69, 0xa0, 0xc2,
  4987. 0x46, 0x31, 0x9e, 0x73, 0x05, 0xde, 0x05, 0xaf, 0x9c, 0x16, 0x15, 0x1b, 0x57, 0xed, 0x72, 0xa5,
  4988. 0x66, 0x3c, 0x32, 0x4b, 0xb6, 0x7c, 0x1b, 0x5e, 0x07, 0x97, 0xf3, 0x96, 0x51, 0xd8, 0xdc, 0x28,
  4989. 0x5b, 0x66, 0xad, 0x62, 0x9a, 0xa8, 0x56, 0x29, 0x23, 0xbb, 0x66, 0x3f, 0xab, 0xa1, 0x67, 0x72,
  4990. 0x03, 0xaa, 0xe0, 0xea, 0x76, 0x69, 0x30, 0x00, 0xc3, 0x2b, 0x60, 0x71, 0xcd, 0xb4, 0x8c, 0x0f,
  4991. 0x32, 0xae, 0x17, 0x12, 0xbc, 0x06, 0x2e, 0x6d, 0x97, 0xfa, 0x7b, 0x3f, 0x95, 0x56, 0xff, 0x0e,
  4992. 0xc0, 0x08, 0xed, 0xfb, 0xa1, 0x02, 0x2e, 0xc4, 0x7b, 0x5b, 0x2e, 0x99, 0xb5, 0xf5, 0xb2, 0x65,
  4993. 0x95, 0x9f, 0x9a, 0x48, 0x1e, 0x8a, 0x56, 0x93, 0xf1, 0xd4, 0xb6, 0x4b, 0x76, 0xd1, 0xaa, 0xd9,
  4994. 0xa8, 0xf8, 0xe8, 0x91, 0x89, 0x7a, 0x3b, 0x24, 0x41, 0x08, 0x66, 0x63, 0x82, 0x65, 0x1a, 0x6b,
  4995. 0x26, 0x92, 0x87, 0xe1, 0x6d, 0x70, 0x2b, 0x69, 0x1b, 0x44, 0xcf, 0x89, 0xf4, 0xc7, 0xdb, 0x65,
  4996. 0xb4, 0xbd, 0x25, 0x8f, 0xd0, 0x43, 0x13, 0xdb, 0x0c, 0xcb, 0x92, 0x47, 0xe1, 0x4d, 0xa0, 0xc6,
  4997. 0x5b, 0x2c, 0xec, 0x6e, 0x22, 0x72, 0x00, 0x1f, 0x80, 0x37, 0xce, 0x00, 0x0d, 0x8a, 0x62, 0x8a,
  4998. 0xa6, 0xa4, 0x0f, 0x37, 0x5a, 0xcf, 0x34, 0x7c, 0x1d, 0xbc, 0x36, 0xd0, 0x3d, 0x48, 0x74, 0x06,
  4999. 0xae, 0x83, 0x7c, 0x1f, 0x16, 0x5f, 0x65, 0x64, 0xe1, 0xe7, 0x32, 0x12, 0x8a, 0xa9, 0xd1, 0x21,
  5000. 0x2c, 0x20, 0xc3, 0x2e, 0x6c, 0xc8, 0xb3, 0x70, 0x15, 0xbc, 0x3c, 0xf0, 0x38, 0x24, 0x37, 0xa1,
  5001. 0x01, 0x0d, 0xf0, 0xee, 0xf9, 0xb0, 0x83, 0xc2, 0xc6, 0xf0, 0x25, 0xb0, 0x3c, 0x58, 0x22, 0xda,
  5002. 0x92, 0x5d, 0xf8, 0x0e, 0x78, 0xf3, 0x2c, 0xd4, 0xa0, 0x29, 0xf6, 0x4e, 0x9f, 0x22, 0x3a, 0x06,
  5003. 0xfb, 0xf4, 0xd9, 0x1b, 0x8c, 0xa2, 0x07, 0xc3, 0x85, 0xff, 0x07, 0xb4, 0xbe, 0x87, 0x3d, 0xb9,
  5004. 0x2d, 0x2f, 0x24, 0x78, 0x07, 0xdc, 0x46, 0x46, 0x69, 0xad, 0xbc, 0x55, 0x3b, 0x07, 0xfe, 0x53,
  5005. 0x09, 0xbe, 0x07, 0xde, 0x3e, 0x1b, 0x38, 0x68, 0x81, 0x9f, 0x49, 0xd0, 0x04, 0xef, 0x9f, 0x7b,
  5006. 0xbe, 0x41, 0x32, 0x9f, 0x4b, 0xf0, 0x06, 0xb8, 0xd6, 0x9f, 0x1f, 0xe5, 0xe1, 0x0b, 0x09, 0xae,
  5007. 0x80, 0x9b, 0xa7, 0xce, 0x14, 0x21, 0xbf, 0x94, 0xe0, 0x5b, 0xe0, 0xfe, 0x69, 0x90, 0x41, 0x61,
  5008. 0xfc, 0x5a, 0x82, 0x0f, 0xc1, 0x83, 0x73, 0xcc, 0x31, 0x48, 0xe0, 0x37, 0xa7, 0xac, 0x23, 0x4a,
  5009. 0xf6, 0x57, 0x67, 0xaf, 0x23, 0x42, 0xfe, 0x56, 0x82, 0x4b, 0xe0, 0x72, 0x7f, 0x08, 0x3d, 0x13,
  5010. 0xbf, 0x93, 0xe0, 0x2d, 0xb0, 0x7c, 0xaa, 0x12, 0x85, 0xfd, 0x5e, 0x82, 0x0a, 0x58, 0x28, 0x95,
  5011. 0x6b, 0xeb, 0x46, 0xd1, 0xaa, 0x3d, 0x2d, 0xda, 0x1b, 0xb5, 0xaa, 0x8d, 0xcc, 0x6a, 0x55, 0xfe,
  5012. 0xc5, 0x30, 0x0d, 0x25, 0xe1, 0x29, 0x95, 0x23, 0x67, 0x6d, 0xbd, 0x8c, 0x6a, 0x56, 0xf1, 0x89,
  5013. 0x59, 0xa2, 0xc8, 0x4f, 0x86, 0xe1, 0x1c, 0x00, 0x14, 0x56, 0x29, 0x17, 0x4b, 0x76, 0x55, 0xfe,
  5014. 0x6e, 0x0e, 0xce, 0x80, 0x09, 0xf3, 0x99, 0x6d, 0xa2, 0x92, 0x61, 0xc9, 0xff, 0xc8, 0xad, 0x1e,
  5015. 0x80, 0x89, 0xf8, 0xd3, 0x02, 0x1c, 0x03, 0xc3, 0x9b, 0x4f, 0xe4, 0x21, 0x38, 0x09, 0x46, 0x2d,
  5016. 0xd3, 0xa8, 0x9a, 0xb2, 0x04, 0x17, 0xc0, 0x9c, 0x69, 0x99, 0x05, 0xbb, 0x58, 0x2e, 0xd5, 0xd0,
  5017. 0x76, 0xa9, 0xc4, 0x2e, 0x4f, 0x19, 0x4c, 0x3f, 0xa5, 0x4f, 0x7e, 0x6c, 0xc9, 0xc1, 0x45, 0x30,
  5018. 0x6f, 0x95, 0x0b, 0x9b, 0x35, 0x64, 0x14, 0x4c, 0x14, 0x9b, 0x47, 0x28, 0x90, 0x09, 0xc5, 0x96,
  5019. 0xd1, 0xd5, 0x3c, 0x18, 0x8f, 0xbe, 0x4b, 0xc0, 0x29, 0x30, 0xbe, 0xf9, 0xa4, 0xb6, 0x61, 0x54,
  5020. 0x37, 0xe4, 0xa1, 0x1e, 0xd2, 0x7c, 0x56, 0x29, 0x22, 0x3a, 0x33, 0x00, 0x63, 0x27, 0x13, 0x4e,
  5021. 0x83, 0x89, 0x52, 0xb9, 0x56, 0xd8, 0x30, 0x0b, 0x9b, 0x72, 0xee, 0xde, 0x43, 0x30, 0x69, 0x07,
  5022. 0x8e, 0x17, 0xb6, 0xfc, 0x80, 0xc0, 0x7b, 0xe2, 0x60, 0x36, 0xfa, 0x3a, 0x1a, 0xfd, 0xe0, 0x7b,
  5023. 0x65, 0xee, 0x64, 0xcc, 0x7f, 0x0b, 0xd4, 0x86, 0x56, 0xa4, 0xd7, 0xa4, 0xfc, 0x85, 0x17, 0x7f,
  5024. 0x59, 0x1a, 0x7a, 0xf1, 0xf5, 0x92, 0xf4, 0xd5, 0xd7, 0x4b, 0xd2, 0x9f, 0xbf, 0x5e, 0x92, 0x7e,
  5025. 0xf2, 0xd7, 0xa5, 0xa1, 0x9d, 0x31, 0xf6, 0x83, 0xf1, 0xfd, 0xff, 0x05, 0x00, 0x00, 0xff, 0xff,
  5026. 0x5c, 0x9f, 0x8c, 0x37, 0x79, 0x1e, 0x00, 0x00,
  5027. }