Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
La funzione fornisce i seguenti messaggi NOTICE: postgres_get_av_diag()
- Quando l'età non ha ancora raggiunto la soglia di monitoraggio
-
La soglia di monitoraggio per
postgres_get_av_diag()
identificare i bloccanti è di 500 milioni di transazioni per impostazione predefinita. Sepostgres_get_av_diag()
genera il seguente AVVISO, indica che l'età della transazione non ha ancora raggiunto questa soglia.NOTICE:
postgres_get_av_diag()
checks for blockers that prevent aggressive vacuums only, it does so only after exceedingdvb_threshold
which is 500,000,000 and age of this PostgreSQL cluster is currently at 2. - Non connesso al database con l'età dell'ID di transazione più vecchio
-
La
postgres_get_av_diag()
funzione fornisce l'output più preciso quando è connessa al database con l'ID di transazione più vecchio. Nel tuo caso, il database con l'ID di transazione più vecchio riportatopostgres_get_av_diag()
sarà diverso da «my_database». Se non sei connesso al database corretto, viene generato il seguente AVVISO:NOTICE: You are not connected to the database with the age of oldest transaction ID. Connect to my_database database and run postgres_get_av_diag() for accurate reporting.
La connessione al database con la data di transazione più vecchia è importante per i seguenti motivi:
-
Identificazione dei blocchi temporanei delle tabelle: poiché i metadati per le tabelle temporanee sono specifici di ogni database, in genere si trovano nel database in cui vengono creati. Tuttavia, se una tabella temporanea è il blocco principale e si trova nel database con la transazione più vecchia, ciò potrebbe essere fuorviante. La connessione al database corretto garantisce l'identificazione accurata del blocco temporaneo delle tabelle.
-
Diagnosi dei vuoti lenti: i metadati degli indici e le informazioni sul conteggio delle tabelle sono specifici del database e sono necessari per diagnosticare i problemi relativi al vuoto lento.
-
- Il database con la transazione più vecchia per età si trova su un database rdsadmin o template0
-
In alcuni casi, il
template0
databaserdsadmin
o può essere identificato come il database con l'ID di transazione più vecchio (età). In tal caso,postgres_get_av_diag()
emetterà il seguente AVVISO:NOTICE: The database with the age of oldest transaction ID is
rdsadmin
ortemplate0
, reach out to support if the reported blocker is inrdsadmin
ortemplate0
.Verifica che il blocco elencato non provenga da nessuno di questi due database. Se viene segnalata la presenza del blocco in uno dei due
rdsadmin
template0
, contatta l'assistenza poiché questi database non sono accessibili agli utenti e richiedono un intervento.È altamente improbabile che il
template0
databaserdsadmin
o il database contenga un blocco principale. - Quando è già in funzione un aspirapolvere aggressivo
-
La
postgres_get_av_diag()
funzione è progettata per segnalare quando è in corso un processo di aspirazione aggressivo, ma attiva questa uscita solo dopo che il vuoto è rimasto attivo per almeno 1 minuto. Questo ritardo intenzionale aiuta a ridurre le possibilità di falsi positivi. Attendendo, la funzione assicura che vengano segnalati solo i vuoti efficaci e significativi, permettendo un monitoraggio più accurato e affidabile dell'attività del vuoto.La
postgres_get_av_diag()
funzione genera il seguente AVVISO quando rileva uno o più aspirapolvere aggressivi in corso.NOTICE: Your database is currently running aggressive vacuum to prevent wraparound, monitor autovacuum performance.
Come indicato nell'AVVISO, continuate a monitorare le prestazioni del vuoto. Per ulteriori informazioni sul vuoto aggressivo, vedere È in funzione un aspirapolvere aggressivo (per evitare che si avvolga)
- Quando l'aspirapolvere automatico è spento
-
La
postgres_get_av_diag()
funzione genera il seguente AVVISO se l'autovacuum è disabilitato sull'istanza del database:NOTICE: Autovacuum is OFF, we strongly recommend to enable it, no restart is necessary.
Autovacuum è una funzionalità fondamentale dell'istanza DB RDS per PostgreSQL PostgreSQL che garantisce il funzionamento regolare del database. Rimuove automaticamente le vecchie versioni di riga, recupera spazio di archiviazione e previene il sovraccarico delle tabelle, contribuendo a mantenere tabelle e indici efficienti per prestazioni ottimali. Inoltre, protegge dall'alterazione dell'ID delle transazioni, che può interrompere le transazioni sulla tua istanza Amazon RDS. La disabilitazione dell'autovacuum può portare a un calo a lungo termine delle prestazioni e della stabilità del database. Ti consigliamo di tenerlo sempre acceso.
Nota
La disattivazione dell'aspirapolvere automatico non blocca gli aspirapolvere aggressivi. Questi problemi continueranno a verificarsi quando i tavoli raggiungeranno la soglia.
autovacuum_freeze_max_age
- Il numero di transazioni rimanenti è estremamente basso
-
La
postgres_get_av_diag()
funzione genera il seguente AVVISO quando è imminente un aspirapolvere avvolgente. Questo AVVISO viene emesso quando l'istanza Amazon RDS è a 100 milioni di transazioni dal potenziale rifiuto di nuove transazioni.WARNING: Number of transactions remaining is critically low, resolve issues with autovacuum or perform manual
VACUUM FREEZE
before your instance stops accepting transactions.È necessaria un'azione immediata per evitare tempi di inattività del database. È necessario monitorare attentamente le operazioni di svuotamento e prendere in considerazione l'avvio manuale di un file
VACUUM FREEZE
sul database interessato per evitare errori nelle transazioni.