diff --git a/service/src/main/java/org/whispersystems/textsecuregcm/storage/MessagesDynamoDb.java b/service/src/main/java/org/whispersystems/textsecuregcm/storage/MessagesDynamoDb.java index c9f752c9c..8a7d67e37 100644 --- a/service/src/main/java/org/whispersystems/textsecuregcm/storage/MessagesDynamoDb.java +++ b/service/src/main/java/org/whispersystems/textsecuregcm/storage/MessagesDynamoDb.java @@ -86,8 +86,13 @@ public class MessagesDynamoDb extends AbstractDynamoDbStore { .put(LOCAL_INDEX_MESSAGE_UUID_KEY_SORT, convertLocalIndexMessageUuidSortKey(messageUuid)) .put(KEY_TYPE, AttributeValues.fromInt(message.getType().getNumber())) .put(KEY_TIMESTAMP, AttributeValues.fromLong(message.getTimestamp())) - .put(KEY_TTL, AttributeValues.fromLong(getTtlForMessage(message))) - .put(KEY_DESTINATION_UUID, AttributeValues.fromUUID(UUID.fromString(message.getDestinationUuid()))); + .put(KEY_TTL, AttributeValues.fromLong(getTtlForMessage(message))); + + // TODO All messages should have a destination UUID by 2021-12-03, and this can be set unconditionally + if (message.hasDestinationUuid()) { + item.put(KEY_DESTINATION_UUID, AttributeValues.fromUUID(UUID.fromString(message.getDestinationUuid()))); + } + if (message.hasRelay() && message.getRelay().length() > 0) { item.put(KEY_RELAY, AttributeValues.fromString(message.getRelay())); }