[GLASSFISH-16976] Saving clustered Instance System Properties triggers restart required for that instance Created: 06/Jul/11  Updated: 02/Dec/11  Resolved: 08/Jul/11

Status: Closed
Project: glassfish
Component/s: admin
Affects Version/s: 3.1.1_b11
Fix Version/s: 3.1.1_b11, 4.0

Type: Bug Priority: Major
Reporter: lidiam Assignee: Tom Mueller
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

ogs-3.1.1-b11-07_04_2011-aix.zip, Firefox 5 on Windows XP


Attachments: Text File server.log    
Tags: 3_1_1-approved, 3_1_1-verified

 Description   

Not sure if the root cause for this issue is the same as 16962. Steps to reproduce the problem:

1. Create a cluster with one instance on localhost-domain1 node.
2. Start cluster, tail -f server.log.
3. Go to clustered instance page, click on Properties.
4. Hit Save on the clustered Instance System Properties tab.
5. Go to clusters page and note that clustered instance now requires restart.

Clustered instance server.log contains the following as a result of "Save" action:

[#|2011-07-06T16:22:28.860-0700|WARNING|oracle-glassfish3.1.1|null|_ThreadID=13;_ThreadName=Thread-9;|Unprocessed event : UnprocessedChangeEvent

{PropertyName=system-property, OldValue = null, NewValue = GlassFishConfigBean.com.sun.enterprise.config.serverbeans.SystemProperty, Source = GlassFishConfigBean.com.sun.enterprise.config.serverbeans.Server}

, reason = The system-property, OSGI_SHELL_TELNET_PORT, that is referenced by the Java configuration, was modified, when = 1309994548859|#]

[#|2011-07-06T16:22:28.862-0700|WARNING|oracle-glassfish3.1.1|null|_ThreadID=13;_ThreadName=Thread-9;|Unprocessed event : UnprocessedChangeEvent

{PropertyName=system-property, OldValue = GlassFishConfigBean.com.sun.enterprise.config.serverbeans.SystemProperty, NewValue = null, Source = GlassFishConfigBean.com.sun.enterprise.config.serverbeans.Server}

, reason = The system-property, OSGI_SHELL_TELNET_PORT, that is referenced by the Java configuration, was modified, when = 1309994548859|#]

[#|2011-07-06T16:22:29.073-0700|INFO|oracle-glassfish3.1.1|javax.enterprise.system.container.web.com.sun.enterprise.web|_ThreadID=14;_ThreadName=Thread-9;|WEB0169: Created HTTP listener [http-listener-1] on host/port [0.0.0.0:28083]|#]

[#|2011-07-06T16:22:29.095-0700|INFO|oracle-glassfish3.1.1|javax.enterprise.system.container.web.com.sun.enterprise.web|_ThreadID=14;_ThreadName=Thread-9;|WEB0169: Created HTTP listener [http-listener-1] on host/port [0.0.0.0:28083]|#]

[#|2011-07-06T16:22:29.843-0700|INFO|oracle-glassfish3.1.1|javax.enterprise.system.container.web.com.sun.enterprise.web|_ThreadID=15;_ThreadName=Thread-9;|WEB0169: Created HTTP listener [http-listener-1] on host/port [0.0.0.0:28083]|#]

[#|2011-07-06T16:22:29.864-0700|INFO|oracle-glassfish3.1.1|javax.enterprise.system.core.com.sun.enterprise.v3.services.impl|_ThreadID=16;_ThreadName=Thread-9;|Grizzly Framework 1.9.36 started in: 6ms - bound to [0.0.0.0:28083]|#]

[#|2011-07-06T16:22:30.877-0700|INFO|oracle-glassfish3.1.1|javax.enterprise.system.container.web.com.sun.enterprise.web|_ThreadID=15;_ThreadName=Thread-9;|WEB0169: Created HTTP listener [http-listener-1] on host/port [0.0.0.0:28083]|#]

[#|2011-07-06T16:22:30.896-0700|INFO|oracle-glassfish3.1.1|javax.enterprise.system.core.com.sun.enterprise.v3.services.impl|_ThreadID=17;_ThreadName=Thread-9;|Grizzly Framework 1.9.36 started in: 3ms - bound to [0.0.0.0:28083]|#]

[#|2011-07-06T16:22:30.916-0700|INFO|oracle-glassfish3.1.1|javax.enterprise.system.container.web.com.sun.enterprise.web|_ThreadID=14;_ThreadName=Thread-9;|WEB0169: Created HTTP listener [http-listener-2] on host/port [0.0.0.0:28184]|#]

[#|2011-07-06T16:22:30.943-0700|INFO|oracle-glassfish3.1.1|javax.enterprise.system.container.web.com.sun.enterprise.web|_ThreadID=14;_ThreadName=Thread-9;|WEB0169: Created HTTP listener [http-listener-2] on host/port [0.0.0.0:28184]|#]

[#|2011-07-06T16:22:31.838-0700|INFO|oracle-glassfish3.1.1|javax.enterprise.system.container.web.com.sun.enterprise.web|_ThreadID=18;_ThreadName=Thread-9;|WEB0169: Created HTTP listener [http-listener-2] on host/port [0.0.0.0:28184]|#]

[#|2011-07-06T16:22:31.861-0700|INFO|oracle-glassfish3.1.1|javax.enterprise.system.core.com.sun.enterprise.v3.services.impl|_ThreadID=19;_ThreadName=Thread-9;|Grizzly Framework 1.9.36 started in: 3ms - bound to [0.0.0.0:28184]|#]

[#|2011-07-06T16:22:32.875-0700|INFO|oracle-glassfish3.1.1|javax.enterprise.system.container.web.com.sun.enterprise.web|_ThreadID=18;_ThreadName=Thread-9;|WEB0169: Created HTTP listener [http-listener-2] on host/port [0.0.0.0:28184]|#]

[#|2011-07-06T16:22:32.896-0700|INFO|oracle-glassfish3.1.1|javax.enterprise.system.core.com.sun.enterprise.v3.services.impl|_ThreadID=20;_ThreadName=Thread-9;|Grizzly Framework 1.9.36 started in: 4ms - bound to [0.0.0.0:28184]|#]

This issue does not happen with standalone instances. Also, this is a regression as compared to Glassfish 3.1 b43.



 Comments   
Comment by lidiam [ 06/Jul/11 ]

Attaching server.log of clustered instance.

Comment by lidiam [ 06/Jul/11 ]

This may be related to changes made for issue http://java.net/jira/browse/GLASSFISH-16013.

Comment by Anissa Lam [ 07/Jul/11 ]

Console is displaying the status correctly.
The issue here is why restart is required if there is no change in the properties. Maybe this is an RFE so that backend is smart enough to not trigger restart if there is no change ?
Not sure if this is related to GLASSFISH-16962 or GLASSFISH-16013 either. Transfer to 'admin' for initial evaluation.

Comment by Tom Mueller [ 07/Jul/11 ]

Anissa, does the console save values even if they have not changed?

The GenericJavaConfigListener will trigger a restart required whenever there is a system-property change event, even if that event is for saving the same value.

It should check to see if the value actually changed.

Comment by Tom Mueller [ 07/Jul/11 ]

Why fix this issue in 3.1.1?

The fix for this issue is closely related to the fix for issue GLASSFISH-16962. This issue is probably not worth fixing on its own, but if 16962 is approved, then this one should be approved too.

Which is the targeted build of 3.1.1 for this fix?
build 11

Do regression tests exist for this issue?
No

Which tests should QA (re)run to verify the fix did not destabilize GlassFish?
Tests related to setting system-properties that are referenced by the <java-config>

Comment by Anissa Lam [ 07/Jul/11 ]

Like all other screen, a SAVE will call REST to update to the value that is on screen at that time. We don't save a copy of what is before the edit to compare with what the value is at the time the SAVE button is pressed.
The only page we have special handling is the JVM options page.

Comment by Tom Mueller [ 08/Jul/11 ]

Fixed in revision 47933 on the trunk
and in revision 47934 on the 3.1.1 branch.

Comment by lidiam [ 12/Jul/11 ]

Verified in promoted build ogs-3.1.1-b11-aix.zip.

Generated at Wed Aug 31 06:02:55 UTC 2016 using JIRA 6.2.3#6260-sha1:63ef1d6dac3f4f4d7db4c1effd405ba38ccdc558.