Buggy code:
public class NukeTasks extends BaseListener { private static Logger log = LogManager . getLogger ( NukeTasks . class ) ; private Context theContext ; private Long identity ; private NukeInfo nukeInfo ; private int proceduresStopping ; private int proceduresTerminating ; private NukeCommand stopCommand ; private NukeCommand terminateCommand ; private List < BaseTaskProcedure > procedures ; private List < BaseTaskProcedure > proceduresToAdd ; private List < BaseTaskProcedure > toRemove ; public NukeTasks ( HazelcastInstance instance ) { } public void init ( ) { } public void shutDown ( ) { } @ Override public void preEntry ( ) { } private synchronized void intializeProcedures ( ) { } @ Override public void entryAdded ( Long component , BaseNukeC data ) { } @ Override public void entryEvicted ( Long component , BaseNukeC data ) { } @ Override public void entryRemoved ( Long key ) { } @ Override public void entryUpdated ( Long component , BaseNukeC data ) { } @ Override public void postEntry ( ) { } protected void handleInterrupted ( BaseTaskProcedure procedure ) { } @ Override public void mapCleared ( MapEvent cleared ) { } @ Override public void mapEvicted ( MapEvent evicted ) { } private void handleCommand ( NukeCommand command ) { NukeTasks . log . trace ( ( ( "handleCommand(" + command ) + ")" ) ) ; switch ( command . getState ( ) ) { case EXECUTE : { if ( ( getIdentity ( ) ) != ( command . getComponent ( ) ) ) { NukeTasks . log . debug ( ( ( ( ( ( ( "NukeCommand<seq2seq4repair_space>" + ( command . getState ( ) ) ) + "<seq2seq4repair_space>not<seq2seq4repair_space>for<seq2seq4repair_space>us,<seq2seq4repair_space>expected<seq2seq4repair_space>" ) + ( getIdentity ( ) ) ) + "<seq2seq4repair_space>but<seq2seq4repair_space>was<seq2seq4repair_space>" ) + ( command . getComponent ( ) ) ) + "." ) ) ; } else { if ( STOP_EXECUTION . equals ( command . getCommand ( ) ) ) { NukeTasks . log . info ( "Received<seq2seq4repair_space>command<seq2seq4repair_space>to<seq2seq4repair_space>stop<seq2seq4repair_space>all<seq2seq4repair_space>executions." ) ; setProceduresStopping ( distributeExecuteUpdateCommands ( STOP ) ) ; if ( 0 < ( getProceduresStopping ( ) ) ) { NukeTasks . log . info ( ( ( "Issued<seq2seq4repair_space>stop<seq2seq4repair_space>command<seq2seq4repair_space>to<seq2seq4repair_space>" + ( getProceduresStopping ( ) ) ) + "<seq2seq4repair_space>procedures,<seq2seq4repair_space>waiting<seq2seq4repair_space>for<seq2seq4repair_space>done." ) ) ; setStopCommand ( command ) ; } else { NukeTasks . log . info ( "All<seq2seq4repair_space>procedures<seq2seq4repair_space>stopped,<seq2seq4repair_space>updating<seq2seq4repair_space>command." ) ; command . setState ( DONE ) ; <START_BUG> updateEntry ( getStopCommand ( ) ) ; <END_BUG> } } else if ( TERMINATE_EXECUTION . equals ( command . getCommand ( ) ) ) { NukeTasks . log . info ( "Received<seq2seq4repair_space>command<seq2seq4repair_space>to<seq2seq4repair_space>terminate<seq2seq4repair_space>all<seq2seq4repair_space>executions." ) ; setProceduresTerminating ( distributeExecuteUpdateCommands ( TERMINATE ) ) ; NukeTasks . log . info ( ( ( ( ( "Issued<seq2seq4repair_space>terminate<seq2seq4repair_space>command<seq2seq4repair_space>to<seq2seq4repair_space>" + ( getProceduresTerminating ( ) ) ) + "<seq2seq4repair_space>procedures,<seq2seq4repair_space>we<seq2seq4repair_space>hade<seq2seq4repair_space>" ) + ( getProceduresStopping ( ) ) ) + "<seq2seq4repair_space>that<seq2seq4repair_space>failed<seq2seq4repair_space>stopping,<seq2seq4repair_space>waiting<seq2seq4repair_space>for<seq2seq4repair_space>done." ) ) ; setTerminateCommand ( command ) ; if ( null != ( getStopCommand ( ) ) ) { NukeTasks . log . info ( "Received<seq2seq4repair_space>terminate<seq2seq4repair_space>command<seq2seq4repair_space>before<seq2seq4repair_space>stopped,<seq2seq4repair_space>aborting<seq2seq4repair_space>stop<seq2seq4repair_space>command." ) ; setProceduresStopping ( 0 ) ; getStopCommand ( ) . setState ( ABORTED ) ; updateEntry ( getStopCommand ( ) ) ; } } else { NukeTasks . log . info ( ( ( "Received<seq2seq4repair_space>common<seq2seq4repair_space>command:<seq2seq4repair_space>" + command ) + "." ) ) ; if ( command . isRepeated ( ) ) { registerProcedure ( new io . github . scrier . opus . nuke . task . procedures . RepeatedExecuteTaskProcedure ( command ) ) ; } else { registerProcedure ( new io . github . scrier . opus . nuke . task . procedures . ExecuteTaskProcedure ( command ) ) ; } } } break ; } case QUERY : { if ( ( getIdentity ( ) ) != ( command . getComponent ( ) ) ) { NukeTasks . log . debug ( ( ( ( ( ( ( "NukeCommand<seq2seq4repair_space>" + ( command . getState ( ) ) ) + "<seq2seq4repair_space>not<seq2seq4repair_space>for<seq2seq4repair_space>us,<seq2seq4repair_space>expected<seq2seq4repair_space>" ) + ( getIdentity ( ) ) ) + "<seq2seq4repair_space>but<seq2seq4repair_space>was<seq2seq4repair_space>" ) + ( command . getComponent ( ) ) ) + "." ) ) ; } else { registerProcedure ( new io . github . scrier . opus . nuke . task . procedures . QueryTaskProcedure ( command ) ) ; } break ; } case ABORTED : case DONE : case UNDEFINED : case WORKING : { NukeTasks . log . error ( ( ( ( ( "Unhandled<seq2seq4repair_space>data:<seq2seq4repair_space>" + ( command . getState ( ) ) ) + ",<seq2seq4repair_space>from<seq2seq4repair_space>NukeCommand:<seq2seq4repair_space>" ) + command ) + "." ) ) ; break ; } default : { throw new RuntimeException ( ( ( "Unimplemented<seq2seq4repair_space>state<seq2seq4repair_space>" + ( command . getState ( ) ) ) + "<seq2seq4repair_space>from<seq2seq4repair_space>class<seq2seq4repair_space>NukeCommand<seq2seq4repair_space>in<seq2seq4repair_space>class<seq2seq4repair_space>NukeTasks." ) ) ; } } } public int distributeExecuteUpdateCommands ( CommandState state ) { } public List < BaseTaskProcedure > getProcedures ( Class < ? > ... procs ) { } protected Long getIdentity ( ) { } private void setIdentity ( Long identity ) { } protected List < BaseTaskProcedure > getProcedures ( ) { } protected List < BaseTaskProcedure > getProceduresToAdd ( ) { } protected List < BaseTaskProcedure > getProceduresToRemove ( ) { } private void removeProcedure ( BaseTaskProcedure procedure ) { } public boolean registerProcedure ( BaseTaskProcedure procedure ) { } private boolean contains ( BaseTaskProcedure procedure ) { } private void removeAllProcedures ( ) { } public void clear ( List < BaseTaskProcedure > toClear ) { } public NukeInfo getNukeInfo ( ) { } public void setNukeInfo ( NukeInfo nukeInfo ) { } public int getProceduresStopping ( ) { } public int decProceduresStopping ( ) { } public void setProceduresStopping ( int proceduresStopping ) { } public int getProceduresTerminating ( ) { } public int decProceduresTerminating ( ) { } public void setProceduresTerminating ( int proceduresTerminating ) { } public NukeCommand getStopCommand ( ) { } public void setStopCommand ( NukeCommand stopCommand ) { } public NukeCommand getTerminateCommand ( ) { } public void setTerminateCommand ( NukeCommand terminateCommand ) { } }

Fix:
updateEntry ( command ) ;