Koji Kawamura created NIFI-4769:
-----------------------------------
Summary: PutAzureBlobStorage and FetchAzureBlobStorage should be
able to use incoming FlowFile with EL to create connection string
Key: NIFI-4769
URL: https://issues.apache.org/jira/browse/NIFI-4769
Project: Apache NiFi
Issue Type: Bug
Components: Extensions
Reporter: Koji Kawamura
The latest change made by NIFI-4005 can break existing flows if Put or Fetch
AzureBlobStorage is configured to use incoming FlowFile attribute with EL for
accountName or accountKey. PutAzureBlobStorage and FetchAzureBlobStorage used
to be able to [specify key and account name from incoming FlowFile using
EL|https://github.com/apache/nifi/pull/1886/files#diff-a1be985cab6af1d412dbb21c5750e42aL76].
But the change removed that capability mistakenly.
Following error messages are logged if this happens:
{code}
2018-01-12 09:59:58,445 ERROR [Timer-Driven Process Thread-7]
o.a.n.p.a.storage.PutAzureBlobStorage
PutAzureBlobStorage[id=045a9107-a6f1-363f-bd95-1ba8abd7ee09] Invalid connection
string URI for 'PutAzureBlobStorage': java.lang.IllegalArgumentException:
Invalid connection string.
java.lang.IllegalArgumentException: Invalid connection string.
at
com.microsoft.azure.storage.CloudStorageAccount.parse(CloudStorageAccount.java:249)
at
org.apache.nifi.processors.azure.storage.utils.AzureStorageUtils.createCloudBlobClient(AzureStorageUtils.java:96)
at
org.apache.nifi.processors.azure.storage.PutAzureBlobStorage.onTrigger(PutAzureBlobStorage.java:75)
at
org.apache.nifi.processor.AbstractProcessor.onTrigger(AbstractProcessor.java:27)
at
org.apache.nifi.controller.StandardProcessorNode.onTrigger(StandardProcessorNode.java:1122)
at
org.apache.nifi.controller.tasks.ContinuallyRunProcessorTask.call(ContinuallyRunProcessorTask.java:147)
at
org.apache.nifi.controller.tasks.ContinuallyRunProcessorTask.call(ContinuallyRunProcessorTask.java:47)
at
org.apache.nifi.controller.scheduling.TimerDrivenSchedulingAgent$1.run(TimerDrivenSchedulingAgent.java:128)
at
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
{code}
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)