You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@nifi.apache.org by "Brandon DeVries (JIRA)" <ji...@apache.org> on 2016/07/21 14:15:20 UTC
[jira] [Updated] (NIFI-2344) non-required Controller services
disabled on restart
[ https://issues.apache.org/jira/browse/NIFI-2344?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Brandon DeVries updated NIFI-2344:
----------------------------------
Description:
So... the problem from NIFI-2160 isn't quite dead yet. The fix for that ticket recursively enumerates controller services that a controller service references, but only if they are *required*\[1\]. However, there are many cases in which referenced controller services may not be required properties:
[DistributedMapCacheClientService|http://nifi.apache.org/docs/nifi-docs/components/org.apache.nifi.distributed.cache.client.DistributedMapCacheClientService/index.html] - SSL Context Service
[DistributedMapCacheServer|http://nifi.apache.org/docs/nifi-docs/components/org.apache.nifi.distributed.cache.server.map.DistributedMapCacheServer/index.html] - SSL Context Service
[DistributedSetCacheClientService|http://nifi.apache.org/docs/nifi-docs/components/org.apache.nifi.distributed.cache.client.DistributedSetCacheClientService/index.html] - SSL Context Service
[DistributedSetCacheServer|http://nifi.apache.org/docs/nifi-docs/components/org.apache.nifi.distributed.cache.server.DistributedSetCacheServer/index.html] - SSL Context Service
[JMSConnectionFactoryProvider|http://nifi.apache.org/docs/nifi-docs/components/org.apache.nifi.jms.cf.JMSConnectionFactoryProvider/index.html] - SSL Context Service
This causes the above services to become disabled on restart if they were previously enabled. I'd propose changing the line:
{code}
if (descriptor.getControllerServiceDefinition() != null && descriptor.isRequired()) {
{code}
to:
{code}
if (descriptor.getControllerServiceDefinition() != null && pEntry.getValue() != null) {
{code}
\[1\] https://github.com/apache/nifi/blob/rel/nifi-0.7.0/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/service/StandardControllerServiceNode.java#L121
was:
So... the problem from NIFI-2160 isn't quite dead yet. The fix for that ticket recursively enumerates controller services that a controller service references, but only if they are *required*\[1\]. However, there are many cases in which referenced controller services may not be required properties:
[DistributedMapCacheClientService|http://nifi.apache.org/docs/nifi-docs/components/org.apache.nifi.distributed.cache.client.DistributedMapCacheClientService/index.html] - SSL Context Service
[DistributedMapCacheServer|http://nifi.apache.org/docs/nifi-docs/components/org.apache.nifi.distributed.cache.server.map.DistributedMapCacheServer/index.html] - SSL Context Service
[DistributedSetCacheClientService|http://nifi.apache.org/docs/nifi-docs/components/org.apache.nifi.distributed.cache.client.DistributedSetCacheClientService/index.html] - SSL Context Service
[DistributedSetCacheServer|http://nifi.apache.org/docs/nifi-docs/components/org.apache.nifi.distributed.cache.server.DistributedSetCacheServer/index.html] - SSL Context Service
[JMSConnectionFactoryProvider|http://nifi.apache.org/docs/nifi-docs/components/org.apache.nifi.jms.cf.JMSConnectionFactoryProvider/index.html] - SSL Context Service
This causes the above services to become disabled on restart if they were previously enabled. I'd propose changing the line:
{code}
if (descriptor.getControllerServiceDefinition() != null && descriptor.isRequired()) {
{code}
to:
{code}
if (descriptor.getControllerServiceDefinition() != null && pEntry.getValue() != null) {
{code}
\[1\] https://github.com/apache/nifi/blob/master/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/service/StandardControllerServiceNode.java#L173
> non-required Controller services disabled on restart
> ----------------------------------------------------
>
> Key: NIFI-2344
> URL: https://issues.apache.org/jira/browse/NIFI-2344
> Project: Apache NiFi
> Issue Type: Bug
> Affects Versions: 0.7.0
> Reporter: Brandon DeVries
> Fix For: 1.0.0, 0.8.0
>
>
> So... the problem from NIFI-2160 isn't quite dead yet. The fix for that ticket recursively enumerates controller services that a controller service references, but only if they are *required*\[1\]. However, there are many cases in which referenced controller services may not be required properties:
> [DistributedMapCacheClientService|http://nifi.apache.org/docs/nifi-docs/components/org.apache.nifi.distributed.cache.client.DistributedMapCacheClientService/index.html] - SSL Context Service
> [DistributedMapCacheServer|http://nifi.apache.org/docs/nifi-docs/components/org.apache.nifi.distributed.cache.server.map.DistributedMapCacheServer/index.html] - SSL Context Service
> [DistributedSetCacheClientService|http://nifi.apache.org/docs/nifi-docs/components/org.apache.nifi.distributed.cache.client.DistributedSetCacheClientService/index.html] - SSL Context Service
> [DistributedSetCacheServer|http://nifi.apache.org/docs/nifi-docs/components/org.apache.nifi.distributed.cache.server.DistributedSetCacheServer/index.html] - SSL Context Service
> [JMSConnectionFactoryProvider|http://nifi.apache.org/docs/nifi-docs/components/org.apache.nifi.jms.cf.JMSConnectionFactoryProvider/index.html] - SSL Context Service
> This causes the above services to become disabled on restart if they were previously enabled. I'd propose changing the line:
> {code}
> if (descriptor.getControllerServiceDefinition() != null && descriptor.isRequired()) {
> {code}
> to:
> {code}
> if (descriptor.getControllerServiceDefinition() != null && pEntry.getValue() != null) {
> {code}
> \[1\] https://github.com/apache/nifi/blob/rel/nifi-0.7.0/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/service/StandardControllerServiceNode.java#L121
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)