[ 
https://issues.apache.org/jira/browse/ARTEMIS-2912?focusedWorklogId=491081&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-491081
 ]

ASF GitHub Bot logged work on ARTEMIS-2912:
-------------------------------------------

                Author: ASF GitHub Bot
            Created on: 25/Sep/20 13:40
            Start Date: 25/Sep/20 13:40
    Worklog Time Spent: 10m 
      Work Description: franz1981 commented on a change in pull request #3274:
URL: https://github.com/apache/activemq-artemis/pull/3274#discussion_r494149668



##########
File path: 
artemis-server/src/main/java/org/apache/activemq/artemis/core/server/impl/ActiveMQServerImpl.java
##########
@@ -1075,17 +1089,24 @@ void stop(boolean failoverOnServerShutdown, final 
boolean criticalIOError, boole
          state = SERVER_STATE.STOPPING;
 
          if (criticalIOError) {
-            // notifications trigger disk IO so we don't want to send any on a 
critical IO error
-            managementService.enableNotifications(false);
+            final ManagementService managementService = this.managementService;

Review comment:
       It's thanks to Java Language Specification: the local 
`managementService` cannot change once read

##########
File path: 
artemis-server/src/main/java/org/apache/activemq/artemis/core/server/impl/ActiveMQServerImpl.java
##########
@@ -1075,17 +1089,24 @@ void stop(boolean failoverOnServerShutdown, final 
boolean criticalIOError, boole
          state = SERVER_STATE.STOPPING;
 
          if (criticalIOError) {
-            // notifications trigger disk IO so we don't want to send any on a 
critical IO error
-            managementService.enableNotifications(false);
+            final ManagementService managementService = this.managementService;

Review comment:
       It's thanks to Java Language Specification: the local 
`managementService` cannot change once read
   Not sure if that answer your question




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


Issue Time Tracking
-------------------

    Worklog Id:     (was: 491081)
    Time Spent: 2h 20m  (was: 2h 10m)

> Server start exception before activation can cause a zombie broker
> ------------------------------------------------------------------
>
>                 Key: ARTEMIS-2912
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-2912
>             Project: ActiveMQ Artemis
>          Issue Type: Bug
>          Components: Broker
>            Reporter: Francesco Nigro
>            Priority: Major
>          Time Spent: 2h 20m
>  Remaining Estimate: 0h
>
> Run::execute:
> # start a broker
> # add several external components while starting them right after
> If the broker is getting started and, right before activating, throw an 
> exception (eg on NodeManager::start), its process won't be stopped because 
> the ActivationFailureListener won't get triggered.
> if the broker is getting started and, right before activating it, it throws 
> an exception AND raise an I/O critical error (eg JdbcNodeManager:.start), a 
> separate Thread would race to stop the broker external components while they 
> are being added (and started): if some of these components are added AFTER 
> the stop has completed or are started after being stopped, they would prevent 
> the process to stop.



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

Reply via email to