Skip to content

Commit 97ad84c

Browse files
Merge branch 'master' into a
2 parents 6dab391 + 58270d6 commit 97ad84c

File tree

115 files changed

+8322
-645
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

115 files changed

+8322
-645
lines changed

CODEOWNERS

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
/DATA/testing/detectors/TRD
1818
/DATA/testing/detectors/ZDC
1919

20-
/MC @sawenzel @chiarazampolli @jackal1-66
20+
/MC @sawenzel @jackal1-66
2121

2222
# PWG experts
2323
/MC/*/ALICE3 @njacazio

DATA/production/calib/its-threshold-aggregator.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ PROXY_INSPEC="tunestring:ITS/TSTR;runtype:ITS/RUNT;fittype:ITS/FITT;scantype:ITS
1010

1111
CCDBPATH1=""
1212
CCDBPATH2=""
13-
if [ $RUNTYPE_ITS == "tuning" ] || [ $RUNTYPE_ITS == "digital" ] || [ $RUNTYPE_ITS == "tuningbb" ]; then
13+
if [[ $RUNTYPE_ITS == "tuning" ]] || [[ $RUNTYPE_ITS == *digital* ]] || [[ $RUNTYPE_ITS == "tuningbb" ]]; then
1414
CCDBPATH1="$DCSCCDBSERVER_PERS"
1515
CCDBPATH2="http://o2-ccdb.internal"
1616
else
@@ -26,7 +26,7 @@ WORKFLOW=
2626
add_W o2-dpl-raw-proxy "--exit-transition-timeout 20 --proxy-name its-thr-input-proxy --dataspec \"$PROXY_INSPEC\" --network-interface ib0 --channel-config \"name=its-thr-input-proxy,method=bind,type=pull,rateLogging=0,transport=zeromq\"" "" 0
2727
add_W o2-its-threshold-aggregator-workflow "-b" "" 0
2828
add_W o2-calibration-ccdb-populator-workflow "--ccdb-path=\"$CCDBPATH1\" --sspec-min 0 --sspec-max 0 --name-extention dcs"
29-
if [ $RUNTYPE_ITS == "digital" ]; then
29+
if [[ $RUNTYPE_ITS == *digital* ]]; then
3030
add_W o2-calibration-ccdb-populator-workflow "--ccdb-path=\"$CCDBPATH2\" --sspec-min 1 --sspec-max 1"
3131
fi
3232

DATA/production/calib/its-threshold-processing.sh

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,15 +14,19 @@ PROXY_OUTSPEC="tunestring:ITS/TSTR;runtype:ITS/RUNT;fittype:ITS/FITT;scantype:IT
1414

1515
CHIPMODBASE=5
1616
NDECODERS=6
17+
ADDITIONAL_OPTIONS_DEC=""
18+
ADDITIONAL_OPTIONS_CAL=""
1719
if [ $RUNTYPE_ITS == "digital" ]; then
1820
CHIPMODBASE=10
1921
fi
22+
if [ $RUNTYPE_ITS == "digitalnomask" ]; then
23+
CHIPMODBASE=10
24+
ADDITIONAL_OPTIONS_CAL="--ninj 5"
25+
fi
2026
if [ $RUNTYPE_ITS == "thrfull" ]; then
2127
CHIPMODBASE=20
2228
NDECODERS=10
2329
fi
24-
ADDITIONAL_OPTIONS_DEC=""
25-
ADDITIONAL_OPTIONS_CAL=""
2630
if [ $RUNTYPE_ITS == "tuningbb" ]; then
2731
ADDITIONAL_OPTIONS_CAL="--min-vcasn 30 --max-vcasn 130"
2832
fi

DATA/production/configurations/asyncReco/async_pass.sh

Lines changed: 27 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -412,67 +412,46 @@ fi
412412
echo "SETTING_ROOT_OUTPUT = $SETTING_ROOT_OUTPUT"
413413

414414
# Enabling GPUs
415-
if [[ -n "$ALIEN_JDL_USEGPUS" && $ALIEN_JDL_USEGPUS != 0 ]] ; then
416-
echo "Enabling GPUS"
417-
[[ -z ${GPUTYPE:-} ]] && export GPUTYPE="HIP"
418-
[[ -z ${GPUMEMSIZE:-} ]] && export GPUMEMSIZE=$((25 << 30))
419-
if [[ "0$ASYNC_PASS_NO_OPTIMIZED_DEFAULTS" != "01" ]]; then
415+
if [[ $ASYNC_PASS_NO_OPTIMIZED_DEFAULTS != 1 ]]; then
416+
export OPTIMIZED_PARALLEL_ASYNC_AUTO_SHM_LIMIT=1
417+
if [[ $ALIEN_JDL_USEGPUS == 1 ]] ; then
418+
echo "Enabling GPUS"
419+
if [[ -z $ALIEN_JDL_SITEARCH ]]; then echo "ERROR: Must set ALIEN_JDL_SITEARCH to define GPU architecture!"; exit 1; fi
420+
if [[ $ALIEN_JDL_SITEARCH == "NERSC" ]]; then # Disable mlock / ulimit / gpu memory registration - has performance impact, but doesn't work at NERSC for now
421+
export SETENV_NO_ULIMIT=1
422+
export CONFIG_EXTRA_PROCESS_o2_gpu_reco_workflow+="GPU_proc.noGPUMemoryRegistration=1;"
423+
fi
424+
ALIEN_JDL_SITEARCH_TMP=$ALIEN_JDL_SITEARCH
425+
if [[ $ALIEN_JDL_SITEARCH == "EPN_MI100" ]]; then
426+
ALIEN_JDL_SITEARCH_TMP=EPN
427+
export EPN_NODE_MI100=1
428+
elif [[ $ALIEN_JDL_SITEARCH == "EPN_MI50" ]]; then
429+
ALIEN_JDL_SITEARCH_TMP=EPN
430+
fi
420431
if [[ "ALIEN_JDL_USEFULLNUMADOMAIN" == 0 ]]; then
421432
if [[ $keep -eq 0 ]]; then
422433
if [[ $ALIEN_JDL_UNOPTIMIZEDGPUSETTINGS != 1 ]]; then
423-
export OPTIMIZED_PARALLEL_ASYNC=pp_1gpu # sets the multiplicities to optimized defaults for this configuration (1 job with 1 gpu on EPNs)
424-
export OPTIMIZED_PARALLEL_ASYNC_AUTO_SHM_LIMIT=1
434+
export OPTIMIZED_PARALLEL_ASYNC=pp_1gpu_${ALIEN_JDL_SITEARCH_TMP} # (16 cores, 1 gpu per job, pp)
425435
else
426-
# forcing multiplicities to be 1
427-
export MULTIPLICITY_PROCESS_tof_matcher=1
428-
export MULTIPLICITY_PROCESS_mch_cluster_finder=1
429-
export MULTIPLICITY_PROCESS_tpc_entropy_decoder=1
430-
export MULTIPLICITY_PROCESS_itstpc_track_matcher=1
431-
export MULTIPLICITY_PROCESS_its_tracker=1
432-
export OMP_NUM_THREADS=4
433-
export TIMEFRAME_RATE_LIMIT=8
434-
export SHMSIZE=30000000000
436+
export OPTIMIZED_PARALLEL_ASYNC=pp_1gpu_${ALIEN_JDL_SITEARCH_TMP}_unoptimized # (16 cores, 1 gpu per job, pp, low CPU multiplicities)
435437
fi
436438
else
437-
export TIMEFRAME_RATE_LIMIT=4
438-
export SHMSIZE=30000000000
439+
export OPTIMIZED_PARALLEL_ASYNC=keep_root
439440
fi
440441
else
441442
if [[ $BEAMTYPE == "pp" ]]; then
442-
export OPTIMIZED_PARALLEL_ASYNC=pp_4gpu # sets the multiplicities to optimized defaults for this configuration (1 Numa, pp)
443-
export OPTIMIZED_PARALLEL_ASYNC_AUTO_SHM_LIMIT=1
443+
export OPTIMIZED_PARALLEL_ASYNC=pp_4gpu_${ALIEN_JDL_SITEARCH_TMP} # (64 cores, 1 NUMA, 4 gpu per job, pp)
444444
else # PbPb
445-
export OPTIMIZED_PARALLEL_ASYNC=PbPb_4gpu # sets the multiplicities to optimized defaults for this configuration (1 Numa, PbPb)
446-
export OPTIMIZED_PARALLEL_ASYNC_AUTO_SHM_LIMIT=1
445+
export OPTIMIZED_PARALLEL_ASYNC=PbPb_4gpu_${ALIEN_JDL_SITEARCH_TMP} # (64 cores, 1 NUMA 4 gpu per job, PbPb)
447446
fi
448447
fi
449-
fi
450-
else
451-
# David, Oct 13th
452-
# the optimized settings for the 8 core GRID queue without GPU are
453-
# (overwriting the values above)
454-
#
455-
if [[ "0$ASYNC_PASS_NO_OPTIMIZED_DEFAULTS" != "01" ]]; then
456-
if [[ "$ALIEN_JDL_EPNFULLNUMACPUONLY" != 1 ]]; then
457-
if [[ $BEAMTYPE == "pp" ]]; then
458-
if (( $(echo "$RUN_IR > 800000" | bc -l) )); then
459-
export TIMEFRAME_RATE_LIMIT=1
460-
elif (( $(echo "$RUN_IR < 50000" | bc -l) )); then
461-
export TIMEFRAME_RATE_LIMIT=6
462-
else
463-
export TIMEFRAME_RATE_LIMIT=3
464-
fi
465-
export OPTIMIZED_PARALLEL_ASYNC=pp_8cpu # sets the multiplicities to optimized defaults for this configuration (grid)
466-
export SHMSIZE=16000000000
467-
else # PbPb
468-
export TIMEFRAME_RATE_LIMIT=2
469-
export OPTIMIZED_PARALLEL_ASYNC=pp_8cpu
470-
export SHMSIZE=16000000000
471-
export SVERTEX_THREADS=5
472-
fi
448+
else
449+
export SETENV_NO_ULIMIT=1
450+
export DPL_DEFAULT_PIPELINE_LENGTH=16 # to avoid memory issues - affects performance, so don't do with GPUs
451+
if [[ $ALIEN_JDL_EPNFULLNUMACPUONLY != 1 ]]; then
452+
export OPTIMIZED_PARALLEL_ASYNC=8cpu # (8 cores per job, grid)
473453
else
474-
export OPTIMIZED_PARALLEL_ASYNC=pp_64cpu # to use EPNs with full NUMA domain but without GPUs
475-
export OPTIMIZED_PARALLEL_ASYNC_AUTO_SHM_LIMIT=1
454+
export OPTIMIZED_PARALLEL_ASYNC=pp_64cpu # (64 cores per job, 1 NUMA, EPN)
476455
fi
477456
fi
478457
fi

DATA/production/configurations/asyncReco/setenv_extra.sh

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,6 @@
33

44
# process flags passed to the script
55

6-
if [[ -z "$ALIEN_JDL_USEGPUS" || $ALIEN_JDL_USEGPUS != 1 ]]; then
7-
export SETENV_NO_ULIMIT=1
8-
fi
9-
10-
# to avoid memory issues - we don't do this on the EPNs, since it can affect the performance
11-
if [[ $ALIEN_JDL_USEGPUS != 1 ]]; then
12-
export DPL_DEFAULT_PIPELINE_LENGTH=16
13-
fi
14-
156
# check if this is a production on skimmed data
167
if grep -q /skimmed/ wn.xml ; then
178
export ON_SKIMMED_DATA=1;
@@ -574,6 +565,9 @@ fi
574565
# ad-hoc options for GPU reco workflow
575566
export CONFIG_EXTRA_PROCESS_o2_gpu_reco_workflow+=";GPU_global.dEdxDisableResidualGainMap=1;$TRACKTUNETPC;$VDRIFTPARAMOPTION;"
576567

568+
# if ITS is running on GPU we need to give the workflow most options from ITS reco
569+
has_detector_gpu ITS && export CONFIG_EXTRA_PROCESS_o2_gpu_reco_workflow+=";$CONFIG_EXTRA_PROCESS_o2_its_reco_workflow;"
570+
577571
[[ ! -z $TPCCLUSTERTIMESHIFT ]] && [[ $ALIEN_JDL_LPMPRODUCTIONTYPE != "MC" ]] && export CONFIG_EXTRA_PROCESS_o2_gpu_reco_workflow+=";GPU_rec_tpc.clustersShiftTimebins=$TPCCLUSTERTIMESHIFT;"
578572

579573
# ad-hoc settings for TOF reco

DATA/production/qc-async/mch-digits.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,12 @@
3636
"type": "direct",
3737
"query": "digits:MCH/DIGITS"
3838
},
39+
"movingWindows": [
40+
"RateSignalPerDualSampa"
41+
],
3942
"taskParameters": {
43+
"Enable1DRateMaps": "true",
44+
"Enable2DRateMaps": "false",
4045
"Diagnostic": "false"
4146
},
4247
"grpGeomRequest": {

DATA/production/qc-async/mch-reco.json

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,13 @@
4949
"dataSource": {
5050
"type": "direct",
5151
"query": "preclusters:MCH/PRECLUSTERS/0;preclusterdigits:MCH/PRECLUSTERDIGITS/0"
52+
},
53+
"movingWindows": [
54+
"PseudoeffPerDualSampa"
55+
],
56+
"taskParameters": {
57+
"Enable1DPseudoeffMaps": "true",
58+
"Enable2DPseudoeffMaps": "false"
5259
}
5360
},
5461
"FRofs": {
@@ -68,4 +75,4 @@
6875
}
6976
}
7077
}
71-
}
78+
}

DATA/production/standalone-calibration.desc

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@ ITS-thr-full: "O2PDPSuite" reco,80,80,"RUNTYPE_ITS=thrfull production/calib/its-
1818

1919
ITS-digital: "O2PDPSuite" reco,40,40,"RUNTYPE_ITS=digital production/calib/its-threshold-processing.sh" calib,40,"RUNTYPE_ITS=digital production/calib/its-threshold-aggregator.sh"
2020

21+
ITS-digital-no-mask: "O2PDPSuite" reco,40,40,"RUNTYPE_ITS=digitalnomask production/calib/its-threshold-processing.sh" calib,40,"RUNTYPE_ITS=digitalnomask production/calib/its-threshold-aggregator.sh"
22+
2123
ITS-pulselength: "O2PDPSuite" reco,40,40,"RUNTYPE_ITS=pulselength production/calib/its-threshold-processing.sh" calib,40,"RUNTYPE_ITS=pulselength production/calib/its-threshold-aggregator.sh"
2224

2325
ITS-tot-1row: "O2PDPSuite" reco,40,40,"RUNTYPE_ITS=tot1row production/calib/its-threshold-processing.sh" calib,40,"RUNTYPE_ITS=tot1row production/calib/its-threshold-aggregator.sh"

DATA/production/workflow-multiplicities.sh

Lines changed: 43 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -53,11 +53,23 @@ if [[ ! -z ${OPTIMIZED_PARALLEL_ASYNC:-} ]]; then
5353
[[ ! -z ${TIMEFRAME_RATE_LIMIT:-} ]] && unset TIMEFRAME_RATE_LIMIT
5454
[[ ! -z ${SHMSIZE:-} ]] && unset SHMSIZE
5555
fi
56-
if [[ $OPTIMIZED_PARALLEL_ASYNC == "pp_8cpu" ]]; then
56+
if [[ $OPTIMIZED_PARALLEL_ASYNC == "8cpu" ]]; then
5757
[[ -z ${TIMEFRAME_RATE_LIMIT:-} ]] && TIMEFRAME_RATE_LIMIT=3
5858
[[ -z ${SHMSIZE:-} ]] && SHMSIZE=16000000000
5959
NGPURECOTHREADS=5
60-
elif [[ $OPTIMIZED_PARALLEL_ASYNC == "pp_16cpu" ]]; then
60+
if [[ $BEAMTYPE == "pp" ]]; then
61+
if (( $(echo "$RUN_IR > 800000" | bc -l) )); then
62+
TIMEFRAME_RATE_LIMIT=1
63+
elif (( $(echo "$RUN_IR < 50000" | bc -l) )); then
64+
TIMEFRAME_RATE_LIMIT=6
65+
else
66+
TIMEFRAME_RATE_LIMIT=3
67+
fi
68+
else # PbPb
69+
TIMEFRAME_RATE_LIMIT=2
70+
SVERTEX_THREADS=5
71+
fi
72+
elif [[ $OPTIMIZED_PARALLEL_ASYNC == "16cpu" ]]; then
6173
[[ -z ${TIMEFRAME_RATE_LIMIT:-} ]] && TIMEFRAME_RATE_LIMIT=8
6274
[[ -z ${SHMSIZE:-} ]] && SHMSIZE=22000000000
6375
NGPURECOTHREADS=9
@@ -78,20 +90,28 @@ if [[ ! -z ${OPTIMIZED_PARALLEL_ASYNC:-} ]]; then
7890
N_MCHCL=3
7991
N_TOFMATCH=2
8092
N_TPCENTDEC=3
81-
elif [[ $OPTIMIZED_PARALLEL_ASYNC == "pp_1gpu" ]]; then
93+
elif [[ $OPTIMIZED_PARALLEL_ASYNC == "pp_1gpu_EPN" || $OPTIMIZED_PARALLEL_ASYNC == "pp_1gpu_EPN_unoptimized" ]]; then
8294
[[ -z ${TIMEFRAME_RATE_LIMIT:-} ]] && TIMEFRAME_RATE_LIMIT=8
8395
[[ -z ${SHMSIZE:-} ]] && SHMSIZE=30000000000
84-
N_TOFMATCH=2
85-
N_MCHCL=3
86-
N_TPCENTDEC=2
87-
N_TPCITS=3
96+
NGPUS=1
97+
GPUTYPE=HIP
98+
GPUMEMSIZE=$((25 << 30))
8899
N_MCHTRK=2
89-
N_ITSTRK=3
90-
NGPURECOTHREADS=8
100+
N_TPCTRK=$NGPUS
101+
if [[ $OPTIMIZED_PARALLEL_ASYNC == "pp_1gpu_EPN" ]]; then
102+
N_TOFMATCH=2
103+
N_MCHCL=3
104+
N_TPCENTDEC=2
105+
N_TPCITS=3
106+
N_ITSTRK=3
107+
NGPURECOTHREADS=8
108+
else
109+
NGPURECOTHREADS=4
110+
fi
91111
NTRDTRKTHREADS=3
92112
ITSTRK_THREADS=2
93113
ITSTPC_THREADS=2
94-
elif [[ $OPTIMIZED_PARALLEL_ASYNC =~ ^pp_4gpu(_|$) ]]; then
114+
elif [[ $OPTIMIZED_PARALLEL_ASYNC == "pp_gpu_NERSC" || $OPTIMIZED_PARALLEL_ASYNC == "pp_4gpu_EPN" ]]; then
95115
if [[ -z ${TIMEFRAME_RATE_LIMIT:-} ]]; then
96116
if [[ ! -z ${ALIEN_JDL_LPMANCHORYEAR} && ${ALIEN_JDL_LPMANCHORYEAR} -lt 2023 ]]; then
97117
TIMEFRAME_RATE_LIMIT=45
@@ -100,19 +120,21 @@ if [[ ! -z ${OPTIMIZED_PARALLEL_ASYNC:-} ]]; then
100120
fi
101121
fi
102122
[[ -z ${SHMSIZE:-} ]] && SHMSIZE=100000000000
103-
if [[ $OPTIMIZED_PARALLEL_ASYNC == "pp_4gpu_NERSC" ]]; then
123+
if [[ $OPTIMIZED_PARALLEL_ASYNC == "pp_gpu_NERSC" ]]; then
104124
NGPUS=1
105125
GPUTYPE=CUDA
106126
else
107127
NGPUS=4
128+
GPUTYPE=HIP
108129
fi
130+
GPUMEMSIZE=$((25 << 30))
109131
NGPURECOTHREADS=8
110132
NTRDTRKTHREADS=2
111133
ITSTRK_THREADS=2
112134
ITSTPC_THREADS=2
113135
SVERTEX_THREADS=4
114136
TPCTIMESERIES_THREADS=2
115-
N_TPCTRK=4
137+
N_TPCTRK=$NGPUS
116138
N_FWDMATCH=2
117139
N_PRIMVTXMATCH=1
118140
N_PRIMVTX=1
@@ -128,16 +150,18 @@ if [[ ! -z ${OPTIMIZED_PARALLEL_ASYNC:-} ]]; then
128150
N_ITSTRK=12
129151
N_ITSCL=2
130152
export DPL_SMOOTH_RATE_LIMITING=1
131-
elif [[ $OPTIMIZED_PARALLEL_ASYNC =~ ^PbPb_4gpu(_|$) ]]; then
153+
elif [[ $OPTIMIZED_PARALLEL_ASYNC == "PbPb_gpu_NERSC" || $OPTIMIZED_PARALLEL_ASYNC == "PbPb_4gpu_EPN" ]]; then
132154
[[ -z ${TIMEFRAME_RATE_LIMIT:-} ]] && TIMEFRAME_RATE_LIMIT=35
133155
[[ -z ${SHMSIZE:-} ]] && SHMSIZE=100000000000 # SHM_LIMIT 3/4
134156
[[ -z ${TIMEFRAME_SHM_LIMIT:-} ]] && TIMEFRAME_SHM_LIMIT=$(($SHMSIZE / 3))
135-
if [[ $OPTIMIZED_PARALLEL_ASYNC == "PbPb_4gpu_NERSC" ]]; then
157+
if [[ $OPTIMIZED_PARALLEL_ASYNC == "PbPb_gpu_NERSC" ]]; then
136158
NGPUS=1
137159
GPUTYPE=CUDA
138160
else
139161
NGPUS=4
162+
GPUTYPE=HIP
140163
fi
164+
GPUMEMSIZE=$((25 << 30))
141165
NGPURECOTHREADS=8
142166
NTRDTRKTHREADS=8
143167
ITSTRK_THREADS=5
@@ -172,6 +196,9 @@ if [[ ! -z ${OPTIMIZED_PARALLEL_ASYNC:-} ]]; then
172196
N_MCHTRK=1
173197
N_TOFMATCH=9
174198
N_TPCTRK=6
199+
elif [[ $OPTIMIZED_PARALLEL_ASYNC == "keep_root" ]]; then
200+
TIMEFRAME_RATE_LIMIT=4
201+
SHMSIZE=30000000000
175202
else
176203
echo "Invalid optimized setting '$OPTIMIZED_PARALLEL_ASYNC'" 1>&2
177204
exit 1
@@ -192,6 +219,7 @@ elif [[ $EPNPIPELINES != 0 ]]; then
192219
if [[ "${GEN_TOPO_AUTOSCALE_PROCESSES:-}" == "1" && $RUNTYPE == "PHYSICS" ]]; then
193220
N_MCHCL=$(math_max $((6 * 100 / $RECO_NUM_NODES_WORKFLOW_CMP)) 1)
194221
fi
222+
N_MCHRAWDEC=2
195223
if [[ "$HIGH_RATE_PP" == "1" ]]; then
196224
N_TPCITS=$(math_max $((5 * $EPNPIPELINES * $NGPUS / 4)) 1)
197225
N_TPCENT=$(math_max $((4 * $EPNPIPELINES * $NGPUS / 4)) 1)
@@ -208,6 +236,7 @@ elif [[ $EPNPIPELINES != 0 ]]; then
208236
else
209237
if [[ $BEAMTYPE == "PbPb" ]]; then
210238
N_ITSTRK=$(math_max $((2 * $EPNPIPELINES * $NGPUS / 4)) 1)
239+
N_MCHRAWDEC=2
211240
elif [[ $BEAMTYPE == "cosmic" ]]; then
212241
N_ITSTRK=$(math_max $((4 * $EPNPIPELINES * $NGPUS / 4)) 1)
213242
fi

DATA/tools/epn/gen_topo_o2dpg.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ while true; do
9494
done
9595
git checkout $GEN_TOPO_SOURCE &> /dev/null
9696
if [[ $? != 0 ]]; then
97-
git fetch --tags origin 1>&2 || { echo Repository update failed 1>&2; exit 1; }
97+
git fetch -f --tags origin 1>&2 || { echo Repository update failed 1>&2; exit 1; }
9898
git checkout $GEN_TOPO_SOURCE &> /dev/null || { echo commit does not exist 1>&2; exit 1; }
9999
fi
100100
# At a tag, or a detached non-dirty commit, but not on a branch

0 commit comments

Comments
 (0)