

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Recomendaciones para utilizar las solicitudes de escritura de Gremlin en Lambda
<a name="lambda-functions-gremlin-write-recommendations"></a>

Si la función de Lambda modifica los datos del gráfico, plantéese adoptar una estrategia de retroceso y reintento para gestionar las siguientes excepciones:
+ **`ConcurrentModificationException`**: la semántica de las transacciones de Neptune significa que, en ocasiones, se produce un error en las solicitudes de escritura con una `ConcurrentModificationException`. En estas situaciones, pruebe un mecanismo de reintento exponencial basado en el retroceso.
+ **`ReadOnlyViolationException`**: dado que la topología del clúster puede cambiar en cualquier momento como resultado de eventos planificados o imprevistos, las responsabilidades de escritura pueden migrar de una instancia del clúster a otra. Si el código de función intenta enviar una solicitud de escritura a una instancia que ya no es la instancia principal (escritor), se produce un error en la solicitud con una `ReadOnlyViolationException`. Cuando esto suceda, cierre la conexión existente, vuelva a conectarse al punto de conexión del clúster y, a continuación, vuelva a intentar la solicitud.

Además, si utiliza una estrategia de retroceso y reintento para solucionar los problemas de las solicitudes de escritura, plantéese implementar consultas idempotentes para las solicitudes de creación y actualización. Por ejemplo, mediante [fold().coalesce().unfold()](http://kelvinlawrence.net/book/Gremlin-Graph-Guide.html#upsert).