private void addLegacySPVData(
String vertexId,
long timestamp,
String propertyKey,
String propertyName,
String propertyValue
) throws MutationsRejectedException {
String dataRowKey = new DataTableRowKey(vertexId, propertyKey, propertyName).getRowKey() + VALUE_SEPARATOR + timestamp;
Mutation addPropertyMutation = new Mutation(vertexId);
byte[] data = propertyValue.getBytes();
StreamingPropertyValue spv = StreamingPropertyValue.create(propertyValue);
StreamingPropertyValueTableRef spvValue = new StreamingPropertyValueTableRef(dataRowKey, spv, data);
Metadata metadata = Metadata.create();
Property property = new MutablePropertyImpl(propertyKey, propertyName, spvValue, metadata, timestamp, new HashSet<>(), new Visibility(""), FetchHints.ALL);
Text columnQualifier = KeyHelper.getColumnQualifierFromPropertyColumnQualifier(property, getGraph().getNameSubstitutionStrategy());
addPropertyMutation.put(AccumuloElement.CF_PROPERTY, columnQualifier, new Value(getGraph().getVertexiumSerializer().objectToBytes(spvValue)));
getGraph().getVerticesWriter().addMutation(addPropertyMutation);
Mutation addDataMutation = new Mutation(dataRowKey);
addDataMutation.put(EMPTY_TEXT, EMPTY_TEXT, timestamp - 1000, new Value(data));
getGraph().getDataWriter().addMutation(addDataMutation);
getGraph().flush();
}