You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@falcon.apache.org by "Shaik Idris Ali (JIRA)" <ji...@apache.org> on 2014/03/29 18:47:15 UTC
[jira] [Comment Edited] (FALCON-352) old properties not removed on
refresh of runtime properties
[ https://issues.apache.org/jira/browse/FALCON-352?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13954358#comment-13954358 ]
Shaik Idris Ali edited comment on FALCON-352 at 3/29/14 5:45 PM:
-----------------------------------------------------------------
loadProperties -> doLoadProperties is not synchronized as the values are populated in a loop, isn't it allows to read partially loaded key/values with RuntimeProperties?
Also, with new instance we are starting a thread so creating a new instance will work?
I think we should make doLoadProperties threadsafe (thread is only blocked till all key/values are populated).
{code}
synchronized (this) {
this.clear();
for (String key : keys) {
String value = origProps.getProperty(domain + "." + key, origProps.getProperty("*." + key));
if (value != null) {
value = ExpressionHelper.substitute(value);
LOG.debug(key + "=" + value);
put(key, value);
}
}
}
{code}
was (Author: shaik.idris):
loadProperties -> doLoadProperties is not synchronized as the values are populated in a loop, isn't it allows to read partially loaded key/values with RuntimeProperties?
Also, with new instance we are starting a thread so creating a new instance will work?
I think we should make doLoadProperties threadsafe (thread is only blocked till all key/values are populated).
{quote}
synchronized (this) {
this.clear();
for (String key : keys) {
String value = origProps.getProperty(domain + "." + key, origProps.getProperty("*." + key));
if (value != null) {
value = ExpressionHelper.substitute(value);
LOG.debug(key + "=" + value);
put(key, value);
}
}
}
{quote}
> old properties not removed on refresh of runtime properties
> ------------------------------------------------------------
>
> Key: FALCON-352
> URL: https://issues.apache.org/jira/browse/FALCON-352
> Project: Falcon
> Issue Type: Bug
> Affects Versions: 0.5
> Environment: prod
> Reporter: Samarth Gupta
> Assignee: Shaik Idris Ali
> Labels: commons
> Attachments: FALCON-352.patch
>
>
> when runtime properties are refreshed at runtime the new modified changes are added , however the old properties are not removed due to which prism can keep sending request to deprecated servers.
--
This message was sent by Atlassian JIRA
(v6.2#6252)