trafficserver-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Alan Carroll <solidwallofc...@verizonmedia.com>
Subject Remap plugin DSO reloading - enabling and disabling
Date Fri, 08 May 2020 00:23:24 GMT
As part of the ATS 9 upgrade, a feature was added so that remap plugins
could have their DSO reloaded. This means not just the configuration, but
the implementation itself. While very useful, this has some
unfortunate side effects with plugins that are used in both a global and
remap context. To alleviate this, a configuration variable as added to
disable the feature.

Although reasonable, this is a rather heavy handed way to deal with the
problem. What would be better is the ability to reload the DSO or not on a
per remap plugin basis. I have a few ways this could be done:

1) Add the keyword "@global" to "remap.config". This would behave exactly
as "@plugin" except it would prohibit reloading of the DSO for that plugin.

2) Have the remap reload configuration check to see if the plugin is also a
global plugin and disable remap DSO reload for that plugin.

3) Add a flag to the global plugin registry information which can be set
during TSPluginInit which disables DSO reloading for that plugin, should it
occur in "remap.config". This is similar to (2) but requires a  plugin to
prohibit DSO reloading. The call woud be TSPluginDSOReloadEnable(flag) and
would only be valid when called from TSPluginInit.

4) As (3), except the flag is set by default and must be cleared to enable
DSO reloading in "remap.config".

I'm willing to see if I can make this work, but I would like to have some
feedback on the preferred approach first.

Mime
View raw message