Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat!: multiple performance per task #197

Merged
merged 4 commits into from
May 9, 2023
Merged

Conversation

ThibaultFy
Copy link
Member

@ThibaultFy ThibaultFy commented Apr 20, 2023

Description

Performance asset were unique regarding their compute task key, and the function key they were computed from. Or, we want to have the possibility to have a function that outputs several performance and store them in the same task.

This implies two main things:

  • Performance are now unique regarding the compute task key, the function key AND the output identifier
  • The frontend must serialize regarding the identifier, and not the function key

The PR batch modify both the orchestrator and backend db in order to include the identifier as an additional unique condition.
In the backend, we use the ComputeTaskOutput as primary key directly.

Companion PR

E2E tests

MetricKey: "metricKey",
ComputeTaskKey: "taskKey",
MetricKey: "metricKey",
ComputeTaskOutputIdentifier: "performance",
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why is a ComputeTaskOutputIdentifier named performance?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It is just for the test. Before this PR, the identifier of a test task was always "performance" even if its a variable. But we could change the name if we want

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I feel like it would be more clear if something different was used, to show that we don't have to use the reserved keyword "performance". But that's a subjective opinion.

PerformanceValue: 3.14,
ComputeTaskKey: "taskUuid",
MetricKey: "metricUuid",
ComputeTaskOutputIdentifier: "performance",
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

same as above, wouldn't something like outputIdentifier be more clear?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's just an example of identifier

Copy link
Contributor

@SdgJlbl SdgJlbl left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM but probably worth waiting for the approval of someone who hasn't started learning Go yesterday ^^

Signed-off-by: ThibaultFy <50656860+ThibaultFy@users.noreply.github.com>
Signed-off-by: ThibaultFy <50656860+ThibaultFy@users.noreply.github.com>
Signed-off-by: ThibaultFy <50656860+ThibaultFy@users.noreply.github.com>
Signed-off-by: ThibaultFy <50656860+ThibaultFy@users.noreply.github.com>
Copy link
Collaborator

@guilhem-barthes guilhem-barthes left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@ThibaultFy ThibaultFy merged commit ad7454b into main May 9, 2023
9 checks passed
@ThibaultFy ThibaultFy deleted the feat/several-perf-output branch May 9, 2023 12:38
@Milouu Milouu mentioned this pull request May 11, 2023
Milouu added a commit that referenced this pull request May 15, 2023
## [0.34.0](https://github.com/Substra/orchestrator/releases/tag/0.34.0)
- 2023-05-11

### Changed

- A Performance in now unique regarding a compute task key, a metric key
and a compute task output identifier
([#197](#197))

### Removed

- Metric from Performance
([#213](#213))

Signed-off-by: Milouu <milan.roustan@owkin.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants