Re: Penalty feature of Processor (Disable)

2021-10-25 Thread Edward Armes
Having a quick look at the lookupAttribute code it looks like it takes a Optional<> from the call to the configured service. So I wonder if its worth adding the logic to service instead so that on erroring it can either return a missing value or throw an exception that would trigger the roleback.

Re: Penalty feature of Processor (Disable)

2021-10-25 Thread Matt Burgess
The approach in #1 is already present in a few Put processors like PutHive3QL, the property is named "Rollback on Failure" and takes a boolean value. The docs explain that if set to false, the flowfile is routed to failure, and if true will throw an exception and rollback the session. Check

Re: Penalty feature of Processor (Disable)

2021-10-25 Thread Bryan Bende
The try/catch for IOException in LookupAttribute is after already calling session.get(), so it is separate from loading a flow file. The SimpleDatabaseLookupService catches SQLException and throws LookupFailureException which is the indicator to route to failure, and it lets IOException be thrown

Re: Penalty feature of Processor (Disable)

2021-10-25 Thread Edward Armes
Hmm, it sounds like to me there might be 2 bugs here. One in the lookup attribute processor not isolating the loading of attributes from a FlowFile which may legitimately cause an IOException that would result in the FlowFile needing to be retired. The other in the TeradataDB lookup service not

Re: Penalty feature of Processor (Disable)

2021-10-25 Thread Bryan Bende
I'm not 100% sure on this, but I think the issue is that when LookupAttribute calls the LookupService, it catches IOException and throws a ProcessException, which rolls back the current session and puts the incoming flow files back in the preceding queue. The idea is that it would then retry the

Re: Penalty feature of Processor (Disable)

2021-10-25 Thread Etienne Jouvin
Hello all. You can decrease the penalty value on the processor. Set to 0 for example. Le lun. 25 oct. 2021 à 16:22, Bilal Bektas a écrit : > Hi Community, > > > > We use LookupAttribute processor in order to get lookup value from > Teradata or Oracle DB. Processors work as follows: > > > >

RE: Penalty feature of Processor (Disable)

2021-10-25 Thread Bilal Bektas
Hi Mark, I have done your suggestion. Flow files did not penalize from LookupAttribute (Teradata) but the queue on upstream connection of LookupAttribute (Teradata) increased and LookupAttribute (Teradata) processor not forwarded flow files to failure downstream connection. Is there any other

Re: Penalty feature of Processor (Disable)

2021-10-25 Thread Mark Payne
Bilal, In the Settings tab, you can set the “Penalty Duration” to “0 secs”. Thanks -Mark On Oct 25, 2021, at 10:20 AM, Bilal Bektas mailto:bilal.bek...@obase.com>> wrote: Hi Community, We use LookupAttribute processor in order to get lookup value from Teradata or Oracle DB. Processors work

Penalty feature of Processor (Disable)

2021-10-25 Thread Bilal Bektas
Hi Community, We use LookupAttribute processor in order to get lookup value from Teradata or Oracle DB. Processors work as follows: LookupAttribute (Teradata) ---(failure & unmatched) ---> LookupAttribute (Oracle) This flows works well and LookupAttribute (Teradata) penalizes to flow files