Ergebnis 1 bis 5 von 5

Thema: Seltsames Verhalten beim Upgrade von 8.2.6 auf 8.3.5

  1. #1
    Gisman ist offline Erfahrener Benutzer
    Registriert seit
    20.01.2006
    Ort
    Pfalz
    Beiträge
    792

    Standard Seltsames Verhalten beim Upgrade von 8.2.6 auf 8.3.5

    Zum Anfang: ich hab das schon 2x auf diese Weise gemacht und es hat fehlerfrei geklappt. Wie übolich hab ich den neuen Server installiert, mit dem neuen pg_dump/pg_dumpall die alte DB ausgelesen und in die neue gepiped. Dabei trat bei einem zugegebener Massen sehr grossen Geometriefeldern (Binärformat) folgender Fehler auf der jeweils die ganze Transaktion zum Erliegen brachte:

    Code:
    ERROR:* out of memory
    DETAIL:* Cannot enlarge string buffer containing 0 bytes by 1597848223 more bytes.
    Ich habe das dann auf verschieden Arten und Weisen mal mit zwischenspeichern, mal erst Schema erzeugen, dann Daten einspielen versucht mit immer demselben Ergebnis. Dier Lösung war schliesslich, statt dem Copy-Befehl, den pg_dump verwendet inserts zu machen.
    Was ist der Grund für dieses Verhalten? Kann man das irgendwie umgehen? >200GB Geodaten per Insert upzugraden ist , nunja, ermüdened

    Grüssle Uwe
    Have a lot of fun!

  2. #2
    akretschmer ist gerade online Super-Moderator
    Registriert seit
    29.10.2006
    Ort
    Dresden
    Beiträge
    5.471

    Standard

    Zitat Zitat von Gisman Beitrag anzeigen
    Zum Anfang: ich hab das schon 2x auf diese Weise gemacht und es hat fehlerfrei geklappt. Wie übolich hab ich den neuen Server installiert, mit dem neuen pg_dump/pg_dumpall die alte DB ausgelesen und in die neue gepiped. Dabei trat bei einem zugegebener Massen sehr grossen Geometriefeldern (Binärformat) folgender Fehler auf der jeweils die ganze Transaktion zum Erliegen brachte:

    Code:
    ERROR:* out of memory
    DETAIL:* Cannot enlarge string buffer containing 0 bytes by 1597848223 more bytes.
    Ich habe das dann auf verschieden Arten und Weisen mal mit zwischenspeichern, mal erst Schema erzeugen, dann Daten einspielen versucht mit immer demselben Ergebnis. Dier Lösung war schliesslich, statt dem Copy-Befehl, den pg_dump verwendet inserts zu machen.
    Was ist der Grund für dieses Verhalten? Kann man das irgendwie umgehen? >200GB Geodaten per Insert upzugraden ist , nunja, ermüdened

    Grüssle Uwe

    Ich würde mal an den Speichereinstellungen drehen, aber 1597848223 Bytes ist ne Menge Holz. Sind die Einstellungen bzgl. Speicher in beiden postgresql.conf - Dateien gleich?


    Andreas
    --
    ads Das hatte dir akretschmer gestern schon gesagt und siehe da sobald du das machst, funktioniert es ;-)
    https://www.xing.com/profile/Andreas_Kretschmer7

  3. #3
    Gisman ist offline Erfahrener Benutzer
    Registriert seit
    20.01.2006
    Ort
    Pfalz
    Beiträge
    792

    Standard

    Zitat Zitat von akretschmer Beitrag anzeigen
    Ich würde mal an den Speichereinstellungen drehen, aber 1597848223 Bytes ist ne Menge Holz. Sind die Einstellungen bzgl. Speicher in beiden postgresql.conf - Dateien gleich?


    Andreas
    Ja, beides auf default, da wird sich wohl nichts geändert haben. Bisher traten solche Probleme auch nicht auf, in Ermangelung von Polygonen aus x00000 Punkten...
    Ursprünglich eingelesen wurden sie mit shp2pgsql, das per default auch inserts generiert. Gibts da einen signifikanten Unterschied wie Copy und Insert so ein Feld mit Binärdaten behandeln?

    Grüssle Uwe
    Have a lot of fun!

  4. #4
    hkocam ist offline Benutzer
    Registriert seit
    31.05.2007
    Beiträge
    69

    Standard

    Hallo,

    wie es ausschaut liegt hier das Problem:
    PostgreSQL Source Code: src/backend/lib/stringinfo.c Source File
    Zeile 242ff

    MaxAllocSize ist so definiert
    #define MaxAllocSize ((Size) 0x3fffffff) /* 1 gigabyte - 1 */

    zu finden in
    PostgreSQL Source Code: src/include/utils/memutils.h Source File
    Zeile 38

    Wenn ich es Recht verstehe, ensteht der Fehler, weil auf einmal mehr als 1 GB Speicher reserviert werden soll.

    Ob das ein Problem des Server oder von pg_restore ist, kann ich leider nicht nachvollziehen, habe nur nach deiner Fehlermeldung in Google gesucht.

    Freundliche Grüße
    hkocam

  5. #5
    Gisman ist offline Erfahrener Benutzer
    Registriert seit
    20.01.2006
    Ort
    Pfalz
    Beiträge
    792

    Standard

    Danke für die Links. Leider liefert er keine Erklärung, warum Copy und Insert unterschiedliches Verhalten zeigen beim gleichen Datensatz. Naja, nu gehts ja und ich bin glücklich und zufrieden

    Gruß Uwe
    Have a lot of fun!

Ähnliche Themen

  1. Antworten: 2
    Letzter Beitrag: 12.03.2011, 01:00
  2. seltsames Npgsql - ConnectionString Verhalten
    Von pguser124 im Forum externe Schnittstellen
    Antworten: 1
    Letzter Beitrag: 21.12.2007, 17:03
  3. Antworten: 2
    Letzter Beitrag: 12.07.2007, 16:12
  4. Antworten: 4
    Letzter Beitrag: 05.07.2007, 11:10
  5. Seltsames Verhalten bei Verwendung der JDBC-ODBC-Bridge
    Von harpoon im Forum externe Schnittstellen
    Antworten: 3
    Letzter Beitrag: 06.02.2006, 15:04

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Links: Tobias Bauer - IT- und Funkdienstleistungen   -   Bilderrahmen-kaufen.de - Der Onlineshop für Bilderrahmen & Fotorahmen   -   Funkforum