[ https://issues.apache.org/jira/browse/GEODE-5278?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
nabarun closed GEODE-5278. -------------------------- > Unexpected CommitConflictException caused by faulty region synchronization > -------------------------------------------------------------------------- > > Key: GEODE-5278 > URL: https://issues.apache.org/jira/browse/GEODE-5278 > Project: Geode > Issue Type: Bug > Components: regions > Reporter: Bruce Schuchardt > Assignee: Bruce Schuchardt > Priority: Major > Labels: pull-request-available > Fix For: 1.7.0 > > Time Spent: 1h > Remaining Estimate: 0h > > I was running tests for another ticket and found that several times my test > failed with a weird CommitConflictException. I traced this down to faulty > region-synchronization code. When a server crashes other members exchange > version vector information about the crashed server in order to recover > operations that may have only reached a subset of the servers. This is > supposed to return only region entries concerning the crashed server but I > noticed it also returned all entries modified by the requesting server as > well. > {noformat} > before the transaction begins we have v48 of key Object_194: > bridgegemfire5_2643/system.log: [fine 2018/05/31 22:28:14.813 PDT > bridgegemfire5_trout_2643 <ServerConnection on port 29940 Thread 8> tid=0x83] > generated tag {v48; rv220; ds=1; time=1527830894813}; key=Object_194; > oldvalue=util.QueryObject with id 1775 (contains 1 levels, > aPrimitiveLong=-197) newvalue=util.QueryObject with id 1780 (contains 1 > levels, aPrimitiveLong=197) client=edgegemfire1_trout_377 region=/testRegion; > rvv=RegionVersionVector{rv220 gc0}@2057394665 > server "bridge5" begins a GII sync with "bridge4" for loss of server "bridge2" > bridgegemfire5_2643/system.log: [fine 2018/05/31 22:28:15.144 PDT > bridgegemfire5_trout_2643 <Pooled Waiting Message Processor 2> tid=0x7d] > Sending (InitialImageOperation$RequestImageMessage(region path='/testRegion'; > sender=trout(bridgegemfire5_trout_2643:2643)<ec><v12>:1028; keysOnly=false; > processorId=712; waitForInit=false; checkTombstoneVersions=false; > lostMember=trout(bridgegemfire2_trout_3364:3364)<ec><v15>:1025; > versionVector=RegionVersionVector[trout(bridgegemfire5_trout_2643:2643)<ec><v12>:1028={rv-1 > gc0 localVersion=0 local exceptions=[]} > others={trout(bridgegemfire2_trout_3364:3364)<ec><v15>:1025={rv-1 bsv1 > bs=[]}, gc={}]; unfinished keys=null)) to 1 peers > ([trout(bridgegemfire4_trout_3956:3956)<ec><v17>:1029]) via tcp/ip > the transaction begins > bridgegemfire5_2643/system.log: [fine 2018/05/31 22:28:15.201 PDT > bridgegemfire5_trout_2643 <ServerConnection on port 29940 Thread 8> tid=0x83] > Server connection from > [identity(trout(edgegemfire1_trout_377:377:loner):44872:32e1cab9:edgegemfire1_trout_377,connection=1; > port=46982]: Received 7.0 get request (31 bytes) from /10.118.26.122:46982 > timeout: 0 for region /testRegion key Object_194 txId 105 > bridge5 gets back an odd result - the sync GII should only have entries > modified by "bridge2" but it has stuff from "bridge5", including Object_194 > with the same revision as bridge5 already contains > bridgegemfire5_2643/system.log: [fine 2018/05/31 22:28:15.203 PDT > bridgegemfire5_trout_2643 <Pooled High Priority Message Processor 4> > tid=0x70] processed these initial image keys: [Object_179,v={v1; rv42; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830690427; > remote}, Object_185,v={v1; rv63; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830691143; > remote}, Object_190,v={v1; rv74; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830691522; > remote}, Object_228,v={v1; rv133; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830760434; > remote}, Object_257,v={v1; rv181; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830829825; > remote}, Object_269,v={v1; rv199; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830830324; > remote}, Object_151,v={v1; rv1; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830689202; > remote}, Object_212,v={v1; rv109; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830759779; > remote}, Object_204,v={v1; rv99; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830759529; > remote}, Object_163,v={v1; rv16; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830689717; > remote}, Object_256,v={v1; rv179; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830829744; > remote}, Object_251,v={v1; rv171; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830829527; > remote}, Object_193,v={v1; rv81; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830758973; > remote}, Object_220,v={v1; rv121; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830760065; > remote}, Object_215,v={v1; rv115; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830759925; > remote}, Object_214,v={v1; rv114; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830759907; > remote}, Object_201,v={v1; rv94; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830759401; > remote}, Object_166,v={v1; rv23; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830689938; > remote}, Object_210,v={v1; rv105; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830759683; > remote}, Object_211,v={v1; rv108; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830759746; > remote}, Object_238,v={v1; rv150; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830760864; > remote}, Object_216,v={v1; rv116; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830759951; > remote}, Object_195,v={v1; rv83; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830759044; > remote}, Object_253,v={v1; rv176; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830829673; > remote}, Object_160,v={v1; rv13; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830689629; > remote}, Object_186,v={v1; rv65; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830691241; > remote}, Object_245,v={v1; rv162; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830829291; > remote}, Object_178,v={v1; rv41; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830690410; > remote}, Object_280,v={v1; rv213; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830830684; > remote}, Object_249,v={v1; rv169; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830829454; > remote}, Object_206,v={v1; rv101; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830759581; > remote}, Object_156,v={v1; rv9; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830689528; > remote}, Object_157,v={v1; rv10; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830689555; > remote}, Object_287,v={v1; rv222; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830895187; > remote}, Object_205,v={v1; rv100; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830759554; > remote}, Object_203,v={v1; rv96; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830759464; > remote}, Object_189,v={v1; rv72; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830691452; > remote}, Object_184,v={v1; rv54; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830690752; > remote}, Object_209,v={v1; rv104; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830759660; > remote}, Object_159,v={v1; rv12; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830689605; > remote}, Object_164,v={v1; rv20; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830689836; > remote}, Object_235,v={v1; rv147; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830760800; > remote}, Object_202,v={v1; rv95; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830759432; > remote}, Object_254,v={v1; rv177; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830829693; > remote}, Object_230,v={v1; rv138; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830760570; > remote}, Object_167,v={v1; rv24; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830689960; > remote}, Object_171,v={v1; rv30; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830690121; > remote}, Object_237,v={v1; rv149; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830760844; > remote}, Object_277,v={v1; rv208; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830830566; > remote}, Object_182,v={v1; rv48; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830690561; > remote}, Object_234,v={v1; rv145; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830760760; > remote}, Object_255,v={v1; rv178; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830829720; > remote}, Object_229,v={v1; rv135; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830760488; > remote}, Object_263,v={v1; rv190; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830830096; > remote}, Object_221,v={v1; rv122; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830760084; > remote}, Object_224,v={v1; rv128; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830760292; > remote}, Object_225,v={v1; rv130; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830760337; > remote}, Object_196,v={v1; rv85; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830759153; > remote}, Object_162,v={v1; rv15; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830689677; > remote}, Object_192,v={v1; rv80; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830758895; > remote}, Object_180,v={v1; rv43; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830690449; > remote}, Object_232,v={v1; rv142; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830760678; > remote}, Object_243,v={v1; rv160; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830829243; > remote}, Object_261,v={v1; rv186; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830829991; > remote}, Object_240,v={v1; rv156; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830829088; > remote}, Object_161,v={v1; rv14; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830689655; > remote}, Object_200,v={v1; rv92; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830759343; > remote}, Object_154,v={v1; rv7; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830689469; > remote}, Object_165,v={v1; rv22; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830689914; > remote}, Object_244,v={v1; rv161; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830829267; > remote}, Object_267,v={v1; rv197; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830830284; > remote}, Object_279,v={v1; rv211; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830830633; > remote}, Object_226,v={v1; rv131; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830760357; > remote}, Object_199,v={v1; rv91; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830759323; > remote}, Object_223,v={v1; rv125; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830760215; > remote}, Object_271,v={v1; rv201; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830830372; > remote}, Object_265,v={v1; rv195; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830830248; > remote}, Object_276,v={v1; rv207; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830830533; > remote}, Object_194,v={v48; rv220; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830894818; > remote}, Object_272,v={v1; rv202; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830830390; > remote}, Object_207,v={v1; rv102; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830759622; > remote}, Object_246,v={v1; rv163; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830829319; > remote}, Object_172,v={v1; rv33; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830690226; > remote}, Object_275,v={v1; rv206; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830830510; > remote}, Object_248,v={v1; rv167; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830829408; > remote}, Object_198,v={v1; rv90; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830759293; > remote}, Object_218,v={v1; rv118; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830759992; > remote}, Object_174,v={v1; rv36; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830690302; > remote}, Object_222,v={v1; rv123; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830760104; > remote}, Object_173,v={v1; rv34; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830690251; > remote}, Object_278,v={v1; rv209; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830830586; > remote}, Object_236,v={v1; rv148; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830760824; > remote}, Object_286,v={v1; rv221; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830895167; > remote}, Object_191,v={v1; rv78; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830691638; > remote}, Object_233,v={v1; rv144; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830760724; > remote}, Object_268,v={v1; rv198; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830830302; > remote}, Object_175,v={v1; rv37; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830690322; > remote}, Object_281,v={v1; rv214; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830830705; > remote}, Object_152,v={v1; rv3; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830689330; > remote}, Object_208,v={v1; rv103; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830759641; > remote}, Object_170,v={v1; rv29; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830690087; > remote}, Object_187,v={v1; rv68; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830691342; > remote}, Object_266,v={v1; rv196; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830830265; > remote}, Object_227,v={v1; rv132; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830760386; > remote}, Object_270,v={v1; rv200; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830830355; > remote}, Object_169,v={v1; rv28; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830690065; > remote}, Object_282,v={v1; rv215; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830830727; > remote}, Object_260,v={v1; rv185; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830829968; > remote}, Object_213,v={v1; rv111; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830759825; > remote}, Object_274,v={v1; rv205; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830830465; > remote}, Object_158,v={v1; rv11; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830689578; > remote}, Object_188,v={v1; rv69; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830691371; > remote}, Object_258,v={v1; rv182; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830829851; > remote}, Object_241,v={v1; rv158; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830829175; > remote}, Object_259,v={v1; rv183; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830829884; > remote}, Object_264,v={v1; rv194; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830830225; > remote}, Object_262,v={v1; rv187; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830830018; > remote}, Object_181,v={v1; rv47; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830690541; > remote}, Object_183,v={v1; rv50; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830690645; > remote}, Object_153,v={v1; rv6; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830689436; > remote}, Object_217,v={v1; rv117; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830759969; > remote}, Object_176,v={v1; rv38; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830690343; > remote}, Object_231,v={v1; rv140; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830760638; > remote}, Object_177,v={v1; rv39; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830690369; > remote}, Object_250,v={v1; rv170; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830829497; > remote}, Object_130,v={v46; rv79; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830691662; > remote}, Object_219,v={v1; rv120; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830760036; > remote}, Object_239,v={v1; rv151; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830826783; > remote}, Object_273,v={v1; rv204; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830830443; > remote}, Object_285,v={v1; rv219; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830830806; > remote}, Object_168,v={v1; rv25; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830689980; > remote}, Object_197,v={v1; rv86; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830759189; > remote}, Object_155,v={v1; rv8; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830689505; > remote}, Object_252,v={v1; rv175; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830829649; > remote}, Object_242,v={v1; rv159; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830829204; > remote}, Object_247,v={v1; rv165; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830829362; > remote}, Object_284,v={v1; rv218; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830830785; > remote}, Object_283,v={v1; rv216; > mbr=trout(bridgegemfire5_trout_2643)<ec><v12>:1028; ds=1; time=1527830830744; > remote}] > the transaction is committed but since the new value of Object_194 is not == > the old value the transaction fails > bridgegemfire5_2643/system.log: [fine 2018/05/31 22:28:15.206 PDT > bridgegemfire5_trout_2643 <ServerConnection on port 29940 Thread 8> tid=0x83] > TXRegionState.createLockRequest 1 DistributedRegion > region-state={org.apache.geode.internal.cache.TXRegionState@63d8baad > ,entryMods={Object_194={org.apache.geode.internal.cache.TXEntryState@75f1bb38 > 23}} ,isCreatedDuringCommit=false} > bridgegemfire5_2643/system.log: [fine 2018/05/31 22:28:15.206 PDT > bridgegemfire5_trout_2643 <ServerConnection on port 29940 Thread 8> tid=0x83] > [TXLockServiceImpl.txLock] acquire try-locks for [TXLockBatch: > txLockId=TXLockId: trout(bridgegemfire5_trout_2643:2643)<ec><v12>:1028-222; > reqs=[regionPath=/testRegion keys=[Object_194]]; > participants=[trout(bridgegemfire4_trout_3956:3956)<ec><v17>:1029, > trout(bridgegemfire1_trout_4249:4249)<ec><v19>:1026, > trout(bridgegemfire3_trout_2101:2101)<ec><v8>:1027]] > bridgegemfire5_2643/system.log: [fine 2018/05/31 22:28:15.206 PDT > bridgegemfire5_trout_2643 <ServerConnection on port 29940 Thread 8> tid=0x83] > <DLockRequestProcessor 721 waiting for 1 replies from > [trout(bridgegemfire5_trout_2643:2643)<ec><v12>:1028]> got > process(DLockRequestProcessor.DLockResponseMessage responding GRANT; > serviceName=DTLS(version 3); objectName=[TXLockBatch: txLockId=TXLockId: > trout(bridgegemfire5_trout_2643:2643)<ec><v12>:1028-222; > reqs=[regionPath=/testRegion keys=[Object_194]]; > participants=[trout(bridgegemfire4_trout_3956:3956)<ec><v17>:1029, > trout(bridgegemfire1_trout_4249:4249)<ec><v19>:1026, > trout(bridgegemfire3_trout_2101:2101)<ec><v8>:1027]]; responseCode=0; > keyIfFailed=null; leaseExpireTime=9223372036854775807; processorId=721; > lockId=721) from trout(bridgegemfire5_trout_2643:2643)<ec><v12>:1028 > bridgegemfire5_2643/system.log: [fine 2018/05/31 22:28:15.211 PDT > bridgegemfire5_trout_2643 <ServerConnection on port 29940 Thread 8> tid=0x83] > Server connection from > [identity(trout(edgegemfire1_trout_377:377:loner):44872:32e1cab9:edgegemfire1_trout_377,connection=1; > port=46982]: Wrote exception: Entry for key Object_194 on region > testRegion had a state change > org.apache.geode.cache.CommitConflictException: Entry for key Object_194 on > region testRegion had a state change > {noformat} > The problem seems to be in RegionVersionVector.contains(id, version). This > method is not checking to see if the vector is for synchronization purposes > if the argument "id" names the owner of the vector - that is, the server > requesting synchronization. > Due to this flaw the synchronization return value will be _all_ of the region > entries modified by the requester. -- This message was sent by Atlassian JIRA (v7.6.3#76005)