[Pgpool-general] [PgPool-II] Node degenerating

Anton Koldaev koldaevav at gmail.com
Fri Jun 24 00:11:08 UTC 2011


I've found another case when the third node is degenerating:

>    9 2011-06-24 03:34:30 DEBUG: pid 26090: read_kind_from_backend: read
> kind from 0 th backend Z NUM_BACKENDS: 3
>   10 2011-06-24 03:34:30 DEBUG: pid 26090: read_kind_from_backend: read
> kind from 1 th backend Z NUM_BACKENDS: 3
>   11 2011-06-24 03:34:30 DEBUG: pid 26090: read_kind_from_backend: read
> kind from 2 th backend N NUM_BACKENDS: 3
>   12 2011-06-24 03:34:30 ERROR: pid 26090: read_kind_from_backend: 2 th
> kind N does not match with master or majority connection kind Z
>   13 2011-06-24 03:34:30 ERROR: pid 26090: kind mismatch among backends.
> Possible last query was: "CREATE table data.metadata_alos_2009_07 AS

SELECT "RC_Metadata".id, "CI_Citation".identifier,
> "EX_Extent"."geographicElement_polygon" AS geographicelement_polygon,
> date("EX_Extent"."temporalElement_instant") AS
> temporalelement,"MD_DataIdentification"."spatialResolution_distance" as
> spatialresolution, "RC_AcquisitionInformation".id_platform,
> min("MD_Metadata_contact".id_resp_party) AS id_resp_party,
> min("MD_Distribution_distributor".id_distributor) AS id_distributor,
> min("MD_Identification_pointOfContact".id_resp_party) AS id_pointofcontact,
> "RC_ImageDescription"."cloudCoverPercentage" AS cloudcoverpercentage,
> "RC_ImageDescription"."id_processingLevelCode" AS id_processinglevelcode,
> ((('<font color="#FFFFFF"><u><a href="'::text ||
> min("RC_BrowseGraphic"."fileName")) || '" target="_blank">'::text) ||
> 'Open'::text) || '</a></u></font>'::text AS quicklook_filename

                    FROM metadata."RC_Metadata"

                   JOIN metadata."RC_AcquisitionInformation" ON
> "RC_Metadata"."id_acquisitionInformation" = "RC_AcquisitionInformation".id

                   JOIN metadata."RC_ImageDescription" ON
> "RC_ImageDescription".id = "RC_Metadata"."id_contentInfo"

                   JOIN metadata."MD_DataIdentification" ON
> "RC_Metadata"."id_identificationInfo" = "MD_DataIdentification".id

                   JOIN metadata."CI_Citation" ON
> "MD_DataIdentification".id_citation = "CI_Citation".id

                   JOIN metadata."EX_Extent" ON
> "MD_DataIdentification".id_extent = "EX_Extent".id

                   LEFT JOIN metadata."MD_Metadata_contact" ON
> "RC_Metadata".id = "MD_Metadata_contact".id_metadata

                   LEFT JOIN metadata."MD_Distribution_distributor" ON
> "RC_Metadata".id = "MD_Distribution_distributor".id_metadata           LEFT
> JOIN metadata."MD_Identification_pointOfContact" ON
> "MD_DataIdentification".id =
> "MD_Identification_pointOfContact".id_identification

                    LEFT JOIN metadata."MD_Identification_graphicOverview"
> ON "MD_DataIdentification".id =
> "MD_Identification_graphicOverview".id_identification

                   LEFT JOIN metadata."RC_BrowseGraphic" ON
> "MD_Identification_graphicOverview".id_browse_graphic =
> "RC_BrowseGraphic".id

                  WHERE "RC_AcquisitionInformation".id_platform = 222 AND
> "EX_Extent"."temporalElement_instant" >= '2009-07-01 00:00:00+04'::timestamp
> with time zone AND "EX_Extent"."temporalElement_instant" <= '2009-07-30
> 23:59:59+04'::timestamp with time zone          GROUP BY "RC_Metadata".id,
> "CI_Citation".identifier, "EX_Extent"."geographicElement_polygon",
> "EX_Extent"."temporalElement_instant","MD_DataIdentification"."spatialResolution_distance",
> "RC_AcquisitionInformation".id_platform,
> "MD_Identification_pointOfContact".id_resp_party,
> "RC_ImageDescription"."cloudCoverPercentage",
> "RC_ImageDescription"."id_processingLevelCode",
> "RC_ImageDescription"."nadirTiltAngle";


"2 th kind N does not match with master [Z]"
[N] - Notice package. Where can I find it? I see no notices in pgpool.log or
postgresql.log on the 2th backend.
[Z] - what does it mean?
When I'm running this statement directly on 2th backend it works
successfull.

Please tell me what should I do?


On Thu, Jun 23, 2011 at 5:25 PM, Anton Koldaev <koldaevav at gmail.com> wrote:

> Hello
> I've got three nodes in pgpool-II:
> sO21 - id:0
> sO22 - id:1
> db00 - id:2
> replication_mode = true
> load_balance_mode = true
> replication_stop_on_mismatch = true
> failover_if_affected_tuples_mismatch = true
>
> I'm getting an error after somebody of developers enters wrong syntax
> query:
>
>
>    1.  2011-06-23 15:24:26 LOG:   pid 13894: SimpleQuery: Unable TO parse
>    the query: global3=# VACUUM ANALYZEmetadata."RC_Metadata";
>    2.  2011-06-23 15:24:26 LOG:   pid 13894: DB node id: 0 backend pid:
>    13906 STATEMENT: BEGIN
>    3.  2011-06-23 15:24:26 LOG:   pid 13894: DB node id: 1 backend pid:
>    13788 STATEMENT: BEGIN
>    4.  2011-06-23 15:24:26 LOG:   pid 13894: DB node id: 0 backend pid:
>    13906 STATEMENT: global3=# VACUUMANALYZE metadata."RC_Metadata";
>    5.  2011-06-23 15:24:26 LOG:   pid 13894: pool_send_and_wait: Error OR notice
>    message FROM backend: : DB node id: 0 backend pid: 13906 STATEMENT:
>    global3=# vacu
>    6.  um ANALYZE metadata."RC_Metadata"; message: syntax error AT OR
>     near "global3"
>
>
> As you can see somebody copy-pasted vacuum analyze query with "database=#
> ...".
> After this pgpool degrades node with id=2. Why is this happening?
> I know that:
>
> *"you should not execute VACUUM via pgpool. Connect*>>>* PostgreSQL directry and execute VACUUM".*
>
> But it is the second problem when syntax error causes degenerating of the second node.
>
>
> Here is the log from pgpool-II:
> http://pastebin.com/N3uKAG7k
>
> I will appreciate any help.
>
> PS: Tatsuo, maybe you have some scripts with test queries to check if
> replication works correctly after online recovery?
>
> --
> Best regards,
> Koldaev Anton
>



-- 
Best regards,
Koldaev Anton
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://pgfoundry.org/pipermail/pgpool-general/attachments/20110624/cf6d07f1/attachment-0001.html>


More information about the Pgpool-general mailing list