Buggy code:
protected SOManager sharedObjectManager = null ; protected ISharedObjectPolicy policy = null ; protected ThreadGroup sharedObjectThreadGroup = null ; protected ISynchAsynchEventHandler receiver = new ISynchAsynchEventHandler ( ) { public Object handleSynchEvent ( SynchEvent event ) throws IOException { } public ID getEventHandlerID ( ) { } public void handleConnectEvent ( ConnectionEvent event ) { } public void handleDisconnectEvent ( DisconnectEvent event ) { } public void handleAsynchEvent ( AsynchEvent event ) throws IOException { } } ; public SOContainer ( ISharedObjectContainerConfig config ) { } public ID getID ( ) { } public abstract void connect ( ID groupID , IConnectContext connectContext ) throws ContainerConnectException { } public abstract ID getConnectedID ( ) { } public abstract void disconnect ( ) { } public Namespace getConnectNamespace ( ) { } public void dispose ( ) { } public Object getAdapter ( Class adapter ) { } public ISharedObjectManager getSharedObjectManager ( ) { } public ID [ ] getGroupMemberIDs ( ) { } public ISharedObjectContainerConfig getConfig ( ) { } public abstract boolean isGroupManager ( ) { } protected void setRemoteAddPolicy ( ISharedObjectPolicy policy ) { } protected boolean addNewRemoteMember ( ID memberID , Object data ) { } protected ISharedObjectContainerTransaction addSharedObject0 ( ID id , ISharedObject s , Map props ) throws Exception { } protected void addSharedObjectAndWait ( ID id , ISharedObject s , Map properties ) throws Exception { } protected ISharedObjectContainerTransaction addSharedObjectWrapper ( SOWrapper wrapper ) throws Exception { } protected boolean addToLoading ( SOContainer . LoadingSharedObject lso ) { } protected Object checkRemoteCreate ( ID fromID , ID toID , ReplicaSharedObjectDescription desc ) throws Exception { } protected void debug ( String msg ) { } protected void traceStack ( String msg , Throwable e ) { } protected boolean destroySharedObject ( ID sharedObjectID ) { } protected final void forward ( ID fromID , ID toID , ContainerMessage data ) throws IOException { } protected abstract void forwardExcluding ( ID from , ID excluding , ContainerMessage data ) throws IOException { } protected abstract void forwardToRemote ( ID from , ID to , ContainerMessage data ) throws IOException { } protected Object [ ] getArgsFromProperties ( SharedObjectDescription sd ) { } protected String [ ] getArgTypesFromProperties ( SharedObjectDescription sd ) { } public static byte [ ] serialize ( Serializable obj ) throws IOException { } protected ClassLoader getClassLoaderForContainer ( ) { } protected ClassLoader getClassLoaderForSharedObject ( SharedObjectDescription sd ) { } protected Object getGroupMembershipLock ( ) { } protected int getMaxGroupMembers ( ) { } protected Thread getNewSharedObjectThread ( ID sharedObjectID , Runnable runnable ) { } protected long getNextSequenceNumber ( ) { } public static ContainerMessage deserializeContainerMessage ( byte [ ] bytes ) throws IOException { } protected static void printToSystemError ( String message , Throwable t ) { } protected ID [ ] getOtherMemberIDs ( ) { } protected ISynchAsynchEventHandler getReceiver ( ) { } protected ISharedObject getSharedObject ( ID id ) { } protected ID [ ] getSharedObjectIDs ( ) { } protected SOWrapper getSharedObjectWrapper ( ID id ) { } protected void handleAsynchIOException ( IOException except , AsynchEvent e ) { } protected void handleCreateMessage ( ContainerMessage mess ) throws IOException { final ContainerMessage . CreateMessage create = ( ( ContainerMessage . CreateMessage ) ( mess . getData ( ) ) ) ; if ( create == null ) throw new IOException ( Messages . SOContainer_Exception_Bad_Container_Message ) ; final ReplicaSharedObjectDescription desc = ( ( ReplicaSharedObjectDescription ) ( create . getData ( ) ) ) ; if ( desc == null ) throw new IOException ( Messages . SOContainer_Exception_Bad_Description ) ; final ID fromID = mess . getFromContainerID ( ) ; final ID toID = mess . getToContainerID ( ) ; Object checkCreateResult = null ; final ID sharedObjectID = desc . getID ( ) ; if ( sharedObjectID == null ) throw new IOException ( Messages . SOContainer_Exception_ObjectID_Is_Null ) ; <START_BUG> debug ( ( ( ( ( ( ( "handleCreateMessage(from=" + fromID ) + ",to=" ) + toID ) + "," ) + desc ) + ")" ) ) ; <END_BUG> try { checkCreateResult = checkRemoteCreate ( fromID , toID , desc ) ; } catch ( final Exception e ) { final SharedObjectAddException addException = new SharedObjectAddException ( ( ( ( ( Messages . SOContainer_Shared_Object ) + sharedObjectID ) + ( Messages . SOContainer_Rejected_By_Container ) ) + ( getID ( ) ) ) , e ) ; traceStack ( ( "Exception<seq2seq4repair_space>in<seq2seq4repair_space>checkRemoteCreate:" + desc ) , addException ) ; try { sendCreateResponse ( fromID , sharedObjectID , addException , desc . getIdentifier ( ) ) ; } catch ( final IOException except ) { traceStack ( "Exception<seq2seq4repair_space>from<seq2seq4repair_space>sendCreateResponse<seq2seq4repair_space>in<seq2seq4repair_space>handleCreateResponse" , except ) ; } return ; } if ( checkCreateResult != null ) { final SOContainer . LoadingSharedObject lso = new SOContainer . LoadingSharedObject ( fromID , desc ) ; synchronized ( getGroupMembershipLock ( ) ) { if ( ! ( addToLoading ( lso ) ) ) { try { sendCreateResponse ( fromID , sharedObjectID , new SharedObjectAddException ( ( ( ( ( Messages . SOContainer_Shared_Object ) + sharedObjectID ) + ( Messages . SOContainer_Exception_Already_Exists_In_Container ) ) + ( getID ( ) ) ) ) , desc . getIdentifier ( ) ) ; } catch ( final IOException e ) { traceStack ( "Exception<seq2seq4repair_space>in<seq2seq4repair_space>handleCreateMessage.sendCreateResponse" , e ) ; } } forward ( fromID , toID , mess ) ; return ; } } synchronized ( getGroupMembershipLock ( ) ) { forward ( fromID , toID , mess ) ; } } protected void handleCreateResponseMessage ( ContainerMessage mess ) throws IOException { } protected abstract void handleLeaveGroupMessage ( ContainerMessage mess ) { } protected void handleSharedObjectDisposeMessage ( ContainerMessage mess ) throws IOException { } protected boolean verifyToIDForSharedObjectMessage ( ID toID ) { } protected void handleSharedObjectMessage ( ContainerMessage mess ) throws IOException { } protected void handleUnidentifiedMessage ( ContainerMessage mess ) throws IOException { } protected abstract void handleViewChangeMessage ( ContainerMessage mess ) throws IOException { } protected boolean isClosing ( ) { }

Fix:
debug ( ( ( ( ( ( ( ( ( "handleCreateMessage(from=" + fromID ) + ",to=" ) + toID ) + ",this=" ) + ( getID ( ) ) ) + ",desc=" ) + desc ) + ")" ) ) ;