- Timestamp:
- 07/18/23 17:42:27 (12 months ago)
- Location:
- branches/libIGCM_pack
- Files:
-
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/libIGCM_pack/AA_SE_Checker
r1525 r1588 212 212 # 213 213 if [ ! X$( eval echo \${${compname}_${flag_post}_Seasonal} ) = XON ] ; then 214 (( i=i+3 )) 214 (( i_ = i+1 )) 215 eval Testvar_=\${${ListFilesName}[$i_]} > /dev/null 2>&1 216 eval Testvar=${Testvar_} 217 if [[ ${Testvar} =~ [0-9][DMY]$ ]] ; then 218 (( i = i+4 )) 219 else 220 (( i = i+3 )) 221 fi 215 222 continue 216 223 fi … … 234 241 fi 235 242 fi 236 (( i=i+3 )) # to explore file list 243 (( i_ = i+1 )) # to explore file list 244 eval Testvar_=\${${ListFilesName}[$i_]} > /dev/null 2>&1 245 eval Testvar=${Testvar_} 246 if [[ ${Testvar} =~ [0-9][DMY]$ ]] ; then 247 (( i = i+4 )) 248 else 249 (( i=i+3 )) 250 fi 237 251 done # until [ $i -eq $NbFiles ] 238 252 fi # [ X${FileName0} != X${NULL_STR} ] -
branches/libIGCM_pack/AA_TimeSeries_Checker
r1525 r1588 218 218 #IGCM_debug_Print 2 "Empty TS : ${compname}_Post_${FILE}_TimeSeriesVars${Dimension}" 219 219 #(( i=i+3 )) 220 (( i_ = i+1 )) 221 eval Testvar_=\${${ListFilesName}[$i_]} > /dev/null 2>&1 222 eval Testvar=${Testvar_} 223 if [[ ${Testvar} =~ [0-9][DMY]$ ]] ; then 224 (( i = i+4 )) 225 else 226 (( i = i+3 )) 227 fi 220 228 continue 221 229 fi … … 447 455 fi 448 456 fi 457 (( i_ = i+1 )) 458 eval Testvar_=\${${ListFilesName}[$i_]} > /dev/null 2>&1 459 eval Testvar=${Testvar_} 460 if [[ ${Testvar} =~ [0-9][DMY]$ ]] ; then 461 (( i = i+4 )) 462 else 449 463 (( i=i+3 )) 464 fi 450 465 done 451 466 fi -
branches/libIGCM_pack/AA_create_multi_se
r1568 r1588 291 291 # 292 292 if [ ! X$( eval echo \${${compname}_${flag_post}_Seasonal} ) = XON ] ; then 293 (( i=i+3 )) 293 (( i_ = i+1 )) 294 eval Testvar_=\${${ListFilesName}[$i_]} > /dev/null 2>&1 295 eval Testvar=${Testvar_} 296 if [[ ${Testvar} =~ [0-9][DMY]$ ]] ; then 297 (( i = i+4 )) 298 else 299 (( i = i+3 )) 300 fi 294 301 continue 295 302 fi … … 310 317 fi 311 318 fi 312 (( i=i+3 )) 319 (( i_ = i+1 )) # to explore file list 320 eval Testvar_=\${${ListFilesName}[$i_]} > /dev/null 2>&1 321 eval Testvar=${Testvar_} 322 if [[ ${Testvar} =~ [0-9][DMY]$ ]] ; then 323 (( i = i+4 )) 324 else 325 (( i=i+3 )) 326 fi 313 327 done # until [ $i -eq $NbFiles ] 314 328 fi -
branches/libIGCM_pack/AA_create_se
r1568 r1588 308 308 # 309 309 if [ ! X$( eval echo \${${compname}_${flag_post}_Seasonal} ) = XON ] ; then 310 (( i_ = i+1 )) 311 eval Testvar_=\${${ListFilesName}[$i_]} > /dev/null 2>&1 312 eval Testvar=${Testvar_} 313 if [[ ${Testvar} =~ [0-9][DMY]$ ]] ; then 314 (( i = i+4 )) 315 else 310 316 (( i=i+3 )) 317 fi 311 318 continue 312 319 fi … … 337 344 fi 338 345 fi 346 (( i_ = i+1 )) 347 eval Testvar_=\${${ListFilesName}[$i_]} > /dev/null 2>&1 348 eval Testvar=${Testvar_} 349 if [[ ${Testvar} =~ [0-9][DMY]$ ]] ; then 350 (( i = i+4 )) 351 else 339 352 (( i=i+3 )) 353 fi 340 354 done # until [ $i -eq $NbFiles ] 341 355 fi -
branches/libIGCM_pack/AA_create_ts
r1577 r1588 354 354 IGCM_debug_Print 3 "Nothing to do for ${FILE} according to ${card}" 355 355 IGCM_debug_Print 3 "TimeSeriesVars${Dimension} for ${FILE} is empty" 356 (( i_ = i+1 )) 357 eval Testvar_=\${${ListFilesName}[$i_]} > /dev/null 2>&1 358 eval Testvar=${Testvar_} 359 if [[ ${Testvar} =~ [0-9][DMY]$ ]] ; then 360 (( i = i+4 )) 361 else 356 362 (( i=i+3 )) 363 fi 357 364 continue 358 365 # … … 364 371 IGCM_debug_Print 3 "Nothing to do for ${FILE} according to ${card}" 365 372 IGCM_debug_Print 3 "ChunckJob${Dimension}=OFF for ${FILE} so it has been switched off" 373 (( i_ = i+1 )) 374 eval Testvar_=\${${ListFilesName}[$i_]} > /dev/null 2>&1 375 eval Testvar=${Testvar_} 376 if [[ ${Testvar} =~ [0-9][DMY]$ ]] ; then 377 (( i = i+4 )) 378 else 366 379 (( i=i+3 )) 380 fi 367 381 continue 368 382 fi … … 374 388 IGCM_debug_Print 3 "Nothing to do for ${FILE} TimeSeriesVars${Dimension} according to ${card}" 375 389 IGCM_debug_Print 3 "Let another chunck task do the job $( eval echo \${${compname}_Post_${FILE}_ChunckJob${Dimension}} )" 390 (( i_ = i+1 )) 391 eval Testvar_=\${${ListFilesName}[$i_]} > /dev/null 2>&1 392 eval Testvar=${Testvar_} 393 if [[ ${Testvar} =~ [0-9][DMY]$ ]] ; then 394 (( i = i+4 )) 395 else 376 396 (( i=i+3 )) 397 fi 377 398 continue 378 399 fi … … 391 412 IGCM_debug_Print 1 "ERROR !! We miss coordinate axis for ${FILE} according to ${card}" 392 413 IGCM_debug_Print 1 "So no time series will be produced for ${FILE} !!" 414 (( i_ = i+1 )) 415 eval Testvar_=\${${ListFilesName}[$i_]} > /dev/null 2>&1 416 eval Testvar=${Testvar_} 417 if [[ ${Testvar} =~ [0-9][DMY]$ ]] ; then 418 (( i = i+4 )) 419 else 393 420 (( i=i+3 )) 421 fi 394 422 continue 395 423 # … … 426 454 eval set +A LISTE_FILE_${comp} \${LISTE_FILE_${comp}[*]} ${FILE} 427 455 eval set +A LISTE_AXIS_${FILE} \${${compname}_Post_${FILE}_GatherWithInternal[*]} 456 (( i_ = i+1 )) 457 eval Testvar_=\${${ListFilesName}[$i_]} > /dev/null 2>&1 458 eval Testvar=${Testvar_} 459 if [[ ${Testvar} =~ [0-9][DMY]$ ]] ; then 460 eval PeriodPack_FileType=${Testvar} 461 else 462 PeriodPack_FileType=${PeriodPack} 463 fi 464 eval set +A LISTE_PACKFREQUENCY_${comp} \${LISTE_PACKFREQUENCY_${comp}[*]} ${PeriodPack_FileType} 428 465 # 429 466 if [ ! X${RebuildFrequency} = Xtrue ] ; then … … 441 478 fi 442 479 fi 480 (( i_ = i+1 )) 481 eval Testvar_=\${${ListFilesName}[$i_]} > /dev/null 2>&1 482 eval Testvar=${Testvar_} 483 if [[ ${Testvar} =~ [0-9][DMY]$ ]] ; then 484 (( i = i+4 )) 485 else 443 486 (( i=i+3 )) 487 fi 444 488 done 445 489 fi … … 497 541 # First Time Series Submission 498 542 FIRST_PASS=TRUE 499 Length=$( IGCM_date_DaysInPreviousPeriod ${DateBegin} ${config_UserChoices_PeriodLength} begin)500 DATE_FIN_JOB_B=$( IGCM_date_AddDaysToGregorianDate ${DateBegin} $(( Length - 1 )) )501 543 else 502 544 # Last Completed Time Series … … 559 601 ######################################################################## 560 602 561 DATE_COUNT=${DATE_FIN_JOB_B}562 DATE_FIN_JOB_B_LOOP=${DATE_FIN_JOB_B}563 564 603 ( [ -n "${LEVEL}" ] && [ ${LEVEL} -eq 0 ] ) && NBRE_FILE_TOT=0 || NBRE_FILE_TOT=1 565 604 605 # THEN FOR EACH FILE TYPE WE LOOP BETWEEN DATE_COURANTE AND DATE_FIN. 606 for comp in ${config_ListOfComponents[*]} ; do 607 # 608 IGCM_sys_Mkdir ${RUN_DIR_PATH}/${comp} 609 # 610 IGCM_sys_Cd ${RUN_DIR_PATH}/${comp} 611 # 612 eval R_OUT_${comp}=${R_SAVE}/${comp} 613 # 614 i=0 615 # 616 for file in $( eval echo \${LISTE_FILE_${comp}[*]} ); do 617 config_UserChoices_PeriodLength=$( eval echo \${LISTE_PACKFREQUENCY_${comp}[$i]} ) 618 if [ ${FIRST_PASS} = TRUE ] ; then 619 Length=$( IGCM_date_DaysInPreviousPeriod ${DateBegin} ${config_UserChoices_PeriodLength} begin) 620 DATE_FIN_JOB_B=$( IGCM_date_AddDaysToGregorianDate ${DateBegin} $(( Length - 1 )) ) 621 fi 622 DATE_COUNT=${DATE_FIN_JOB_B} 623 DATE_FIN_JOB_B_LOOP=${DATE_FIN_JOB_B} 566 624 if [ ${DoJob} = true ] ; then 567 625 while [ ${DATE_COUNT} -lt ${PeriodDateEnd} ] ; do … … 658 716 659 717 # THEN FOR EACH FILE TYPE WE LOOP BETWEEN DATE_COURANTE AND DATE_FIN. 660 for comp in ${config_ListOfComponents[*]} ; do661 #662 IGCM_sys_Mkdir ${RUN_DIR_PATH}/${comp}663 #664 IGCM_sys_Cd ${RUN_DIR_PATH}/${comp}665 #666 eval R_OUT_${comp}=${R_SAVE}/${comp}667 #668 i=0669 #670 for file in $( eval echo \${LISTE_FILE_${comp}[*]} ); do671 718 # 672 719 # Determine in which output we can find file … … 717 764 if [ "${MissingFile}" = "TRUE" ] ; then 718 765 IGCM_debug_Print 1 "WARNING We skip ${file} type processing" 719 continue 766 continue 2 720 767 fi 721 768 … … 802 849 done # for var in ${liste_var} ; do 803 850 IGCM_sys_Rm ${liste_file_tmp[*]} 851 (( CURRENT_LOOP = CURRENT_LOOP + 1 )) 804 852 done # for file in ${liste_file_brut} do 805 853 done # for comp in ${config_ListOfComponents[*]} ; do 806 854 # GO AHEAD IN DEEPEST LOOP 807 (( CURRENT_LOOP = CURRENT_LOOP + 1 ))808 855 done # while [ ${CURRENT_LOOP} -le ${NBRE_TOUR} ] do 809 856 # FINISH -
branches/libIGCM_pack/AA_pack_output
r1568 r1588 155 155 DEBUG_debug=${DEBUG_debug:=false} 156 156 157 #D- Surpack_mode : to pack existing packs output files 158 #D- Default : n 159 surpack_mode=n 160 157 161 ######################################################################## 158 162 … … 231 235 IGCM_debug_Verif_Exit 232 236 233 IGCM_debug_Print 1 "Check coherence between PackFrequency and PeriodLength"234 IGCM_post_CheckModuloFrequency PeriodPack config_UserChoices_PeriodLength NbPeriodPerFrequency235 # ------------------------------------------------------------------236 # Test if all was right before proceeding further237 # ------------------------------------------------------------------238 IGCM_debug_Verif_Exit239 240 IGCM_debug_Print 1 "We must process ${NbPeriodPerFrequency} files for each pack"241 242 237 # Init loop 243 238 date_begin_pack=${DateBegin} … … 248 243 IGCM_debug_PrintVariables 3 date_end_simulation 249 244 250 while [ ${date_begin_pack} -le ${date_end_simulation} ] ; do 251 252 IGCM_debug_PrintVariables 3 number_pack 253 DaysTemp=$( IGCM_date_DaysInCurrentPeriod ${date_begin_pack} ${PeriodPack} ) 254 date_end_pack=$( IGCM_date_AddDaysToGregorianDate ${date_begin_pack} $(( ${DaysTemp} - 1 )) ) 255 256 for comp in ${config_ListOfComponents[*]} ; do 245 # Loop over components 246 for comp in ${config_ListOfComponents[*]} ; do 247 248 IGCM_card_DefineArrayFromOption ${SUBMIT_DIR}/config.card ListOfComponents ${comp} 249 eval compname=\${config_ListOfComponents_${comp}[0]} > /dev/null 2>&1 250 card=${SUBMIT_DIR}/COMP/${compname}.card 251 # 252 if [ X${surpack_mode} = Xy ] ; then 253 dirList=$( find ${R_SAVE}/${comp}/Output -maxdepth 1 -mindepth 1 -type d ) 254 else 257 255 dirList=$( find ${R_BUFR}/${comp}/Output -maxdepth 1 -mindepth 1 -type d ) 256 fi 257 # Loop over directories containing output files 258 258 for dir in ${dirList} ; do 259 259 # dirID is like ATM.Output.MO … … 266 266 # Loop over the file type and pack them when in between date_begin_pack and date_end_pack 267 267 for myType in ${fileType} ; do 268 # Read comp.card and find specific pack period for each type of file 269 IGCM_card_DefineArrayFromOption ${card} OutputFiles List 270 ListFilesName=${compname}_OutputFiles_List 271 eval FileName0=\${${ListFilesName}[0]} > /dev/null 2>&1 272 273 if [ X${FileName0} != X${NULL_STR} ] ; then 274 eval NbFiles=\${#${ListFilesName}[@]} > /dev/null 2>&1 275 276 (( i=0 )) 277 until [ $i -ge $NbFiles ]; do 278 (( i_ = i+1 )) 279 eval file_out_=\${${ListFilesName}[$i_]} > /dev/null 2>&1 280 eval file_out=${file_out_} 281 (( i_ = i+3 )) 282 eval Testvar_=\${${ListFilesName}[$i_]} > /dev/null 2>&1 283 eval Testvar=${Testvar_} 284 if [[ ${Testvar} =~ [0-9][DMY]$ ]] ; then 285 eval PeriodPack_FileType=${Testvar} 286 ((i = i+4)) 287 else 288 PeriodPack_FileType=${PeriodPack} 289 ((i = i+3)) 290 fi 291 if [[ ${file_out} =~ ${myType} ]] ; then 292 break 293 fi 294 done 295 fi 296 IGCM_debug_Print 1 "Check coherence between PackFrequency and PeriodLength" 297 IGCM_post_CheckModuloFrequency PeriodPack_FileType config_UserChoices_PeriodLength NbPeriodPerFrequency 298 # ------------------------------------------------------------------ 299 # Test if all was right before proceeding further 300 # ------------------------------------------------------------------ 301 IGCM_debug_Verif_Exit 302 303 # Loop over period pack 304 while [ ${date_begin_pack} -le ${date_end_simulation} ] ; do 305 DaysTemp=$( IGCM_date_DaysInCurrentPeriod ${date_begin_pack} ${PeriodPack_FileType} ) 306 date_end_pack=$( IGCM_date_AddDaysToGregorianDate ${date_begin_pack} $(( ${DaysTemp} - 1 )) ) 307 # 268 308 grep ${myType} liste_files.${dirID}.txt > liste_files.${dirID}.${myType}.txt 269 309 nbfile=0 310 # If no surpack, no need to demigrate. 311 if [ X${surpack_mode} = Xn ] ; then 270 312 for file in $( gawk '{print $11}' liste_files.${dirID}.${myType}.txt ); do 271 313 extract_date_file=$( echo ${file} | sed -e "s/.*${JobName}_[0-9]*_//" ) 272 314 date_file=$( echo ${extract_date_file} | sed 's/\([0-9]\{8\}\)_.*$/\1/g' ) 273 315 # echo pack n°${number_pack} ${date_file} ${date_begin_pack} ${date_end_pack} 316 # Ajouter un test sur la date 274 317 if [ ${date_file} -le ${date_end_pack} ] && [ ${date_file} -ge ${date_begin_pack} ] ; then 275 318 echo ${file} >> liste_pack_${myType}_${date_begin_pack}_${date_end_pack}.txt … … 278 321 fi 279 322 done 323 else 324 for file in $( gawk '{print $11}' liste_files.${dirID}.${myType}.txt ); do 325 extract_date_file=$( echo ${file} | sed -e "s/.*${JobName}_[0-9]*_//" ) 326 date_file=$( echo ${extract_date_file} | sed 's/\([0-9]\{8\}\)_.*$/\1/g' ) 327 # echo pack n°${number_pack} ${date_file} ${date_begin_pack} ${date_end_pack} 328 # Ajouter un test sur la date 329 if [ ${date_file} -le ${date_end_pack} ] && [ ${date_file} -ge ${date_begin_pack} ] ; then 330 echo ${file} >> liste_pack_${myType}_${date_begin_pack}_${date_end_pack}.txt 331 (( nbfile = nbfile + 1 )) 332 fi 333 done 334 # If surpack_mode, archive demigration is needed on TGCC 335 #-Q- irene-amd ccc_hsm get $( cat liste_pack_${myType}_${date_begin_pack}_${date_end_pack}.txt ) 336 #-Q- irene ccc_hsm get $( cat liste_pack_${myType}_${date_begin_pack}_${date_end_pack}.txt ) 337 for file in $( gawk '{print $11}' liste_files.${dirID}.${myType}.txt ); do 338 extract_date_file=$( echo ${file} | sed -e "s/.*${JobName}_[0-9]*_//" ) 339 date_file=$( echo ${extract_date_file} | sed 's/\([0-9]\{8\}\)_.*$/\1/g' ) 340 # echo pack n°${number_pack} ${date_file} ${date_begin_pack} ${date_end_pack} 341 # Ajouter un test sur la date 342 if [ ${date_file} -le ${date_end_pack} ] && [ ${date_file} -ge ${date_begin_pack} ] ; then 343 ncdump -h ${file} | grep -E 'float|double' | cut -f 1 -d '(' | cut -f 2 -d ' ' >> liste_variables_${myType}_${date_begin_pack}_${date_end_pack}.txt 344 fi 345 done 346 fi 280 347 281 348 if [ ${nbfile} = 0 ] ; then … … 283 350 IGCM_debug_Print 1 "We should have found ${NbPeriodPerFrequency} files" 284 351 IGCM_debug_Print 1 "As some files can be produced only for some selected period we consider we can move to the next file type" 352 date_begin_pack=$( IGCM_date_AddDaysToGregorianDate ${date_end_pack} 1 ) 353 continue 354 fi 355 if [ X${surpack_mode} = Xy ] && [ ${nbfile} = 1 ] ; then 356 IGCM_debug_Print 1 "Only 1 file to pack in surpack mode, nothing to be done" 357 date_begin_pack=$( IGCM_date_AddDaysToGregorianDate ${date_end_pack} 1 ) 285 358 continue 286 359 fi 287 288 360 # Select list of variables to work with 289 361 list_var=$( cat liste_variables_${myType}_${date_begin_pack}_${date_end_pack}.txt | sort | uniq -c | awk -v nbfile=$nbfile '{if ($1 != nbfile) {print $2}}' | paste -s -d ',' ) … … 291 363 # Create packed files 292 364 IGCM_debug_Print 1 "Ncrcat ongoing for ${dir} and ${myType}" 365 if [ X${surpack_mode} = Xn ] ; then 293 366 if [ ! ${nbfile} = ${NbPeriodPerFrequency} ] ; then 367 # if [ ${date_end_pack} -le ${date_end_simulation} ] ; then 294 368 IGCM_debug_Print 1 "Number of files to process is not equal to what it should be" 295 369 IGCM_debug_Print 1 "We found ${nbfile} files and it should have been ${NbPeriodPerFrequency} files" 296 370 IGCM_debug_Exit "ERROR in number of files to process. STOP HERE INCLUDING THE COMPUTING JOB" 297 371 IGCM_debug_Verif_Exit 372 fi 298 373 fi 299 374 output=${JobName}_${date_begin_pack}_${date_end_pack}_${myType} … … 309 384 IGCM_debug_Verif_Exit 310 385 # Save it 386 if [ X${surpack_mode} = Xy ] ; then 387 IGCM_sys_Put_Out ${output} ${R_SAVE}/$( echo $dir | sed "s:${R_SAVE}/::" )/${output} 388 else 311 389 IGCM_sys_Put_Out ${output} ${R_SAVE}/$( echo $dir | sed "s:${R_BUFR}/::" )/${output} 390 fi 312 391 # Clean file produced by ncrcat 313 392 IGCM_sys_Rm ${output} … … 322 401 IGCM_debug_Print 1 "Ncrcat and cleaning done for ${dir} and ${myType}" 323 402 echo 403 # Add 1 day to date_end_pack to have the new date_begin_pack 404 date_begin_pack=$( IGCM_date_AddDaysToGregorianDate ${date_end_pack} 1 ) 324 405 done 325 406 done 326 407 done 327 (( number_pack = number_pack + 1 ))328 # Add 1 day to date_end_pack to have the new date_begin_pack329 date_begin_pack=$( IGCM_date_AddDaysToGregorianDate ${date_end_pack} 1 )330 408 done 331 332 409 # Flush post-processing submission 410 if [ X${surpack_mode} = Xn ] && [ ${StandAlone} = false ] ; then 333 411 if [ -f ${R_BUFR}/FlushPost_${DateEnd}.ksh ] ; then 334 412 . ${R_BUFR}/FlushPost_${DateEnd}.ksh … … 336 414 #IGCM_sys_Rm -f ${R_BUFR}/FlushPost_${DateEnd}.ksh 337 415 fi 338 416 fi 339 417 # Clean RUN_DIR_PATH (necessary for cesium and titane only) 340 418 IGCM_sys_RmRunDir -Rf ${RUN_DIR_PATH} -
branches/libIGCM_pack/libIGCM_comp/libIGCM_comp.ksh
r1580 r1588 245 245 fi 246 246 fi 247 ((i_ = i +1)) 248 eval Testvar_=\${${ListFilesName}[$i_]} > /dev/null 2>&1 249 eval Testvar=${Testvar_} 250 if [[ ${Testvar} =~ [0-9][DMY]$ ]] ; then 251 ((i = i+4)) 252 else 247 253 (( i=i+3 )) 254 fi 248 255 done 249 256 fi … … 1919 1926 fi 1920 1927 fi 1928 ((i_ = i +1)) 1929 eval Testvar_=\${${ListFilesName}[$i_]} > /dev/null 2>&1 1930 eval Testvar=${Testvar_} 1931 if [[ ${Testvar} =~ [0-9][DMY]$ ]] ; then 1932 ((i = i+4)) 1933 else 1921 1934 (( i=i+3 )) 1935 fi 1922 1936 done 1923 1937 fi -
branches/libIGCM_pack/libIGCM_config/libIGCM_config.ksh
r1565 r1588 625 625 Pack=false 626 626 fi 627 # Loop over components 628 for comp in ${config_ListOfComponents[*]} ; do 629 630 IGCM_card_DefineArrayFromOption ${SUBMIT_DIR}/config.card ListOfComponents ${comp} 631 eval compname=\${config_ListOfComponents_${comp}[0]} > /dev/null 2>&1 632 card=${SUBMIT_DIR}/COMP/${compname}.card 633 IGCM_card_DefineArrayFromOption ${card} OutputFiles List 634 ListFilesName=${compname}_OutputFiles_List 635 eval FileName0=\${${ListFilesName}[0]} > /dev/null 2>&1 636 if [ X${FileName0} != X${NULL_STR} ] ; then 637 eval NbFiles=\${#${ListFilesName}[@]} > /dev/null 2>&1 638 639 (( i=0 )) 640 until [ $i -ge $NbFiles ]; do 641 (( i_ = i+3 )) 642 eval Testvar_=\${${ListFilesName}[$i_]} > /dev/null 2>&1 643 eval Testvar=${Testvar_} 644 if [[ ${Testvar} =~ [0-9][DMY]$ ]] ; then 645 IGCM_debug_Print 1 "Check coherence between PackFrequency and specific pack frequencies" 646 DaysTemp1=$( IGCM_date_DaysInPreviousPeriod ${DateBegin} ${Testvar} ) 647 DaysTemp2=$( IGCM_date_DaysInPreviousPeriod ${DateBegin} ${config_Post_PackFrequency} ) 648 if [ ${DaysTemp2} -lt ${DaysTemp1} ] ; then 649 IGCM_debug_Print 1 "PackFrequency in config.card is smaller than the specific pack frequency" 650 IGCM_debug_Print 1 "we found in ${compname}.card" 651 IGCM_debug_Exit "ERROR You have to modify the PackFrequency in config.card to be always greater or equal to specific pack frequencies defined in comp.card" 652 IGCM_debug_Verif_Exit 653 fi 654 ((i = i+4)) 655 else 656 ((i = i+3)) 657 fi 658 done 659 fi 660 done 627 661 628 662 # modulo (TimeSeriesFrequency and all Chunck2D) must be zero -
branches/libIGCM_pack/libIGCM_debug/libIGCM_debug.ksh
r1578 r1588 880 880 case ${postProcessingName} in 881 881 atlas*|monitoring*|metrics*) 882 [ ${postProcessingStopLevel} -gt 2 ] && StopAll=true ;; 882 [ ${postProcessingStopLevel} -gt 2 ] && StopAll=true 883 echo "The job is not a pack job " 884 echo "SO WE DO NOT EXIT THE JOB." 885 echo 886 date 887 ;; 883 888 create_*) 884 [ ${postProcessingStopLevel} -gt 1 ] && StopAll=true ;; 889 [ ${postProcessingStopLevel} -gt 1 ] && StopAll=true 890 echo "The job is not a pack job " 891 echo "SO WE DO NOT EXIT THE JOB." 892 echo 893 date 894 ;; 885 895 rebuild*|pack_*) 886 [ ${postProcessingStopLevel} -gt 0 ] && StopAll=true ;; 896 if [ ${postProcessingStopLevel} -gt 0 ] ; then 897 # Notify the computing job that something wrong happened and stop it. 898 IGCM_card_WriteOption ${SUBMIT_DIR}/run.card Configuration PeriodState "Fatal.${Script_Post_Output}" 899 fi 900 echo " EXIT THE POST-PROCESSING JOB." 901 echo 902 IGCM_debug_CallStack 903 904 # Inform the rabbitMQ queue 905 IGCM_debug_BigBro_Finalize 906 907 # And Good Bye 908 date 909 exit 1 910 ;; 887 911 esac 888 912 # Notify the computing job that something wrong happened and stop it. 889 913 ( ${StopAll} ) && IGCM_card_WriteOption ${SUBMIT_DIR}/run.card Configuration PeriodState "Fatal.${Script_Post_Output}" 890 914 891 # If SpaceName is PROD we stop when post_processing failed892 if [ X${config_UserChoices_SpaceName} = XPROD ] ; then893 echo " EXIT THE POST-PROCESSING JOB."894 echo895 IGCM_debug_CallStack896 897 # Inform the rabbitMQ queue898 IGCM_debug_BigBro_Finalize899 900 # And Good Bye901 date902 exit 1903 else904 echo "In config.card the variable SpaceName is not in PROD"905 echo " SO WE DO NOT EXIT THE JOB."906 echo907 date908 fi909 915 elif [ X${TaskType} = Xchecking ] ; then 910 916 echo "Nothing will happen for now"
Note: See TracChangeset
for help on using the changeset viewer.