La solicitud condicional falló sin condición condicional en el código.
Estoy usando Dynamodb para guardar los datos de mi nuevo usuario, pero he obtenido algunas excepciones de ConditionalCheckFailedException al guardar los datos.
He verificado en línea y he encontrado que si estamos usando alguna condición, podría haber una posibilidad de conflicto con los datos.
Así que he refactorizado mi código y he eliminado la condición saveExpression.setConditionalOperator(ConditionalOperator.AND)
.
Pero después de eso, sigo teniendo el mismo problema:
{
"errorCode": 500,
"message": "The conditional request failed (Service: AmazonDynamoDBv2; Status Code: 400; Error Code: ConditionalCheckFailedException; Request ID: LN5P87FREI8SP1EIG4C9O60OUVVV4KQNSO5AEMVJF66Q9LSMANOG; Proxy: null)"
}
Quiero saber cuáles son los otros factores que causaron este problema. Sé que es difícil sugerir porque tengo un código limitado para compartir. Pero cualquier ayuda será útil aquí.
Adjunto mi código de base de datos:
java
</string,>
@Override
public Optional<item> addUser(@NonNull final Item userItem) {
DynamoDBSaveExpression saveExpression = new DynamoDBSaveExpression();
Map<string, expectedattributevalue=""> expectedAttributes =
Map.of("UserId", new ExpectedAttributeValue(false));
saveExpression.setExpected(expectedAttributes);
super.save(userItem, saveExpression);
return super.load(Item.class, userItem.getUserId())
}
davy.ai
Es posible que existan otros factores que causen el problema de la excepción ConditionalCheckFailedException incluso después de refactorizar el código y eliminar el operador condicional. Algunos posibles factores a considerar son:
Sin más detalles o código, puede ser difícil diagnosticar la causa exacta del problema.