Conrad, Ahhh i *think* you have found a bug that is present. It appears to be this line. We should be doing a null check there before checking length of value.
https://github.com/apache/nifi/blob/master/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/ExtractText.java#L325 Will put in a JIRA and address immediately. Thanks Joe On Wed, Mar 16, 2016 at 11:08 AM, Conrad Crampton <[email protected]> wrote: > Hi, > I don’t know if this is expected behaviour but I think I understand why this > is happening now. I have a regexp in the ExtractText processors viz: > > (?s:^.+: (\d\d?)(\w\w\w)(\d{4}) ([\d ]\d:\d\d:\d\d) Product=(.+?) > OriginIP=(.+?) Origin=(.+?) Action=(.+?) SIP=(.+?) Source=(.+?) SPort=(\d+?) > DIP=(.+) Destination=(.+?) DPort=(\d+?) Protocol=(.+?)(?: ICMPType=(.+?) > ICMPCode=(.+?))? IFName=(.+?) IFDirection=(.+?) Reason=(.+?) Rule=(.+?) > PolicyName=(.+?) Info=(.+?) XlateSIP=(.+?) XlateSPort=([\d]+|\-?) > XlateDIP=(.+?) XlateDPort=([\d]+|\-?)(.*)$) > > With this (?: ICMPType=(.+?) ICMPCode=(.+?))? the problem I think. Because > I have made a non capturing matching group optional, for those log lines > that don’t have this section matching the dynamic variable can’t set the > index correctly as the match is returning null for these capture groups. > Obviously I haven’t gone too deep into the code, but if I have a > RouteOnContent processor before this testing for this string and remove this > from regexp (and have two ExtractText processors) then it works. It appeared > that all the NPE were thrown for those lines that didn’t match the optional > matching group. > > Has this been observed before? > > Thanks > Conrad > > From: Conrad Crampton <[email protected]> > Reply-To: "[email protected]" <[email protected]> > Date: Wednesday, 16 March 2016 at 12:01 > To: "[email protected]" <[email protected]> > Subject: NPE in ExtractText > > Hi, > I’m getting repeated NullPointerException reported for an ExtractText > processor (processing the resultant splits from a ListenSyslog) thus: > > datanode2-cm1.mis-cds.local:9092ExtractText[id=4372efbf-efcf-3065-acd4-b8fdb91d64fb] > ExtractText[id=4372efbf-efcf-3065-acd4-b8fdb91d64fb] failed to process due > to java.lang.NullPointerException; rolling back session: > java.lang.NullPointerException > > The same error appears for each node in my cluster too so not specific to > one node. > I have enabled additional logging for ExtractText processor (I think) by > adding > > <logger name="org.apache.nifi.processors.standard.ExtractText" level=“DEBUG" > additivity="false"> > <appender-ref ref="USER_FILE"/> > </logger> > > To each logback.xml on each node, but this doesn’t give any more details as > to why the NPE. > Flowflies are getting through the processor but concerned about the errors > as clearly something isn’t correct so suggestions welcome. > > Thanks > Conrad > > > SecureData, combating cyber threats > > ________________________________ > > The information contained in this message or any of its attachments may be > privileged and confidential and intended for the exclusive use of the > intended recipient. If you are not the intended recipient any disclosure, > reproduction, distribution or other dissemination or use of this > communications is strictly prohibited. The views expressed in this email are > those of the individual and not necessarily of SecureData Europe Ltd. Any > prices quoted are only valid if followed up by a formal written quote. > > SecureData Europe Limited. Registered in England & Wales 04365896. > Registered Address: SecureData House, Hermitage Court, Hermitage Lane, > Maidstone, Kent, ME16 9NT > > > > ***This email originated outside SecureData*** > > Click here to report this email as spam.
