creamy-stone-99746
08/06/2024, 4:19 PMd0a3e13ca27571df018ab89ed0b6dd649ffca3a8 (4f335769efbc1faf587e200c9eedb0926730dd43)
Then the sub flow (using Runner) the kubernetes steps also try and use d0a3e13ca27571df018ab89ed0b6dd649ffca3a8 (4f335769efbc1faf587e200c9eedb0926730dd43)
The parent flow uses `pypi_base`and the subflow uses conda_base
If I don't use pypi_base
on the parent flow it works as expected
Thanks for any help π
I've attached a more detailed log.square-wire-39606
08/06/2024, 4:22 PMcreamy-stone-99746
08/06/2024, 4:43 PMdry-beach-38304
08/06/2024, 6:21 PM@environment
.
Could you also let me know what the command line for that step (the one that runs on kube) is. I suspect that somehow the value is getting passed badly there.
To make sure I parsed the log properly, you are starting a new flow SlideToTIFF
in the slide_conversion
step of the previous flow. For that new flow, the start
step runs locally using bac099b8ef09ba99f32812140d85680ca66ecc56 (a2271166301c8d4332566033673762770b78f643)
as well as isyntax_formats
and general_formats
(also using the same environment). Then, the issue is process_isyntax
which should run on kubernetes and tries to use the original environment.
Can you also let me know what the bacβ¦
environment is?creamy-stone-99746
08/06/2024, 8:21 PMMETAFLOW_DEBUG_CONDA=1
set. I also had the sub flow output the debug. I've attached the log
The bac
environment is
{
"pandas": "2.2.0",
"pydantic": "2.6.1",
"pyjson5": "1.6.6",
"kubernetes": "29.0.0",
"metaflow": "2.12.8",
"metaflow-netflixext": "1.2.1",
}
dry-beach-38304
08/06/2024, 11:23 PMcreamy-stone-99746
08/07/2024, 1:46 AMdry-beach-38304
08/07/2024, 2:20 AMcreamy-stone-99746
08/07/2024, 4:15 PMbash ββ -c β
β ${METAFLOW_INIT_SCRIPT:+eval "${METAFLOW_INIT_SCRIPT}"} && true && mkdir -p $PWD/.logs && export PYTHONUNBUFFERED=x MF_PATHSPE ββ C=SlideToTIFF/1907/process_isyntax/24344 MF_DATASTORE=s3 MF_ATTEMPT=0 MFLOG_STDOUT=$PWD/.logs/mflog_stdout MFLOG_STDERR=$PWD/.logs/m β
β flog_stderr && mflog(){ T=$(date -u -Ins|tr , .); echo "[MFLOG|0|${T:0:26}Z|task|$T]$1" >> $MFLOG_STDOUT; echo $1; } && mflog 'Sett ββ ing up task environment.' && python -m pip install requests -qqq && python -m pip install awscli boto3 -qqq && mkdir metaflow && cd β
β metaflow && mkdir .metaflow && i=0; while [ $i -le 5 ]; do mflog 'Downloading code package...'; python -m awscli ${METAFLOW_S3_ENDPO ββ INT_URL:+--endpoint-url="${METAFLOW_S3_ENDPOINT_URL}"} s3 cp <s3://metaflows3qjr8flmt/metaflow/SlideToTIFF/data/2c/2cea2b077df8913c79> β
β 0d8d9c6329e479ff055b47 job.tar >/dev/null && mflog 'Code package downloaded.' && break; sleep 10; i=$((i+1)); done && if [ $i -gt 5 ββ ]; then mflog 'Failed to download code package from <s3://metaflows3qjr8flmt/metaflow/SlideToTIFF/data/2c/2cea2b077df8913c790d8d9c632> β
β 9e479ff055b47 after 6 tries. Exiting...' && exit 1; fi && TAR_OPTIONS='--warning=no-timestamp' tar xf job.tar && mflog 'Task is star ββ ting.' && (export CONDA_START=$(date +%s) && echo 'Bootstrapping environment ...' && python -m metaflow_extensions.netflix_ext.plugi β
β ns.conda.remote_bootstrap SlideToTIFF process_isyntax d0a3e13ca27571df018ab89ed0b6dd649ffca3a8 4f335769efbc1faf587e200c9eedb0926730d ββ d43 s3 && export _METAFLOW_CONDA_ENV=$(cat _env_id) && export PYTHONPATH=$(pwd)/_escape_trampolines:$(printenv PYTHONPATH) && if [[ β
β -n $(printenv LD_LIBRARY_PATH) ]]; then export MF_ORIG_LD_LIBRARY_PATH=$(printenv LD_LIBRARY_PATH); export LD_LIBRARY_PATH=$(cat _en ββ v_path)/lib:$(printenv LD_LIBRARY_PATH); fi && echo 'Environment bootstrapped.' && export CONDA_END=$(date +%s) && ./__conda_python β
β -u slide_to_tiff.py --quiet --metadata service --environment conda --datastore s3 --event-logger nullSidecarLogger --monitor nullSid ββ ecarMonitor --datastore-root <s3://metaflows3qjr8flmt/metaflow> --with conda_env_internal --package-suffixes .py,.R,.RDS --pylint step β
β process_isyntax --run-id 1907 --task-id 24344 --input-paths ${METAFLOW_INPUT_PATHS_0} --split-index 0 --retry-count 0 --max-user-co ββ de-retries 0 --tag ProductionPipelineFlow/1906 --namespace user:mikebentleymills) 1>> >(python -m metaflow.mflog.tee task $MFLOG_STD β
β OUT) 2>> >(python -m metaflow.mflog.tee task $MFLOG_STDERR >&2); c=$?; python -m metaflow.mflog.save_logs; exit $c
creamy-stone-99746
08/07/2024, 4:25 PM@conda(disable=True)
decorator. Other steps that don't use this custom image work as expected.
@catch(var="slide_failed")
@conda(disabled=True) # Need to override conda environment and use the custom image below.
@kubernetes(cpu=16, memory=96000, image="317761725162.dkr.ecr.us-west-1.amazonaws.com/valar-isyntax:latest")
@step
If I remove @conda(disable=True)
the step runs but tries to use a conda environment on a custom image, which causes issues.dry-beach-38304
08/07/2024, 4:43 PMcreamy-stone-99746
08/07/2024, 5:15 PM@conda(disable=True)
it does appear that it's loading the expected environment. I need it not to do that and just use the docker images environment.dry-beach-38304
08/07/2024, 8:31 PMcreamy-stone-99746
08/07/2024, 8:48 PMdry-beach-38304
08/09/2024, 12:31 AMcreamy-stone-99746
08/12/2024, 6:18 PMdry-beach-38304
08/12/2024, 6:18 PMcreamy-stone-99746
08/12/2024, 6:19 PMcreamy-stone-99746
08/12/2024, 6:19 PMdry-beach-38304
08/13/2024, 6:58 PMcreamy-stone-99746
08/14/2024, 5:29 PMdry-beach-38304
08/14/2024, 6:02 PM