

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à.

# Eccezioni di Neptune openCypher
<a name="access-graph-opencypher-exceptions"></a>

Quando si usa openCypher in Amazon Neptune, possono verificarsi diverse eccezioni. Di seguito sono elencate le eccezioni più comuni che si possono ricevere dall'endpoint HTTPS o dal driver Bolt (tutte le eccezioni del driver Bolt sono segnalate come eccezioni dello stato del server):


| Codice HTTP | Messaggio di errore | Recuperabile? | Soluzione | 
| --- | --- | --- | --- | 
| 400 | *(errore di sintassi, propagato direttamente dal parser openCypher)* | No | Correggere la sintassi della query, quindi riprovare. | 
| 500 | `Operation terminated (out of memory)` | Sì | Rielaborare la query per aggiungere criteri di filtro aggiuntivi per ridurre la memoria richiesta | 
| 500 | Operazione terminata (scadenza superata) | Sì | Aumentare il timeout della query nel gruppo di parametri del cluster database o [ripetere la richiesta](https://docs.aws.amazon.com/general/latest/gr/api-retries.html). | 
| 500 | Operazione terminata (annullata dall'utente) | Sì | Riprova la richiesta . | 
| 500 | Il ripristino del database è in corso. Riprova a eseguire la query dopo che il cluster diventa disponibile. | Sì | Riprovare quando il ripristino è stato completato. | 
| 500 | Operazione non riuscita a causa di operazioni simultanee in conflitto (riprova). Le transazioni sono attualmente in fase di rollback. | Sì | Riprovare utilizzando una [strategia di backoff esponenziale e ripetizione dei tentativi](best-practices-opencypher-retry-logic.md). | 
| 400 | *(operation name)* operation/feature eccezione non supportata | No | L'operazione specificata non è supportata. | 
| 400 | Tentativo di aggiornamento di openCypher su una replica di sola lettura | No | Cambiare l'endpoint di destinazione con l'endpoint di scrittura. | 
| 400 | MalformedQueryException (Neptune non mostra lo stato interno del parser) | No | Correggere la sintassi della query e riprovare. | 
| 400 | Impossibile eliminare il nodo, perché ha ancora delle relazioni. Per eliminare questo nodo, devi prima eliminare le sue relazioni. | No | Invece di usare `MATCH (n) DELETE n` usare `MATCH(n) DETACH DELETE(n)` | 
| 400 | Operazione non valida: tentativo di rimuovere l'ultima etichetta di un nodo. Un nodo deve avere almeno un'etichetta. | No | Neptune richiede che tutti i nodi abbiano almeno un'etichetta. Se i nodi vengono creati senza un'etichetta esplicita, viene assegnata un'etichetta predefinita `vertex`. Modificate la logica and/or dell'applicazione di interrogazione in modo da non eliminare l'ultima etichetta. L'etichetta singleton di un nodo può essere aggiornata impostando una nuova etichetta e quindi rimuovendo quella vecchia. | 
| 500 | Il numero massimo di richieste è stato violato, ConfiguredQueueCapacity = \$1\$1 per ConnID = \$1\$1 | Sì | Attualmente è possibile elaborare solo 8.192 richieste simultanee, indipendentemente dallo stack e dal protocollo. | 
| 500 | Limite massimo di connessioni violato. | Sì | Sono consentite solo 1.000 connessioni Bolt simultanee per istanza (per HTTP non esiste alcun limite). | 
| 400 | Era previsto uno dei seguenti elementi [nodo, relazione o percorso] ed è stato ottenuto un valore letterale | No | Verificare che siano stati passati gli argomenti corretti, correggere la sintassi della query e riprovare. | 
| 400 | Il valore della proprietà deve essere un valore letterale semplice. Oppure: era prevista una mappa per le proprietà Set ma non ne è stata trovata una. | No | Una clausola SET accetta solo valori letterali semplici, non tipi compositi. | 
| 400 | L'entità passata per l'eliminazione non è stata trovata | No | Verificare che l'entità che si sta cercando di eliminare esista nel database.  | 
| 400 | L'utente non ha accesso al database. | No | Controllare la policy sul ruolo IAM utilizzato. | 
| 400 | Non è stato passato alcun token come parte della richiesta | No | Un token firmato correttamente deve essere passato come parte della richiesta di query su un cluster abilitato per IAM. | 
| 400 | Il messaggio di errore viene propagato. | No | Contatta l' AWS assistenza con l'ID della richiesta. | 
| 500 | Operazione terminata (errore interno) | Sì | Contatta l' AWS assistenza con l'ID della richiesta. | 