Skip to content

Typo in MLproject and wrong comparison in _already_ran (main.py) #1

@cr4zy-C

Description

@cr4zy-C

Hi,
very nice project! I found a typo in the MLproject file (entrypoint: main) that lets the mlflow run command fail:
Typo char ["]
bucket_name" {type:string, default: stock-market-models}
Should be char [:]
bucket_name: {type:string, default: stock-market-models}

In main.py the chaching does not work for me, because in the _already_ran function there are some string, int comparisons.

I found the following:
run_value = full_run.data.params.get(param_key) if run_value != param_value:
run_value stores the value as a string, but param_value stores it as an int -> comparison does not work as expected.
I fixed it for myself with following:
if type(run_value) != type(param_value): param_value = str(param_value)

if run_info.status != RunStatus.FINISHED:
run_info.status stores 'FINISHED' as string, but RunStatus.FINISHED is stored as enum = int -> comparison does not work as expected.
I fixed it with the following:
if run_info.status != RunStatus.to_string(RunStatus.FINISHED):

After these changes the workflow worked for me and it reused the already executed steps correctly.
I ran it with python 3.7.3 I don't know if that caused the problems.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions