James Wing created NIFI-2902:
--------------------------------

             Summary: S3 Processor Signer Override for v4 Throws Exception
                 Key: NIFI-2902
                 URL: https://issues.apache.org/jira/browse/NIFI-2902
             Project: Apache NiFi
          Issue Type: Bug
    Affects Versions: 1.1.0
            Reporter: James Wing
            Assignee: James Wing
            Priority: Minor
             Fix For: 1.1.0


NIFI-2763 introduced optional signer overrides for S3 processors - default, v2, 
and v4.  The signer type for the "Signature v4" is wrong, and throws an 
IllegalArgumentException when the processor attempts to start.  The failing 
type is {{AWSS3V4Signer}}.  The correct type is {{AWSS3V4SignerType}}.

The impact is low for now - the feature has not been released, and the 
unconfigured default is v4 in the AWS SDK included with NiFi.  The "Signature 
v2" value works OK.  But the option does not work as advertised, and should be 
fixed before release.

{code}
2016-10-14 17:46:28,685 ERROR [StandardProcessScheduler Thread-3] 
org.apache.nifi.engine.FlowEngine A flow controller task execution stopped 
abnormally
java.util.concurrent.ExecutionException: 
java.lang.reflect.InvocationTargetException
        at java.util.concurrent.FutureTask.report(FutureTask.java:122) 
~[na:1.8.0_66]
        at java.util.concurrent.FutureTask.get(FutureTask.java:192) 
~[na:1.8.0_66]
        at org.apache.nifi.engine.FlowEngine.afterExecute(FlowEngine.java:100) 
~[na:na]
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1150) 
[na:1.8.0_66]
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
[na:1.8.0_66]
        at java.lang.Thread.run(Thread.java:745) [na:1.8.0_66]
Caused by: java.lang.reflect.InvocationTargetException: null
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
~[na:1.8.0_66]
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
~[na:1.8.0_66]
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 ~[na:1.8.0_66]
        at java.lang.reflect.Method.invoke(Method.java:497) ~[na:1.8.0_66]
        at 
org.apache.nifi.util.ReflectionUtils.invokeMethodsWithAnnotations(ReflectionUtils.java:137)
 ~[na:na]
        at 
org.apache.nifi.util.ReflectionUtils.invokeMethodsWithAnnotations(ReflectionUtils.java:125)
 ~[na:na]
        at 
org.apache.nifi.util.ReflectionUtils.invokeMethodsWithAnnotations(ReflectionUtils.java:70)
 ~[na:na]
        at 
org.apache.nifi.util.ReflectionUtils.invokeMethodsWithAnnotation(ReflectionUtils.java:47)
 ~[na:na]
        at 
org.apache.nifi.controller.StandardProcessorNode$1$1.call(StandardProcessorNode.java:1244)
 ~[na:na]
        at 
org.apache.nifi.controller.StandardProcessorNode$1$1.call(StandardProcessorNode.java:1240)
 ~[na:na]
        at java.util.concurrent.FutureTask.run(FutureTask.java:266) 
~[na:1.8.0_66]
        at 
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
 ~[na:1.8.0_66]
        at 
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
 ~[na:1.8.0_66]
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
[na:1.8.0_66]
        ... 2 common frames omitted
Caused by: java.lang.IllegalArgumentException: unknown signer type: 
AWSS3V4Signer
        at 
com.amazonaws.auth.SignerFactory.createSigner(SignerFactory.java:118) ~[na:na]
        at 
com.amazonaws.auth.SignerFactory.getSignerByTypeAndService(SignerFactory.java:95)
 ~[na:na]
        at 
com.amazonaws.AmazonWebServiceClient.computeSignerByServiceRegion(AmazonWebServiceClient.java:262)
 ~[na:na]
        at 
com.amazonaws.AmazonWebServiceClient.computeSignerByURI(AmazonWebServiceClient.java:235)
 ~[na:na]
        at 
com.amazonaws.AmazonWebServiceClient.setEndpoint(AmazonWebServiceClient.java:186)
 ~[na:na]
        at 
com.amazonaws.services.s3.AmazonS3Client.setEndpoint(AmazonS3Client.java:463) 
~[na:na]
        at 
com.amazonaws.services.s3.AmazonS3Client.init(AmazonS3Client.java:449) ~[na:na]
        at 
com.amazonaws.services.s3.AmazonS3Client.<init>(AmazonS3Client.java:396) 
~[na:na]
        at 
com.amazonaws.services.s3.AmazonS3Client.<init>(AmazonS3Client.java:373) 
~[na:na]
        at 
com.amazonaws.services.s3.AmazonS3Client.<init>(AmazonS3Client.java:355) 
~[na:na]
        at 
org.apache.nifi.processors.aws.s3.AbstractS3Processor.createClient(AbstractS3Processor.java:137)
 ~[na:na]
        at 
org.apache.nifi.processors.aws.s3.AbstractS3Processor.createClient(AbstractS3Processor.java:45)
 ~[na:na]
        at 
org.apache.nifi.processors.aws.AbstractAWSCredentialsProviderProcessor.onScheduledUsingControllerService(AbstractAWSCredentialsProviderProcessor.java:73)
 ~[na:na]
        at 
org.apache.nifi.processors.aws.AbstractAWSCredentialsProviderProcessor.onScheduled(AbstractAWSCredentialsProviderProcessor.java:61)
 ~[na:na]
        ... 16 common frames omitted
{code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to