Program: 21764
Project: 21764
Buggy source:
@Override protected void doGet(HttpServletRequest req,HttpServletResponse resp) throws ServletException, IOException {
  String sessionId=req.getParameter("String_Node_Str");
  if (sessionId == null) {
    resp.setStatus(HttpStatus.SC_BAD_REQUEST);
    resp.getWriter().write("String_Node_Str");
    return;
  }
  if (!checkValidSessionId(sessionId,resp)) {
    return;
  }
  StoredVideoInfoContext videoInfoForSession;
  try {
    videoInfoForSession=HubVideoRegistry.getVideoInfoForSession(new ExternalSessionKey(sessionId));
  }
 catch (  Exception e) {
    log.log(Level.WARNING,"String_Node_Str" + sessionId,e);
    resp.setStatus(HttpStatus.SC_INTERNAL_SERVER_ERROR);
    resp.getWriter().write("String_Node_Str");
    return;
  }
  if (!videoInfoForSession.isVideoFound()) {
    resp.setStatus(HttpStatus.SC_NOT_FOUND);
    resp.getWriter().write("String_Node_Str" + sessionId);
    return;
  }
  HashMap<String,Object> responseMap=new HashMap<String,Object>();
  if (videoInfoForSession.getContentLengthIfKnown() != null) {
    responseMap.put("String_Node_Str",videoInfoForSession.getContentLengthIfKnown());
  }
  responseMap.put("String_Node_Str",HubVideoRegistry.getVideoStoreType());
  responseMap.put("String_Node_Str",videoInfoForSession.additionalInformation());
  String json;
  try {
    json=new JSONObject(responseMap).toString(4);
  }
 catch (  JSONException e) {
    resp.setStatus(HttpStatus.SC_INTERNAL_SERVER_ERROR);
    log.log(Level.WARNING,"String_Node_Str",e);
    return;
  }
  resp.setStatus(HttpStatus.SC_OK);
  resp.getWriter().write(json);
}

Fixed version (ground truth):
@Override protected void doGet(HttpServletRequest req,HttpServletResponse resp) throws ServletException, IOException {
  String sessionId=req.getParameter("String_Node_Str");
  if (sessionId == null) {
    resp.setStatus(HttpStatus.SC_BAD_REQUEST);
    resp.getWriter().write("String_Node_Str");
    return;
  }
  if (!checkValidSessionId(sessionId,resp)) {
    return;
  }
  StoredVideoInfoContext videoInfoForSession;
  try {
    videoInfoForSession=HubVideoRegistry.getVideoInfoForSession(new ExternalSessionKey(sessionId));
  }
 catch (  Exception e) {
    log.log(Level.WARNING,"String_Node_Str" + sessionId,e);
    resp.setStatus(HttpStatus.SC_INTERNAL_SERVER_ERROR);
    resp.getWriter().write("String_Node_Str");
    return;
  }
  if (!videoInfoForSession.isVideoFound()) {
    resp.setStatus(HttpStatus.SC_NOT_FOUND);
    resp.getWriter().write("String_Node_Str" + sessionId);
    videoInfoForSession.close();
    return;
  }
  HashMap<String,Object> responseMap=new HashMap<String,Object>();
  if (videoInfoForSession.getContentLengthIfKnown() != null) {
    responseMap.put("String_Node_Str",videoInfoForSession.getContentLengthIfKnown());
  }
  responseMap.put("String_Node_Str",HubVideoRegistry.getVideoStoreType());
  responseMap.put("String_Node_Str",videoInfoForSession.additionalInformation());
  videoInfoForSession.close();
  String json;
  try {
    json=new JSONObject(responseMap).toString(4);
  }
 catch (  JSONException e) {
    resp.setStatus(HttpStatus.SC_INTERNAL_SERVER_ERROR);
    log.log(Level.WARNING,"String_Node_Str",e);
    return;
  }
  resp.setStatus(HttpStatus.SC_OK);
  resp.getWriter().write(json);
}