Knowledge Center Monthly Newsletter - March 2025
Stay up to date with the latest from the Knowledge Center. See all new and updated Knowledge Center articles published in the last month and re:Post’s top contributors.
Perché la mia query in Amazon Redshift Serverless è stata annullata o interrotta?
Desidero sapere perché Amazon Redshift Serverless ha annullato o interrotto la mia query e ricevo un messaggio di errore.
Breve descrizione
Di seguito sono riportati i motivi per cui una query viene annullata o interrotta in Amazon Redshift:
- Hai raggiunto la quota di query.
- Hai raggiunto la quota di utilizzo del gruppo di lavoro per le unità di elaborazione Redshift (RPU).
- La tua query ha superato il valore statement_timeout.
- Un altro utente ha interrotto o annullato la query.
- Ci sono problemi con la connessione di rete.
Risoluzione
Verifica la quota di query per il gruppo di lavoro Amazon Redshift Serverless
Quando raggiungi la quota di query del gruppo di lavoro, la query restituisce il seguente messaggio di errore:
"ERROR: Query (6800381) cancelled on user's request."
Per verificare see Amazon Redshift ha annullato la query perché hai raggiunto la quota, esegui la seguente istruzione SQL dall'editor di query Amazon Redshift:
SELECT query_id, query_text, error_message from SYS_QUERY_HISTORY WHERE error_message ILIKE '%cancelled on user%';
Per risolvere il problema, aumenta la quota di query del gruppo di lavoro.
Controlla la quota di utilizzo del gruppi di lavoro Amazon Redshift Serverless per le RPU
Quando raggiungi la quota di utilizzo del gruppo di lavoro per le RPU, la query restituisce il seguente messaggio di errore:
"Error: Query reached usage limit."
Per verificare se Amazon Redshift ha annullato la query perché hai raggiunto la quota di utilizzo, esegui la seguente istruzione SQL dall'editor di query Amazon Redshift:
SELECT query_id, query_text, usage_limit, error_message FROM SYS_QUERY_HISTORY WHERE error_message ILIKE '%reached usage limit%';
Per risolvere il problema, aumenta la quota di utilizzo del gruppo di lavoro.
Controlla se la tua query ha superato il valore statement_timeout
Quando una query supera il valore statement_timeout, Amazon Redshift annulla le query inviate durante la sessione. La query restituisce il seguente messaggio di errore:
"ERROR: Query (150) cancelled on user's request."
Per controllare il timeout dell'istruzione per il tuo cluster, esegui la seguente istruzione SQL dall'editor di query Amazon Redshift:
SHOW statement_timeout;
In tal modo, viene indicato il timeout dell'istruzione a livello di cluster in millisecondi. Per modificare l'output, modifica i parametri nella configurazione di gestione del carico di lavoro.
Per verificare se Amazon Redshift ha annullato la query a causa di un timeout dell'istruzione, esegui la seguente istruzione SQL dall'editor di query Amazon Redshift:
SELECT * FROM SYS_QUERY_HISTORY WHERE query_text ILIKE '%set%statement_timeout%to%';
Se Amazon Redshift ha annullato la tua query, esegui il comando seguente per aumentare il valore statement_timeout:
SET statement_timeout = (value)
Nota: sostituisci (valore) con un valore superiore al valore statement_timeout precedente.
Controlla se un altro utente ha interrotto o annullato la query
Per controllare se un altro utente ha interrotto o annullato una query, esegui il seguente comando ed esamina la colonna error_message:
SELECT * FROM sys_query_history WHERE session_id = process_id;
Nota: sostituisci process_id con l'ID del tuo processo.
Per visualizzare le query interrotte, esegui la seguente istruzione SQL dall'editor di query Amazon Redshift:
SELECT * FROM sys_query_history WHERE error_message ILIKE '%terminate%';
Per visualizzare le query annullate, esegui la seguente istruzione SQL dall'editor di query Amazon Redshift:
SELECT * FROM sys_query_history WHERE error_message ILIKE '%canceled by user%';
Se la query viene visualizzata nell'output, un utente l'ha interrotta o annullata.
Nota: gli utenti possono interrompere solo la propria sessione. Un superutente può interrompere tutte le sessioni.
Problemi di rete
Anche problemi di rete possono annullare le query.
Per verificare la presenza di un problema legato alla connessione di rete, esegui il seguente comando e controlla la vista di monitoraggio SYS_CONNECTION_LOG:
SELECT * FROM SYS_CONNECTION_LOG WHERE session_id = process_id;
Nota: sostituisci process_id con l'ID del tuo processo.
Informazioni correlate
Perché la mia richiesta è stata annullata in Amazon Redshift?

Contenuto pertinente
- AWS UFFICIALEAggiornata un anno fa
- AWS UFFICIALEAggiornata un mese fa
- AWS UFFICIALEAggiornata 2 anni fa