Seite 1 von 3 123 LetzteLetzte
Ergebnis 1 bis 10 von 28

Thema: Vacuum

  1. #1
    kbsolutions ist offline Neuer Benutzer
    Registriert seit
    15.08.2007
    Beiträge
    26

    Standard Vacuum

    Wenn ich ein VACUUM auf eine bestimmte Tabelle machen möchte, erhalten ich immer folgende Fehlermeldung:

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

    ERROR: out of memory
    SQL state: 53200
    Detail: Failed on request of size 236317608.

    *************************

    Die Tabelle enthält 7 Millionen reltuples bei 135329 relpages

    Muss ich etwas an der Konfiguration ändern oder ist diese Tabelle oder eine System-Tabelle korrupt?

    Ich mache jetzt eine db_dump und restore..... nur zum testen...

    Hat jemand einen sonstigen Tip?

  2. #2
    ads
    ads ist offline Super-Moderator
    Registriert seit
    08.02.2006
    Ort
    MD
    Beiträge
    4.020

    Standard

    Versuch mal den Parameter "maintenance_work_mem" zu erhöhen.

    Ansonsten: wie sehen denn deine Konfigurationsparameter zur Speichernutzung aus?
    Xandrian: Kurz gesagt: Du hast ein falsches Konzept und willst nicht auf ads hören

    Jetzt NEU: PostgreSQL - Datenbankpraxis für Anwender, Administratoren und Entwickler

    PostgreSQL Service & Support

  3. #3
    kbsolutions ist offline Neuer Benutzer
    Registriert seit
    15.08.2007
    Beiträge
    26

    Standard

    maintenance_work_mem ist auf 1024MB eingestellt.

    Nach dem Restore auf einem anderen Server mit nur 256MB maintenance_work_mem, kann ich problemlos ein VACUUM auf die Tabelle ausführen...

  4. #4
    ads
    ads ist offline Super-Moderator
    Registriert seit
    08.02.2006
    Ort
    MD
    Beiträge
    4.020

    Standard

    Das beantwortet immer noch nicht meine Frage.
    Xandrian: Kurz gesagt: Du hast ein falsches Konzept und willst nicht auf ads hören

    Jetzt NEU: PostgreSQL - Datenbankpraxis für Anwender, Administratoren und Entwickler

    PostgreSQL Service & Support

  5. #5
    kbsolutions ist offline Neuer Benutzer
    Registriert seit
    15.08.2007
    Beiträge
    26

    Standard

    ich habe die maintenance_work_mem auf 1960MB geändert und es kommt immer noch die gleiche Fehlermeldung. Wenn ich auf 2048MB gehe, erhalte ich die folgende Fehlermeldung:

    ERROR: 2097152 is outside the valid range for parameter "maintenance_work_mem" (1024 .. 2097151)


    Die weiteren Parameter sind:

    max_connections = 500
    shared_buffers = 1024MB
    temp_buffers = 128MB
    effective_cache_size = 6656MB
    work_mem = 256MB
    maintenance_work_mem = 1960MB
    max_fsm_pages = 2000000
    max_fsm_relations = 2000
    wal_buffers = 128kB


    Der Server hat 8GB Ram und läuft auf einem Windows 2003 R2 X64.
    Postgres Version 8.3

  6. #6
    symbiont ist offline Erfahrener Benutzer
    Registriert seit
    17.03.2008
    Ort
    NULL
    Beiträge
    1.320

    Standard

    Sieht nach einem Bug aus:

    2097151 = 0x1FFFFF

    wohl ein Überlauf

    ERROR: 2097152 is outside the valid range for parameter "maintenance_work_mem" (1024 .. 2097151)
    2097151 = 22 bit
    1024 = 10 bit

    macht in Summe 32 bit

    nimm doch ein 64Bit Betrübssyschdem - und natürlich auch die 64bit version von PG
    Geändert von symbiont (30.04.2009 um 14:46 Uhr)

  7. #7
    akretschmer ist offline Super-Moderator
    Registriert seit
    29.10.2006
    Ort
    Nähe Dresden
    Beiträge
    5.337

    Standard

    Zitat Zitat von symbiont Beitrag anzeigen
    Sieht nach einem Bug aus:

    2097151 = 0x1FFFFF

    wohl ein Überlauf
    Wohl eher nicht. PG ist auf Fenster 32bit, 2 GByte-Grenze. Da sind 8 GByte, salopp gesprochen, die Perlen, die man vor Säue wirft.

    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

  8. #8
    symbiont ist offline Erfahrener Benutzer
    Registriert seit
    17.03.2008
    Ort
    NULL
    Beiträge
    1.320

    Standard

    Zitat Zitat von akretschmer Beitrag anzeigen
    Wohl eher nicht. PG ist auf Fenster 32bit, 2 GByte-Grenze. Da sind 8 GByte, salopp gesprochen, die Perlen, die man vor Säue wirft.

    Andreas
    du hast die untere grenze vergessen - schau die fehlermeldung nochmal an ..

    der begint bereits bei 10 bit - dazu nochmal 22 .. macht wieviel?

    ok .. man muss es (Dir zuliebe) ja nicht gleich "bug" nennen ... aber die Fehlermeldung ist scheisse - dass musst zugeben .. ein bug wäre es, wenn bereits vorher eine prüfung vorgesehen waere die aber nicht greif - um gescheite fehlermeldungen zu liefern.

  9. #9
    symbiont ist offline Erfahrener Benutzer
    Registriert seit
    17.03.2008
    Ort
    NULL
    Beiträge
    1.320

    Standard

    obwohl - bug ist schon korrekt - immerhin hat er die daten ja auch da reingekriegt - und es wird ein innerer zustand erzeugt, mit dem PG umgehen koennen sollte (vacuum). tut es aber nicht ..

  10. #10
    symbiont ist offline Erfahrener Benutzer
    Registriert seit
    17.03.2008
    Ort
    NULL
    Beiträge
    1.320

    Standard

    Zitat Zitat von akretschmer Beitrag anzeigen
    Wohl eher nicht. PG ist auf Fenster 32bit, 2 GByte-Grenze. Da sind 8 GByte, salopp gesprochen, die Perlen, die man vor Säue wirft.

    Andreas
    wieso ... 32 bit heisst 2 GB per process ... das heisst 2 GB pro Connection .. oder nicht?
    Das ist aber auch garnicht das aktuelle Problem - nur eine Randbemerkung

Seite 1 von 3 123 LetzteLetzte

Stichworte

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