Program: 148789
Project: 148789
Buggy source:
public void initServerTree(String url,String username,String password,String universe){
  Authenticator.setDefault(null);
  LocalTreeObjectRepository.getInstance().startUp(this,url,username,password);
  LocalTreeObjectRepository.getInstance().switchOnListening();
  LocalTreeObjectRepository.getInstance().setLazySaveStrategy(true,null);
  try {
    XtentisServerObjectsRetriever retriever=new XtentisServerObjectsRetriever(url,username,password,universe);
    new ProgressMonitorDialog(this.getSite().getShell()).run(true,true,retriever);
    TreeParent serverRoot=retriever.getServerRoot();
    TreeParent invisibleRoot=getTreeContentProvider().getInvisibleRoot();
    TreeObject[] serverRoots=invisibleRoot.getChildren();
    boolean found=false;
    for (int i=0; i < serverRoots.length; i++) {
      if (serverRoots[i].getDisplayName().equals(serverRoot.getDisplayName())) {
        if (serverRoots[i].getWsKey().equals(serverRoot.getWsKey())) {
          if (serverRoots[i].getUser().getUniverse().equalsIgnoreCase(serverRoot.getUser().getUniverse())) {
            found=true;
            ((TreeParent)serverRoots[i]).synchronizeWith(serverRoot);
          }
        }
      }
    }
    if (!found)     invisibleRoot.addChild(serverRoot);
    LocalTreeObjectRepository.getInstance().setLazySaveStrategy(false,serverRoot);
    getViewer().refresh();
  }
 catch (  InterruptedException ie) {
    return;
  }
catch (  InvocationTargetException ite) {
    ite.printStackTrace();
    ErrorExceptionDialog.openError(this.getSite().getShell(),"String_Node_Str",CommonUtil.getErrMsgFromException(ite.getCause()));
  }
}

Fixed version (ground truth):
public void initServerTree(String url,String username,String password,String universe){
  Authenticator.setDefault(null);
  LocalTreeObjectRepository.getInstance().startUp(this,url,username,password);
  LocalTreeObjectRepository.getInstance().switchOnListening();
  LocalTreeObjectRepository.getInstance().setLazySaveStrategy(true,null);
  try {
    XtentisServerObjectsRetriever retriever=new XtentisServerObjectsRetriever(url,username,password,universe);
    new ProgressMonitorDialog(this.getSite().getShell()).run(true,true,retriever);
    TreeParent serverRoot=retriever.getServerRoot();
    TreeParent invisibleRoot=getTreeContentProvider().getInvisibleRoot();
    TreeObject[] serverRoots=invisibleRoot.getChildren();
    boolean found=false;
    for (int i=0; i < serverRoots.length; i++) {
      if (serverRoots[i].getDisplayName().equals(serverRoot.getDisplayName())) {
        if (serverRoots[i].getWsKey().equals(serverRoot.getWsKey())) {
          if (serverRoots[i].getUser().getUniverse().equalsIgnoreCase(serverRoot.getUser().getUniverse())) {
            found=true;
            ((TreeParent)serverRoots[i]).synchronizeWith(serverRoot);
          }
        }
      }
    }
    if (!found)     invisibleRoot.addChild(serverRoot);
    LocalTreeObjectRepository.getInstance().setLazySaveStrategy(false,serverRoot);
    getViewer().refresh();
  }
 catch (  InterruptedException ie) {
    return;
  }
catch (  InvocationTargetException ite) {
    ite.printStackTrace();
    deleteReserved(url,username,universe);
    ErrorExceptionDialog.openError(this.getSite().getShell(),"String_Node_Str",CommonUtil.getErrMsgFromException(ite.getCause()));
  }
}