Data Protection Advisor: Temporäre Dateien in pgsql_tmp Ordner auf dem Datastore-Server erhöhten sich schnell und verbrauchten den gesamten verfügbaren Speicherplatz auf dem Dateisystem.

Summary: Dateien in pgsql_tmp Ordner auf dem Datastore-Server erhöhten sich schnell und füllten die Festplatte.

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Symptoms

Das Dateisystem auf dem Datenspeicherserver, auf dem sich Postgres befindet, ist fast voll.
Der Anwendungsservice wird erfolgreich gestartet, verarbeitet daten aber nicht und stürzt bald ab.
Die folgende Meldung wurde in server.log auf dem Anwendungsserver gefunden:
2022-11-15 08:41:00,700 WARN [org.jboss.jca.core.connectionmanager.listener.TxConnectionListener] (ReportEngineMessageListener #1:Backup Report Card:22b4e14e-a7a9-4b49-a244-54336df9661f) FJ000305: Verbindungsfehler aufgetreten:
org.postgresql.util.PSQLException: FEHLER: die temporäre Datei "base/pgsql_tmp/pgsql_tmp921.5.sharedfileset/i165of8192.p0.0" konnte nicht erstellt werden: Kein Speicherplatz mehr auf dem Gerät


vorhandenEin Fehler folgt der obigen Warnung:
2022-11-15 08:41:00,704 ERROR [com.emc.apollo.jdbc.exec.SQLExecutor] (BerichtEngineMessageListener #1:Backup Report Card:22b4e14e-a7a9-4b49-a244-54336df9661f) Fehler beim Ausführen der Abfrage: Fehler. Die Abfrage lautete: 
WÄHLEN Sie t0.f_agent_name als "t0f_agent_name", t0.f_sub_name als "t0f_sub_name", t0.f_group_name als "t0f_group_name", t0.f_schedule_name als "t0f_schedule_name", t0.f_client_name als "t0f_client_name", t0.f_policy_name als "t0f_policy_name", t0.f_workflow_name als "t0f_workflow_name", t0.f_workflow_jobid als "t0f_workflow_jobid", t0.f_action_name als "t0f_action_name", t0.f_job_name als "t0f_job_name", t0.f_domain_name als "t0f_domain_name", t0.f_backup_set als "t0f_backup_set", t0.f_session als "t0f_session", t0.f_proxy als "t0f_proxy", t0.f_queuestart als "t0f_queuestart", t0.f_status als "t0f_status", t0.f_starttime als "t0f_starttime", t0.f_endtime als "t0f_endtime", t0.f_ntries als "t0f_ntries", t0.f_queuestart AS f_reporterstarttime, t0.f_queuestart AS f_reporterendtime, t0.f_id als f_id
VON view_backupjob t0...


In den Datenspeicherprotokollen werden ähnliche Meldungen gefunden:
2022-11-15 07:29:49.001 GMT [7443] FEHLER:  konnte nicht in die Datei "base/pgsql_tmp/pgsql_tmp4401.6.sharedfileset/i19081of32768.p1.0" schreiben: Kein Speicherplatz mehr auf dem Gerät

vorhandenWenn Sie den Datastore-Server im Verzeichnis /dpa/services/datastore/data/base/pgsql_tmp prüfen, gibt es zahlreiche Ordner und Dateien, die viele GB groß sind.
Das Datum der ersten Dateien im verzeichnis pgsql_tmp entspricht möglicherweise einem aktuellen Upgrade der DPA-Software.

Cause

Während des letzten Upgrades wurde der DPA-Datenspeicher für die auf dem Server verfügbare RAM-Menge nicht korrekt optimiert.
Das Ausführen des folgenden Befehls zeigt Folgendes an:
# dpa.sh ds tune
EMC Data Protection Advisor
[INFO] Current Datastore Service tuned expecting 512MB of host memory
Command completed successfully.

Der Wert von 512 MB ist typisch für Standardeinstellungen für PostgreSQL-Server.
Diese Einstellung mit geringem Arbeitsspeicher führte dazu, dass DPA Abfrageinformationen in temporäre Dateien in pgsql_tmp schreibte. 
Wenn das Dateisystem voll wurde, löschte das System die Abfrage, die die tmp-Dateien zurückbleibte, die schließlich den gesamten freien Speicherplatz auf dem Dateisystem füllten.
Dies führte dazu, dass der Fehler in server.log in Bezug auf eine SELECT-Abfrage nicht in der Lage war, eine temporäre Datei in pgsql_tmp Verzeichnis zu erstellen.

Resolution

Führen Sie den Befehl tune auf dem Datastore-Server für die Ram-Menge auf dem Server aus.
Wenn der Server beispielsweise mit 64 GB RAM konfiguriert ist, führen Sie den folgenden Befehl aus:
 # dpa.sh ds tune 64 GB
EMC Data Protection Advisor
Set Datastore service memory usage to 65536MB: Bestätigen [Y|N]
y
Datastore-Service erfolgreich optimiert.
Die neue Speicherauslastung für den Datenspeicher wird erst wirksam, wenn der Datenspeicherservice neu gestartet wird.
Der Befehl wurde erfolgreich abgeschlossen.

Starten Sie den Datastore-Service neu.
Nach dem Neustart werden die Dateien in pgsql_tmp automatisch durch postgresql-Prozess gelöscht.
Überwachen Sie das neueste Datastore-Serviceprotokoll. Wenn die folgende Meldung angezeigt wird, kann die Anwendung dann gestartet werden.
2022-11-15 09:19:10.003 GMT [10897] PROTOKOLL:  Datenbanksystem ist bereit, Verbindungen

zu akzeptierenWenn mehr Arbeitsspeicher für den Datastore-Service optimiert ist, ist es weniger erforderlich, Abfragedaten in temporäre Dateien in pgsql_tmp zu schreiben.
Weitere Informationen erhalten Sie vom technischen Support von Dell.

Affected Products

Data Protection Advisor
Article Properties
Article Number: 000205495
Article Type: Solution
Last Modified: 25 May 2023
Version:  3
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.