in src/main/python/QueryResultsHandler/query_results_handler.py [0:0]
def update_query_status(table, user_id, query_execution_id, query_state):
dynamodb = boto3.resource('dynamodb', region_name=AWS_REGION_NAME)
ddb_table = dynamodb.Table(table)
try:
response = ddb_table.update_item(
Key={'user_id': user_id},
UpdateExpression='SET query_status = :query_status',
ConditionExpression=Attr('query_id').eq(query_execution_id),
ExpressionAttributeValues={':query_status': query_state},
ReturnValues='UPDATED_NEW')
except botocore.exceptions.ClientError as ex:
if ex.response['Error']['Code'] == 'ConditionalCheckFailedException':
LOGGER.info(ex.response['Error']['Message'])
else:
raise ex
return response