aws / aws/aws-sdk-java-v2

DynamoDbEnhanced queries fail on attributes that contain `~`

Open
#3,945 1 comment 0 reactions 1 assignee Claimed by @debora-ito View on GitHub
bug dynamodb-enhanced p2
Dominant language
Java
Stars
2.6k
Forks
1k
Avg merge
2d 9h
Merged PRs (30d)
51

Description

### Describe the bug

Same bug as #3139 for the character `~`.

### Expected Behavior

Correct mapping.

### Current Behavior

The same exception as reported in other places.

### Reproduction Steps

Define a query using an attribute with `~` in the name.

### Possible Solution

The current implementation maintains a specific list of characters to be substituted, but [the DynamoDB spec](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.NamingRulesDataTypes.html) allows for close-to-arbitrary naming. While adding `~` to this list will solve the immediate failure, the approach should be revisited to be more robust generally.

### Additional Information/Context

_No response_

### AWS Java SDK version used

2.20.50

### JDK version used

openjdk version "17.0.6" 2023-01-17 OpenJDK Runtime Environment Temurin-17.0.6+10 (build 17.0.6+10) OpenJDK 64-Bit Server VM Temurin-17.0.6+10 (build 17.0.6+10, mixed mode, sharing)

### Operating System and version

Gentoo Linux

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.