[ 
https://issues.apache.org/jira/browse/DELTASPIKE-1402?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17120916#comment-17120916
 ] 

Romain Manni-Bucau edited comment on DELTASPIKE-1402 at 6/1/20, 10:38 AM:
--------------------------------------------------------------------------

I guess we need to refine the target:

 
 # hot reloading
 # bootstrap config (what if the config is mapped to a runtime model, it can be 
reloaded, it will never be refreshed)
 # immutable deployments (some deployments will not want to reload cause it 
means potentially breaking a valid deployment)
 # performances: most servlet container have a dev mode with reloading at read 
and a prod mode where it is disabled to avoid any IO which are cheap if done 
alone but can be expensive if the disk is used with an IO expensive app

Therefore I suspect we can need a toggle to enable a refresh at read or a 
cached mode (read once). Using an enum it can enable us to add later a 
background refresh if needed so I would add something like

 
{code:java}
deltaspike.configsource.userhome.reloadStrategy=[SYNCHRONOUS_AT_READ|NONE|SKIP]
{code}
Side note: SKIP means "I don't want that, most apps of that machine use it but 
not me"

Hope it makes sense.


was (Author: romain.manni-bucau):
I guess we need to refine the target:

 
 # hot reloading
 # bootstrap config (what if the config is mapped to a runtime model, it can be 
reloaded, it will never be refreshed)
 # immutable deployments (some deployments will not want to reload cause it 
means potentially breaking a valid deployment)
 # performances: most servlet container have a dev mode with reloading at read 
and a prod mode where it is disabled to avoid any IO which are cheap if done 
alone but can be expensive if the disk is used with an IO expensive app

Therefore I suspect we can need a toggle to enable a refresh at read or a 
cached mode (read once). Using an enum it can enable us to add later a 
background refresh if needed so I would add something like

 
{code:java}
deltaspike.configsource.userhome.reloadStrategy=[SYNCHRONOUS_AT_READ|NONE]
{code}
Hope it makes sense.

> ~/.deltaspike/apache-deltaspike.properties doesn't pickup changes during 
> runtime
> --------------------------------------------------------------------------------
>
>                 Key: DELTASPIKE-1402
>                 URL: https://issues.apache.org/jira/browse/DELTASPIKE-1402
>             Project: DeltaSpike
>          Issue Type: Improvement
>      Security Level: public(Regular issues) 
>          Components: Configuration
>    Affects Versions: 1.9.3
>            Reporter: Mark Struberg
>            Priority: Major
>             Fix For: 1.9.4
>
>
> Right now the {{ConfigSource}} registered via 
> {{org.apache.deltaspike.core.impl.config.DefaultConfigSourceProvider#addUserHomeConfigSource}}
>  does not reload dynamically if the file got changed.
> That means DeltaSpike Config right now doesn't automatically pick up changes 
> in this file.
> The same is true for other 
> {{org.apache.deltaspike.core.impl.config.PropertyFileConfigSource}} but most 
> of them are in a jar anyway, so it doesn't make any difference.
> Of course for PropertyFileConfigSources representing native files on the disk 
> it might also be nice to detect dynamic changes.
> It might be perfectly fine to have changes only picked up based on the 
> last-changed timestamp of the file and only checked every minute or so.



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

Reply via email to