rpc.pb.go 152 KB

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