Program: 113755
Project: 113755
Buggy source:
@Override public void startRequest(MRCRequest rq){
  try {
    final getattrRequest rqArgs=(getattrRequest)rq.getRequestArgs();
    final VolumeManager vMan=master.getVolumeManager();
    final FileAccessManager faMan=master.getFileAccessManager();
    validateContext(rq);
    final Path p=new Path(rqArgs.getPath());
    final VolumeInfo volume=vMan.getVolumeByName(p.getComp(0));
    final StorageManager sMan=vMan.getStorageManager(volume.getId());
    final PathResolver res=new PathResolver(sMan,p);
    faMan.checkSearchPermission(sMan,res,rq.getDetails().userId,rq.getDetails().superUser,rq.getDetails().groupIds);
    res.checkIfFileDoesNotExist();
    FileMetadata file=res.getFile();
    String linkTarget=sMan.getSoftlinkTarget(file.getId());
    int mode=faMan.getPosixAccessMode(sMan,file,rq.getDetails().userId,rq.getDetails().groupIds);
    long size=linkTarget != null ? linkTarget.length() : file.isDirectory() ? 0 : file.getSize();
    int type=linkTarget != null ? 3 : file.isDirectory() ? 2 : 1;
    stat_ stat=new stat_(mode,file.getLinkCount(),1,1,0,size,file.getAtime(),file.getMtime(),file.getCtime(),file.getOwnerId(),file.getOwningGroupId(),volume.getId() + "String_Node_Str" + file.getId(),linkTarget,type,file.getEpoch(),(int)file.getW32Attrs());
    rq.setResponse(new getattrResponse(stat));
    finishRequest(rq);
  }
 catch (  UserException exc) {
    Logging.logMessage(Logging.LEVEL_TRACE,this,exc);
    finishRequest(rq,new ErrorRecord(ErrorClass.USER_EXCEPTION,exc.getErrno(),exc.getMessage(),exc));
  }
catch (  Exception exc) {
    finishRequest(rq,new ErrorRecord(ErrorClass.INTERNAL_SERVER_ERROR,"String_Node_Str",exc));
  }
}

Fixed version (ground truth):
@Override public void startRequest(MRCRequest rq){
  try {
    final getattrRequest rqArgs=(getattrRequest)rq.getRequestArgs();
    final VolumeManager vMan=master.getVolumeManager();
    final FileAccessManager faMan=master.getFileAccessManager();
    validateContext(rq);
    final Path p=new Path(rqArgs.getPath());
    final VolumeInfo volume=vMan.getVolumeByName(p.getComp(0));
    final StorageManager sMan=vMan.getStorageManager(volume.getId());
    final PathResolver res=new PathResolver(sMan,p);
    faMan.checkSearchPermission(sMan,res,rq.getDetails().userId,rq.getDetails().superUser,rq.getDetails().groupIds);
    res.checkIfFileDoesNotExist();
    FileMetadata file=res.getFile();
    String linkTarget=sMan.getSoftlinkTarget(file.getId());
    int mode=faMan.getPosixAccessMode(sMan,file,rq.getDetails().userId,rq.getDetails().groupIds);
    mode|=linkTarget != null ? Constants.SYSTEM_V_FCNTL_S_IFLNK : file.isDirectory() ? Constants.SYSTEM_V_FCNTL_S_IFDIR : Constants.SYSTEM_V_FCNTL_S_IFREG;
    long size=linkTarget != null ? linkTarget.length() : file.isDirectory() ? 0 : file.getSize();
    int type=linkTarget != null ? 3 : file.isDirectory() ? 2 : 1;
    stat_ stat=new stat_(mode,file.getLinkCount(),1,1,0,size,file.getAtime(),file.getMtime(),file.getCtime(),file.getOwnerId(),file.getOwningGroupId(),volume.getId() + "String_Node_Str" + file.getId(),linkTarget,type,file.getEpoch(),(int)file.getW32Attrs());
    rq.setResponse(new getattrResponse(stat));
    finishRequest(rq);
  }
 catch (  UserException exc) {
    Logging.logMessage(Logging.LEVEL_TRACE,this,exc);
    finishRequest(rq,new ErrorRecord(ErrorClass.USER_EXCEPTION,exc.getErrno(),exc.getMessage(),exc));
  }
catch (  Exception exc) {
    finishRequest(rq,new ErrorRecord(ErrorClass.INTERNAL_SERVER_ERROR,"String_Node_Str",exc));
  }
}