You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@nifi.apache.org by "John E Fortin (Jira)" <ji...@apache.org> on 2019/10/28 15:17:00 UTC
[jira] [Updated] (NIFI-6795) Fix bug in
CouchbaseMapCacheClient.java which prevents new Couchbase Object from being
created
[ https://issues.apache.org/jira/browse/NIFI-6795?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
John E Fortin updated NIFI-6795:
--------------------------------
Priority: Major (was: Minor)
> Fix bug in CouchbaseMapCacheClient.java which prevents new Couchbase Object from being created
> ----------------------------------------------------------------------------------------------
>
> Key: NIFI-6795
> URL: https://issues.apache.org/jira/browse/NIFI-6795
> Project: Apache NiFi
> Issue Type: Bug
> Components: Core Framework
> Reporter: John E Fortin
> Priority: Major
> Time Spent: 1h
> Remaining Estimate: 0h
>
> The function below has a bug:
> {code:java}
> @Override
> public <K, V> boolean replace(AtomicCacheEntry<K, V, Long> entry, Serializer<K> keySerializer, Serializer<V> valueSerializer) throws IOException {
> final Long revision = entry.getRevision().orElse(0L);
> final String docId = toDocumentId(entry.getKey(), keySerializer);
> final Document doc = toDocument(docId, entry.getValue(), valueSerializer, revision);
> try {
> if (revision < 0) {
> // If the document does not exist yet, try to create one.
> try {
> bucket.insert(doc);
> return true;
> } catch (DocumentAlreadyExistsException e) {
> return false;
> }{code}
> {code:java}
> final Long revision = entry.getRevision().orElse(0L);{code}
> should be
> {code:java}
> final Long revision = entry.getRevision().orElse(-1L);{code}
> otherwise a new document never gets created in the check
> {code:java}
> if (revision < 0) {
> // If the document does not exist yet, try to create one.
> try {
> bucket.insert(doc);
> return true;
> } catch (DocumentAlreadyExistsException e) {
> return false;
> }{code}
> I have tested the code change locally and it works properly...
>
> --John
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)