botocore BUG when using DAX client?

0

Hi, I am using the DAX Python client as below and I eventually use batch_write_item as below.

session = botocore.session.get_session()
dax_hook = amazondax.AmazonDaxClient(session, region_name="us-east-1", endpoints=[endpoint])

.
.
.

with concurrent.futures.ThreadPoolExecutor(
    max_workers=MAX_WORKERS
    ) as executor:
        for items_data_batch in items_data:
            executor.submit(write_batch, dax_hook, items_data_batch, ddb_table_name)

The write_batch function essentially tries to write to the cache (and eventually table) via dax_hook.batch_write_item(RequestItems={table_name: batch}). The issue I am facing is this succeeds most of the time but sometimes I get an exception as below. If I retry the batch, with high probability this works (out of 30M keys, 175 fail after this retry; most succeed on the first try). I am not sure, how do we interpret this Exception? I pulled some of the batches that failed and reran and this also worked (on first try), so I am thinking the ValidationException does not make sense (I have a few ideas about what might be the problem but I am not sure). Is this a possible bug in the Exception logic, and another Exception should be thrown?

The Exception I am getting looks like this:

ERROR - An error occurred (ValidationException) when calling the operation: Unknown parameter in RequestItems.some-table[0].PutRequest: "attr_names", must be one of: Item

preguntada hace 2 años294 visualizaciones
1 Respuesta
0

Hi there,

In order to investigate this issue, could you please provide the following details:

  • DAX Python client version
  • DAX cluster ARN
  • timestamp of the errors
INGENIERO DE SOPORTE
Peter_X
respondido hace 2 años

No has iniciado sesión. Iniciar sesión para publicar una respuesta.

Una buena respuesta responde claramente a la pregunta, proporciona comentarios constructivos y fomenta el crecimiento profesional en la persona que hace la pregunta.

Pautas para responder preguntas