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

ASF GitHub Bot commented on NIFI-4625:
--------------------------------------

Github user mattyb149 commented on a diff in the pull request:

    https://github.com/apache/nifi/pull/2287#discussion_r160470497
  
    --- Diff: 
nifi-nar-bundles/nifi-elasticsearch-bundle/nifi-elasticsearch-5-processors/src/main/java/org/apache/nifi/processors/elasticsearch/PutElasticsearch5.java
 ---
    @@ -129,6 +130,12 @@
                 .defaultValue("100")
                 .expressionLanguageSupported(true)
                 .build();
    +    
    +    public static final PropertyDescriptor VERSION_ATTRIBUTE = new 
PropertyDescriptor.Builder()
    +                   .name("Version").displayName("Version Attribute")
    +                   .description("The name of the attribute containing the 
version for each FlowFile. Only used for index operation. Forces External 
Versioning")
    +                   
.required(false).expressionLanguageSupported(false).addValidator(StandardValidators.ATTRIBUTE_KEY_VALIDATOR)
    --- End diff --
    
    What do you think about the above suggestion, changing from an attribute 
name to an Expression Language supported property with a NON_EMPTY_VALIDATOR? 
Personally I'd prefer it that way, even if it doesn't behave the same as 
ID_ATTRIBUTE, since they are not really used the same way anyway. A regular 
EL-supporting property is more flexible and you can still use a flow file 
attribute by simply wrapping the name in an expression like ${myAttribute}.
    If you'd like to keep the current behavior and/or discuss further, please 
let me know


> Add External Versioning to PutElasticSearch5 Processor
> ------------------------------------------------------
>
>                 Key: NIFI-4625
>                 URL: https://issues.apache.org/jira/browse/NIFI-4625
>             Project: Apache NiFi
>          Issue Type: Improvement
>          Components: Core Framework
>    Affects Versions: 1.3.0
>         Environment: All
>            Reporter: Pedro Gomes
>            Assignee: Pedro Gomes
>              Labels: elasticsearch, processor
>   Original Estimate: 48h
>  Remaining Estimate: 48h
>
> Currently the PutElasticSearch5 processor does not support external 
> versioning.
> The idea would be to add a property that follows the same logic as the Id 
> property, and allows index documents with an externally controlled version.
> I've changed the code already and added some tests. Right now the changes 
> proposed are:
> - Add a new property Version in the processor block.
> - Change the Index operation to support the versioning number and versioning 
> type = external
> - Check if the versioning is used with other operation types, fail if so.
> (Idea behind this is that the bulk api doest not support external versioning 
> for any other operation except Index)



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to