accept old sequence numbers
authorMiloš Mulač <mulac@civ.zcu.cz>
Fri, 1 Dec 2006 08:49:32 +0000 (08:49 +0000)
committerMiloš Mulač <mulac@civ.zcu.cz>
Fri, 1 Dec 2006 08:49:32 +0000 (08:49 +0000)
- compatibility at incomming to-be-stored events level
- do not solve DB containing events with old s.numbers

org.glite.lb.server/src/store.c.T

index 7574b02..0192a44 100644 (file)
@@ -63,7 +63,8 @@ int edg_wll_StoreEvent(edg_wll_Context ctx,edg_wll_Event *e,int *seq)
        if ( ctx->event_load )
                now_s = strdup(edg_wll_TimeToDB(e->any.arrived.tv_sec));
        else
-       now_s = strdup(edg_wll_TimeToDB(time(NULL)));
+               now_s = strdup(edg_wll_TimeToDB(time(NULL)));
+
        edg_wll_ResetError(ctx);
        switch (err = check_auth(ctx,e)) {
                case 0: break;
@@ -82,6 +83,15 @@ int edg_wll_StoreEvent(edg_wll_Context ctx,edg_wll_Event *e,int *seq)
 
        userid = strdup(strmd5(e->any.user,NULL));
 
+/* if old seq. code arrives, add LBS part to it */
+       if (!strstr(e->any.seqcode, "LBS")) {
+               char *new_seqcode;
+
+               asprintf(&new_seqcode,"%s:LBS=000000",e->any.seqcode);
+               free(e->any.seqcode);
+               e->any.seqcode = new_seqcode;
+       }
+
 /* make sure user record is there */
        if ((err = store_user(ctx,userid,e->any.user))) goto clean;