[ 
https://issues.apache.org/jira/browse/NIFI-6795?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16988272#comment-16988272
 ] 

Joe Witt commented on NIFI-6795:
--------------------------------

doing some googling I was able to find your PR . 
https://github.com/apache/nifi/pull/3833/files

It is easiest/best/most likely to get attention when there is a PR submitted 
and travis tests pass/etc.. This make it easy for a committer to see/quickly 
validate and merge.  Granted this change is super simple but the above steps 
help a lot.



> 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)

Reply via email to