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
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 |
|
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. |
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. |
400 |
|
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 |
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 |
500 |
Il numero massimo di richieste è stato violato, ConfiguredQueueCapacity = {} per ConnID = {} |
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. |