Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 73D67200B95 for ; Mon, 12 Sep 2016 21:27:22 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id 70D14160AC8; Mon, 12 Sep 2016 19:27:22 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id BD1A8160AB2 for ; Mon, 12 Sep 2016 21:27:21 +0200 (CEST) Received: (qmail 98590 invoked by uid 500); 12 Sep 2016 19:27:21 -0000 Mailing-List: contact issues-help@nifi.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@nifi.apache.org Delivered-To: mailing list issues@nifi.apache.org Received: (qmail 98551 invoked by uid 99); 12 Sep 2016 19:27:20 -0000 Received: from arcas.apache.org (HELO arcas) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 12 Sep 2016 19:27:20 +0000 Received: from arcas.apache.org (localhost [127.0.0.1]) by arcas (Postfix) with ESMTP id D5E832C014F for ; Mon, 12 Sep 2016 19:27:20 +0000 (UTC) Date: Mon, 12 Sep 2016 19:27:20 +0000 (UTC) From: "ASF GitHub Bot (JIRA)" To: issues@nifi.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (NIFI-2752) Correct ReplaceText default pattern and unit tests MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 archived-at: Mon, 12 Sep 2016 19:27:22 -0000 [ https://issues.apache.org/jira/browse/NIFI-2752?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15485043#comment-15485043 ] ASF GitHub Bot commented on NIFI-2752: -------------------------------------- GitHub user jskora opened a pull request: https://github.com/apache/nifi/pull/1007 NIFI-2752 Correct ReplaceText default pattern and unit tests * Corrected the DEFAULT_REGEX pattern. * Added tests to isolate regex capture group problem and verify corrected functionality. * Removed short circuit logic that masked configuration errors and created inconsistent processor behavior. You can merge this pull request into a Git repository by running: $ git pull https://github.com/jskora/nifi NIFI-2752 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/nifi/pull/1007.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #1007 ---- ---- > Correct ReplaceText default pattern and unit tests > -------------------------------------------------- > > Key: NIFI-2752 > URL: https://issues.apache.org/jira/browse/NIFI-2752 > Project: Apache NiFi > Issue Type: Bug > Components: Core Framework > Affects Versions: 1.1.0, 0.8.0, 0.7.1 > Reporter: Joe Skora > Assignee: Joe Skora > > [{{ReplaceText.DEFAULT_REGEX}}|https://github.com/apache/nifi/blob/master/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/ReplaceText.java#L87] is defined as "(?s:\^.\*$)", which is valid PCRE but must be expressed as "(?s)(\^.\*$)" in Java. > The Java [Pattern class|https://docs.oracle.com/javase/8/docs/api/index.html] specifies that patterns like "(?idmsux-idmsux:X)" are _non-capturing_, so anything but the default pattern and replacement value result in empty output. This isn't caught by unit tests because the code short circuits if the default pattern and replacement are found in [ReplaceText.onTrigger()|https://github.com/apache/nifi/blob/master/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/ReplaceText.java#L217]. This hides the capture group problem from the unit tests and the default processor configuration, but causes the processor to produce empty output if using non-trivial patterns and replacements. -- This message was sent by Atlassian JIRA (v6.3.4#6332)