nifi-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Matt Burgess (Jira)" <j...@apache.org>
Subject [jira] [Updated] (MINIFI-537) Possible NullPointerException in BootstrapTransformer
Date Wed, 28 Apr 2021 16:00:05 GMT

     [ https://issues.apache.org/jira/browse/MINIFI-537?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Matt Burgess updated MINIFI-537:
--------------------------------
    Fix Version/s:     (was: 0.6.0)
                   1.14.0

> Possible NullPointerException in BootstrapTransformer
> -----------------------------------------------------
>
>                 Key: MINIFI-537
>                 URL: https://issues.apache.org/jira/browse/MINIFI-537
>             Project: Apache NiFi MiNiFi
>          Issue Type: New Feature
>            Reporter: Kevin Doran
>            Assignee: Kevin Doran
>            Priority: Major
>             Fix For: 1.14.0
>
>          Time Spent: 1h 50m
>  Remaining Estimate: 0h
>
> [https://github.com/apache/nifi-minifi/pull/167] introduced the ability to override
security properties and sensitive properties in bootstrap.conf
> When using this feature, there is a potential NPE that prevents MiNiFi from starting.
> Steps to reproduce:
> In bootstrap.conf set any of the SSL/TLS properties, for example:
>  
> {noformat}
> nifi.minifi.security.keystoreType=jks{noformat}
> Leave this unset / blank:
>  
>  
> {noformat}
> nifi.minifi.sensitive.props.key={noformat}
>  
>  
> Start minifi and observe the following in app.log:
> {noformat}
> 2020-08-27 10:12:10,877 INFO [main] o.a.n.m.bootstrap.util.ConfigTransformer Bootstrap
flow override: Replaced security properties2020-08-27 10:12:10,877 INFO [main] o.a.n.m.bootstrap.util.ConfigTransformer
Bootstrap flow override: Replaced security properties2020-08-27 10:12:10,881 ERROR [main]
o.apache.nifi.minifi.bootstrap.RunMiNiFi The config file is malformed, unable to start.org.apache.nifi.minifi.bootstrap.configuration.ConfigurationChangeException:
Failed to parse the config YAML while creating the nifi.properties at org.apache.nifi.minifi.bootstrap.util.ConfigTransformer.writeNiFiProperties(ConfigTransformer.java:290)
at org.apache.nifi.minifi.bootstrap.util.ConfigTransformer.transformConfigFile(ConfigTransformer.java:120)
at org.apache.nifi.minifi.bootstrap.RunMiNiFi.performTransformation(RunMiNiFi.java:1712) at
org.apache.nifi.minifi.bootstrap.RunMiNiFi.start(RunMiNiFi.java:1180) at org.apache.nifi.minifi.bootstrap.RunMiNiFi.main(RunMiNiFi.java:244)Caused
by: java.lang.NullPointerException: null at java.util.Hashtable.put(Hashtable.java:460) at
org.apache.nifi.minifi.bootstrap.util.OrderedProperties.put(OrderedProperties.java:45) at
java.util.Properties.setProperty(Properties.java:166) at org.apache.nifi.minifi.bootstrap.util.OrderedProperties.setProperty(OrderedProperties.java:62)
at org.apache.nifi.minifi.bootstrap.util.ConfigTransformer.writeNiFiProperties(ConfigTransformer.java:260)
... 4 common frames omitted{noformat}
> This is because when SecurityPropertiesSchema is created (caused by the override properties
in bootstrap.conf), the nested SensitivePropsSchema is created, but initialized with a null
key. This causes the NPE when this property is accessed later (unchecked) in ConfigTransformer.writeNiFiProperties.
> I think the best solution here is to always initialize SensitivePropsSchema.key to its
default value (empty string) which is what happens when it is created normally without the
bootstrap.conf overrides.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Mime
View raw message