Jea*_*eau 5 java mysql processor apache-nifi
我正在尝试使用"PutSQL"处理器来做到这一点.
我修改流文件使用"ReplaceText"并创建一个INSERT
语句.我已经在MySQL数据库中测试了该语句,并且该语句有效.
这是声明:
INSERT INTO monitor.security_nifi (RemoteIPAddress, Timestamp,RequestUrl, Status, Instance)
VALUES ('10.129.2.35', '2016-09-2016:44:16,347','/secure/Dashboard.jspa', 'PASSED', '35');
Run Code Online (Sandbox Code Playgroud)
当它通过处理器时,我不断收到此错误:
由于java.lang.IndexOutOfBoundsException导致会话失败:索引:1,大小:1:java.lang.IndexOutOfBoundsException:索引:1,大小:1
这是堆栈跟踪:
2016-09-21 10:41:24,658 WARN [Timer-Driven Process Thread-1] oanctContinuallyRunProcessorTask java.lang.IndexOutOfBoundsException:Index:1,size:1 at java.util.ArrayList.rangeCheck(ArrayList.java:653)~ [na:1.8.0_101] at java.util.ArrayList.get(ArrayList.java:429)〜[na:1.8.0_101] at org.apache.nifi.processors.standard.PutSQL.onTrigger(PutSQL.java:304 )〜[na:na] atg.apache.nifi.processor.AbstractProcessor.onTrigger(AbstractProcessor.java:27)〜[nifi-api-1.0.0.jar:1.0.0] org.apache.nifi.controller .standardProcessorNode.onTrigger(StandardProcessorNode.java:1064)~ [nifi-framework-core-1.0.0.jar:1.0.0] atg.apache.nifi.controller.tasks.ContinuallyRunProcessorTask.call(ContinuallyRunProcessorTask.java:136) [nifi-framework-core-1.0.0.jar:1.0.0]在org.apache.nifi.controller.tasks.ContinuallyRunProcessorTask.call(ContinuallyRunProcessorTask.java:47)[nifi-framework-core-1.0.0.jar :1.0.0] org.apache.nifi.controller.scheduling.TimerDrivenSchedulingAgent $ 1.run(TimerDrivenSchedulingAgent.java:132)[nifi-framework-core-1.0.0.jar:1.0.0] at java.util.concurrent.Executors $ RunnableAdapter.call(Executors.java:511)[na:1.8.0_101] at java. util.concurrent.FutureTask.runAndReset(FutureTask.java:308)[na:1.8.0_101] at java.util.concurrent.ScheduledThreadPoolExecutor $ ScheduledFutureTask.access $ 301(ScheduledThreadPoolExecutor.java:180)[na:1.8.0_101] at java .util.concurrent.ScheduledThreadPoolExecutor $ ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)[na:1.8.0_101] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)[na:1.8.0_101] at java .util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:617)[na:1.8.0_101] at java.lang.Thread.run(Thread.java:745)[na:1.8.0_101]
这看起来像是隐藏了实际问题的错误。尝试将 PutSQL 处理器的“Support Fragmented Transactions”属性设置为“false”。这应该可以防止索引越界异常,但也可能会揭示一个可以纠正的实际问题。如果这是真的(存在另一个问题并且已更正),您可能能够将属性值恢复为“true”并无错误地运行。
归档时间: |
|
查看次数: |
794 次 |
最近记录: |