try {
convStore.newObject(tx, convId, makeObsoleteConvMetadata(), history,
inhibitPreAndPostCommit);
convMetadataStore.put(tx, convId,
convMetadata != null ? convMetadata : new ConvMetadataGsonImpl());
tx.commit();
} catch (SlobAlreadyExistsException e) {
throw new RetryableFailure("Slob id collision, retrying: " + convId, e);
} catch (AccessDeniedException e) {
throw new RuntimeException(
"Unexpected AccessDeniedException creating conv " + convId, e);