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

Ferenc Gerlits updated MINIFICPP-1471:
--------------------------------------
    Description: 
Extensions (processors, controller services, and utilities used by them) are 
currently built as static libraries, and are linked into the minifi executable.

We need to change them to separate shared library plugins which we can load at 
runtime.

Development of these tasks should be done on a separate branch (TODO: add 
branch name), as there will be many conflicts with other changes.  Merge the 
main branch to the development branch from time to time, in order to reduce the 
amount of pain we'll have when merging back to main at the end.

Notes:
 * We need to make sure the plugin we are trying to load is compatible with the 
minifi core (and not load it if it isn't). Initially, we can require a build 
version string to match, ie. each plugin will need to be recompiled for each 
minifi release. We can improve on this approach later.
 * Later we may want to add support for unloading/updating plugins, but this 
doesn't need to be part of the initial rollout.

  was:
Extensions (processors, controller services, and utilities used by them) are 
currently built as static libraries, and are linked into the minifi executable.

We need to change them to separate shared library plugins which we can load at 
runtime.

Notes:
 * We need to make sure the plugin we are trying to load is compatible with the 
minifi core (and not load it if it isn't). Initially, we can require a build 
version string to match, ie. each plugin will need to be recompiled for each 
minifi release. We can improve on this approach later.
 * Later we may want to add support for unloading/updating plugins, but this 
doesn't need to be part of the initial rollout.


> Make extensions loadable at runtime as plugins
> ----------------------------------------------
>
>                 Key: MINIFICPP-1471
>                 URL: https://issues.apache.org/jira/browse/MINIFICPP-1471
>             Project: Apache NiFi MiNiFi C++
>          Issue Type: Epic
>            Reporter: Ferenc Gerlits
>            Assignee: Ferenc Gerlits
>            Priority: Major
>
> Extensions (processors, controller services, and utilities used by them) are 
> currently built as static libraries, and are linked into the minifi 
> executable.
> We need to change them to separate shared library plugins which we can load 
> at runtime.
> Development of these tasks should be done on a separate branch (TODO: add 
> branch name), as there will be many conflicts with other changes.  Merge the 
> main branch to the development branch from time to time, in order to reduce 
> the amount of pain we'll have when merging back to main at the end.
> Notes:
>  * We need to make sure the plugin we are trying to load is compatible with 
> the minifi core (and not load it if it isn't). Initially, we can require a 
> build version string to match, ie. each plugin will need to be recompiled for 
> each minifi release. We can improve on this approach later.
>  * Later we may want to add support for unloading/updating plugins, but this 
> doesn't need to be part of the initial rollout.



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

Reply via email to