From: Zdeněk Šustr Date: Thu, 14 Jun 2012 11:54:00 +0000 (+0000) Subject: Create fake registration events for subjobs before dumping real ones. Overcomes need... X-Git-Tag: merge_32_head_take_2_src X-Git-Url: http://scientific.zcu.cz/git/?a=commitdiff_plain;h=3f60e5ef66db69fb9910b4bdfd9044b049f78ca2;p=jra1mw.git Create fake registration events for subjobs before dumping real ones. Overcomes need for greyjobs in load. --- diff --git a/org.glite.lb.server/src/dump.c b/org.glite.lb.server/src/dump.c index ea85059..6953f0b 100644 --- a/org.glite.lb.server/src/dump.c +++ b/org.glite.lb.server/src/dump.c @@ -84,60 +84,6 @@ int edg_wll_DumpEventsServer(edg_wll_Context ctx,const edg_wll_DumpRequest *req, glite_lbu_TimeToStr(from, &from_s); glite_lbu_TimeToStr(to, &to_s); - trio_asprintf(&stmt, - "select event,dg_jobid,code,prog,host,u.cert_subj,time_stamp,usec,level,arrived,seqcode " - "from events e,users u,jobs j " - "where u.userid=e.userid " - "and j.jobid = e.jobid " - "and j.dg_jobid like 'https://%|Ss:%d/%%' " - "and arrived > %s and arrived <= %s " - "order by arrived,event", - ctx->srvName,ctx->srvPort, - from_s,to_s); - glite_common_log_msg(LOG_CATEGORY_LB_SERVER_DB, LOG_PRIORITY_DEBUG, stmt); - - if (edg_wll_ExecSQL(ctx,stmt,&q) < 0) goto clean; - - while ((ret = edg_wll_FetchRow(ctx,q,sizeof(res)/sizeof(res[0]),NULL,res)) > 0) { - assert(ret == sizofa(res)); - event = atoi(res[0]); free(res[0]); res[0] = NULL; - - if (convert_event_head(ctx,res+1,&e) - || edg_wll_get_event_flesh(ctx,event,&e)) - { - char *et,*ed; - int i; - - /* Most likely sort of internal inconsistency. - * Must not be fatal -- just complain - */ - edg_wll_Error(ctx,&et,&ed); - glite_common_log(LOG_CATEGORY_CONTROL, LOG_PRIORITY_WARN, "%s event %d: %s (%s)", res[1], event, et, ed); - free(et); free(ed); - for (i=0; i %s and arrived <= %s " + "order by arrived,event", + ctx->srvName,ctx->srvPort, + from_s,to_s); + glite_common_log_msg(LOG_CATEGORY_LB_SERVER_DB, LOG_PRIORITY_DEBUG, stmt); + + if (edg_wll_ExecSQL(ctx,stmt,&q) < 0) goto clean; + + while ((ret = edg_wll_FetchRow(ctx,q,sizeof(res)/sizeof(res[0]),NULL,res)) > 0) { + assert(ret == sizofa(res)); + event = atoi(res[0]); free(res[0]); res[0] = NULL; + + if (convert_event_head(ctx,res+1,&e) + || edg_wll_get_event_flesh(ctx,event,&e)) + { + char *et,*ed; + int i; + + /* Most likely sort of internal inconsistency. + * Must not be fatal -- just complain + */ + edg_wll_Error(ctx,&et,&ed); + glite_common_log(LOG_CATEGORY_CONTROL, LOG_PRIORITY_WARN, "%s event %d: %s (%s)", res[1], event, et, ed); + free(et); free(ed); + for (i=0; i