@@ -27,6 +27,7 @@ package bookkeeping
2727import (
2828 "net/url"
2929 "path"
30+ "strconv"
3031 "sync"
3132 "time"
3233
@@ -85,7 +86,7 @@ func (bk *BookkeepingWrapper) CreateRun(activityId string, nDetectors int, nEpns
8586 return err
8687}
8788
88- func (bk * BookkeepingWrapper ) UpdateRun (runNumber int32 , runResult string , timeO2Start time. Time , timeO2End time. Time , timeTrgStart time. Time , timeTrgEnd time. Time , trgGlobal bool , trg bool , pdpConfig string , pdpTopology string , tfbMode string /*, odcFullname string, lhcPeriod string*/ ) error {
89+ func (bk * BookkeepingWrapper ) UpdateRun (runNumber int32 , runResult string , timeO2Start string , timeO2End string , timeTrgStart string , timeTrgEnd string , trgGlobal bool , trg bool , pdpConfig string , pdpTopology string , tfbMode string /*, odcFullname string, lhcPeriod string*/ ) error {
8990 var runquality sw.RunQuality
9091 switch runResult {
9192 case string (sw .GOOD_RunQuality ):
@@ -96,20 +97,44 @@ func (bk *BookkeepingWrapper) UpdateRun(runNumber int32, runResult string, timeO
9697 runquality = sw .TEST_RunQuality
9798 }
9899
99- timeO2S := timeO2Start .UnixMilli ()
100- if (timeO2Start == time.Time {} || timeO2S < 0 ) {
100+ timeO2S , ok := strconv .ParseInt (timeO2Start , 10 , 64 )
101+ if ok != nil {
102+ log .WithField ("runNumber" , runNumber ).
103+ WithField ("time" , timeO2Start ).
104+ Warning ("cannot parse O2 start time" )
101105 timeO2S = - 1
102106 }
103- timeO2E := timeO2End .UnixMilli ()
104- if (timeO2End == time.Time {} || timeO2E < 0 ) {
107+ if timeO2Start == "" || timeO2S <= 0 {
108+ timeO2S = - 1
109+ }
110+ timeO2E , ok := strconv .ParseInt (timeO2End , 10 , 64 )
111+ if ok != nil {
112+ log .WithField ("runNumber" , runNumber ).
113+ WithField ("time" , timeO2End ).
114+ Warning ("cannot parse O2 end time" )
115+ timeO2E = - 1
116+ }
117+ if timeO2End == "" || timeO2E <= 0 {
105118 timeO2E = - 1
106119 }
107- timeTrgS := timeTrgStart .UnixMilli ()
108- if (timeTrgStart == time.Time {} || timeTrgS < 0 ) {
120+ timeTrgS , ok := strconv .ParseInt (timeTrgStart , 10 , 64 )
121+ if ok != nil {
122+ log .WithField ("runNumber" , runNumber ).
123+ WithField ("time" , timeTrgStart ).
124+ Warning ("cannot parse Trg start time" )
109125 timeTrgS = - 1
110126 }
111- timeTrgE := timeTrgEnd .UnixMilli ()
112- if (timeTrgEnd == time.Time {} || timeTrgE < 0 ) {
127+ if timeTrgStart == "" || timeTrgS <= 0 {
128+ timeTrgS = - 1
129+ }
130+ timeTrgE , ok := strconv .ParseInt (timeTrgEnd , 10 , 64 )
131+ if ok != nil {
132+ log .WithField ("runNumber" , runNumber ).
133+ WithField ("time" , timeTrgEnd ).
134+ Warning ("cannot parse Trg end time" )
135+ timeTrgE = - 1
136+ }
137+ if timeTrgEnd == "" || timeTrgE <= 0 {
113138 timeTrgE = - 1
114139 }
115140
0 commit comments