Fri Jul 6 13:47:57 PDT 2012
- Previous message: [Slony1-bugs] [Bug 272] slonik can segfault scanning input
- Next message: [Slony1-bugs] [Bug 273] Slon can try to pull data from a behind provider.
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
http://www.slony.info/bugzilla/show_bug.cgi?id=273 Summary: Slon can try to pull data from a behind provider. Product: Slony-I Version: devel Platform: PC OS/Version: Linux Status: NEW Severity: enhancement Priority: low Component: slon AssignedTo: slony1-bugs at lists.slony.info ReportedBy: ssinger at ca.afilias.info CC: slony1-bugs at lists.slony.info Estimated Hours: 0.0 In master/2.2 I've been getting the occasional failure of one of the disorder tests ('merge set', before any set merging takes place). What happens is one of the subscriber nodes (often node 3) will try to pull data in sync_event from a node that is not the provider or origin (often node 5). This node is too far behind so the sync fails. I had attached with gdb and saw that the wd->provider chain contains two nodes, a) The origin node 1 and b) the node that it was not far enough behind. The SYNC event it is processing comes from event_provider=1 The adjust_provider_info function seems to process some event that came from listener 5. It logs the following: just after the subscription to set 1 finishes. 2012-06-28 15:40:34,803 [db3 stdout] DEBUG . - 2012-06-28 15:40:34 EDT CONFIG remoteWorkerThread_1: added active set 1 to provider 1 2012-06-28 15:40:34,803 [db3 stdout] DEBUG . - 2012-06-28 15:40:34 EDT CONFIG remoteWorkerThread_1: added event provider provider 5 The 'added event provider provider 5' is debugging I added to the if block in 'step 4' of adjust_provider info. What I *suspect* is happening is that * Node 3 is not yet subscribed to any sets * remoteListener_5 on node 3 queues up the subscription events and a SYNC event from node 1 * The subscription finishes * adjust_provider_info is called it adds node 1 as a provider since it is the origin of the set. It also adds node 5 as a provider since it is where the event was received from (step 4). * We process the SYNC event from node 1. In sync_event we expect BOTH of those providers in the provider list (1 and 5) to be far enough ahead. -- Configure bugmail: http://www.slony.info/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug. You are the assignee for the bug.
- Previous message: [Slony1-bugs] [Bug 272] slonik can segfault scanning input
- Next message: [Slony1-bugs] [Bug 273] Slon can try to pull data from a behind provider.
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Slony1-bugs mailing list