Fehler: Segmentverbindung fehlgeschlagen: AllocateWriterger -Versuch hat versucht, eine schlechte Bande zurückzugeben. (CDBGANG.C: 2591)

StackOverflow https://stackoverflow.com/questions/2255086

  •  20-09-2019
  •  | 
  •  

Frage

Verwenden von GreenPlum Database Version 3.2.3 auf Solaris.

Schritt 1. Erstellen Sie eine Tabelle.

CREATE TABLE ivdb.OPTION_PRICE (
    SecurityID integer NOT NULL,
    Date timestamp NOT NULL,
    Root char(5) NOT NULL,
    Suffix char(2) NOT NULL,
    Strike integer NOT NULL,
    Expiration timestamp NOT NULL,
    CallPut char(1),
    BestBid real NOT NULL,
    BestOffer real NOT NULL,
    LastTradeDate timestamp NULL,
    Volume integer NOT NULL,
    OpenInterest integer NOT NULL,
    SpecialSettlement char(1) DEFAULT '0',
    ImpliedVolatility real NOT NULL,
    Delta real NOT NULL,
    Gamma real NOT NULL,
    Vega real NOT NULL,
    Theta real NOT NULL,
    OptionID integer NOT NULL,
    Adjustmentfactor integer DEFAULT 1 NOT NULL,

    CONSTRAINT PK_OPTION_PRICE PRIMARY KEY (Date, Root, Suffix))

    PARTITION BY RANGE (Date) (
        START (timestamp '01/01/1996') INCLUSIVE
        END (timestamp '01/01/2020') EXCLUSIVE
        EVERY (INTERVAL '1 month')); 

Schritt 2: Fügen Sie Daten aus einer anderen Tabelle ein. (Dieser ist einfach Vanille, nicht verteilt, keine Einschränkungen. Es hat 564.392.723 Zeilen.)

INSERT INTO OPTION_PRICE SELECT * FROM casey_option_price;

Ergebnisse:

-- Executing query:

INSERT INTO OPTION_PRICE SELECT * FROM casey_option_price;
NOTICE: Releasing gangs to finish aborting the transaction.


ERROR: Segment connection failed: allocateWriterGang attempted to return a bad gang. (cdbgang.c:2591)

********** Error **********

ERROR: Segment connection failed: allocateWriterGang attempted to return a bad gang. (cdbgang.c:2591)
SQL state: XX000

Die schlechte Bande, die die gesamte Show zum Stillstand bringen, müssen die Datenbank neu starten, um die Dinge wieder aufzuräumen.

Ich habe nicht viel im Internet gefunden, habe ein Helpdesk -Ticket mit GreenPlum geöffnet. Ich dachte, ich würde es auch hier draußen schweben. Ich werde mit einer Lösung zurückkommen, wenn ich eine bekomme, bevor Sie es tun.

Entschuldigung, nicht genug Wiederholung, um mit "Greenplum" zu markieren.

War es hilfreich?

Lösung

Dieser Fehler war auf ein Hardwareproblem zurückzuführen. Eine Festplatte scheiterte und aus irgendeinem Grund deckte der Überfall uns nicht richtig ab.

"Bad Gang" bedeutet jetzt "Überprüfen Sie Ihre Hardware".

Ein verwandtes (oder vielleicht das reale) Problem: Überprüfen Sie Ihre Einstellung gp_vmem_protect_limit. Unsere war zu hoch und ich habe den gesamten Swap -Raum der Maschine in meiner Anfrage aufgebraucht.

Andere Tipps

Die "Bande wurde getrennt" ist ein Symptom, das auf die Arbeitsprozesse von einem oder mehreren primären Segmenten hinweist, die abnormal abbrechen. Die möglichen Ursachen variieren. ZB max_connections sind auf einem Segment erreicht; Primärsegmente aufgrund von Zeitüberschreitungen; PostgreSQL -Prozesse werden getötet; Segment Server Nic Problem; Das Dateisystem ist voll in Segmenten; usw.

Ich schlage vor, Sie öffnen Sie Fälle für das GP -Support -Team mit folgenden Informationen:

  1. Master -Protokolle
  2. Verwandte Segmentprotokolle
  3. gp_segment_configuration output
  4. Wählen Sie * aus gp_configuration_history order von 1 desc;
  5. /var/log/meldungen auf zugehörigen Segmentservern
  6. df -h auf Segmenten
  7. Jede Veränderung, die Sie vielleicht miteinander denken.
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top