[Pgpool-general] Error: pgpool detected difference of thenumber of...

Xavier Noguer xnoguer at antica.cl
Mon Sep 28 18:52:16 UTC 2009


 Can you run pcp_node_info for backend1 with the the debugging option
(-d) and show us the result ?

On Mon, 2009-09-28 at 14:20 -0400, Daniel.Crespo at l-3com.com wrote:
> Thanks for the reponse, Xavier.
> 
> I forgot to mention that when I issue pcp_node_info for backend0, it returns with a long string that contains the well known '2', meaning its connected. When I do it for backend1 is says BackendError. BackendError is shown when you are trying to get info from a backend that is not set up, or when another error (unknown to me at this point) if the backend is there, but experiences some problem.
> 
> I expect pgpool to ignore backend1 since it presents errors. Also, if you issue an update and pgpool says that there's a difference between backends, it should degenerate the backend1 and above, but it doesn't. I just try to keep making the same update, and every time pgpool complains, instead of degenerate the backends and carry on with only backend0.
> 
> Any other idea?
> 
> Thanks,
> Daniel
> 
> > -----Original Message-----
> > From: Xavier Noguer [mailto:xnoguer at antica.cl]
> > Sent: Monday, September 28, 2009 1:51 PM
> > To: Crespo, Daniel @ SDS
> > Cc: pgpool-general at pgfoundry.org
> > Subject: Re: [Pgpool-general] Error: pgpool detected difference of
> > thenumber of...
> > 
> > 
> >  That error usually appears when there's a difference between backends.
> > You should compare the number of affected rows on each backend. If the
> > query you are running is:
> > 
> > UPDATE table SET field1=’something’ WHERE field2=’something_else’;
> > 
> >  then you should run:
> > 
> >  SELECT COUNT(*) FROM table WHERE field2=’something_else’;
> > 
> >  connecting directly to each backend.
> > 
> >  Once you have discovered what the difference is, you can synchronize
> > backends using pcp_recovery_node. But you have to decide which backends
> > are corrupt and which backends have valid data before you run
> > pcp_recovery_node.
> > 
> > 
> >  Cheers
> > 
> > On Mon, 2009-09-28 at 13:31 -0400, Daniel.Crespo at l-3com.com wrote:
> > > When connecting through pgpool, the query:
> > >
> > >
> > >
> > > UPDATE table SET field1=’something’ WHERE field2=’something_else’;
> > >
> > >
> > >
> > > throws the following error:
> > >
> > >
> > >
> > > ERROR: pgpool detected difference of the number of INSERTS, DELETES,
> > > or UPDATES …(etc. I can’t recall the rest of the error message, but I
> > > know it has something like “type ‘E’ ”
> > >
> > >
> > >
> > > If I connect directly to postgresql, the query is executed
> > > successfully.
> > >
> > >
> > >
> > > I have not been able to test updating other tables because the system
> > > is not available for me for a while.
> > >
> > >
> > >
> > > I’m using pgpool-II 2.2.1
> > >
> > >
> > >
> > > Any ideas?
> > >
> > >
> > >
> > > Thanks,
> > >
> > > Daniel
> > >
> > >
> > > _______________________________________________
> > > Pgpool-general mailing list
> > > Pgpool-general at pgfoundry.org
> > > http://pgfoundry.org/mailman/listinfo/pgpool-general
> 



More information about the Pgpool-general mailing list