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

1개 답변
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
지원 엔지니어
Peter_X
답변함 2년 전

로그인하지 않았습니다. 로그인해야 답변을 게시할 수 있습니다.

좋은 답변은 질문에 명확하게 답하고 건설적인 피드백을 제공하며 질문자의 전문적인 성장을 장려합니다.

질문 답변하기에 대한 가이드라인