On 2/5/15 12:12 PM, Jason Greene wrote:
> On Feb 5, 2015, at 11:46 AM, Brian Stansberry <brian.stansberry(a)redhat.com>
wrote:
>
> On 2/5/15 11:33 AM, Jason Greene wrote:
>>
>>> On Feb 5, 2015, at 11:24 AM, Brian Stansberry
<brian.stansberry(a)redhat.com> wrote:
>>>
>>> On 2/5/15 11:13 AM, Kabir Khan wrote:
>>>>
>>>>> On 5 Feb 2015, at 16:39, Brian Stansberry
<brian.stansberry(a)redhat.com> wrote:
>>>>>
>>>>> tl;dr
>>>>>
>>>>> We have a minor anomaly in system property processing in domain mode
>>>>> that we intend to ignore.
>>>>>
>>>>> long version
>>>>>
>>>>> While digging into a bug Emmanuel Hugonnet noticed an anomaly. When
you
>>>>> define a system-property resource in domain.xml or host.xml with
>>>>> "boot-time=true", the HC does both of the following when it
launches a
>>>>> server:
>>>>>
>>>>> 1) Uses -D to set the prop when it starts the server process.
>>>>>
>>>>> 2) Adds an add system-property op to the server's set of boot
ops, which
>>>>> causes the system property to get set again later during boot.
>>>>>
>>>>> Really, only 1) should happen; that's what
"boot-time=true" means. The
>>>>> purpose of boot-time=true is to ensure the value is set at JVM
launch,
>>>>> not waiting for management ops to execute, which may be too late for
>>>>> props that are read early.
>>>> I am not 100% convinced.
>>>
>>> Me neither. :)
>>>
>>> 1) should of course happen. But it could be argued that something in the
>>> domain management model should always be reflected in the resulting
>>> server management model. It feels a bit weird to make random exceptions.
>>>
>>> It's similar to a jvm setting. It's a configuration of how the HC
behaves.
>>
>> If I understand correctly, the add op generated on all servers sets a system
property, which activates at runtime correct?
>>
>
> Yes, but the property has already been set, via -D when the process was started. So
it's redundant.
>
>>
Well I’m talking about the case where the server is already running and has not yet
restarted. Perhaps that is why it does this?
Ah, I just noticed a detail. The default value of boot-time is true.
Which makes sense; setting the prop at VM launch is the best way.
If the default is true though, that's pretty invisible to users, who may
often want the prop set immediately when they configure it.
So, this confirms that I don't want to change this behavior.
Thanks for helping me think it through.
--
Jason T. Greene
WildFly Lead / JBoss EAP Platform Architect
JBoss, a division of Red Hat
--
Brian Stansberry
Senior Principal Software Engineer
JBoss by Red Hat