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

Procedural Constraints Database Support #1596

Draft
wants to merge 12 commits into
base: develop
Choose a base branch
from

Conversation

skovati
Copy link
Contributor

@skovati skovati commented Nov 8, 2024

closes #1572

Description

Mirroring the database changes that were made for procedural scheduling support, this PR makes the following changes to the constraints sub-schema in merlin:

  • an auto-generated ID invocation_id was added to constraint_specification and made the new (sole) primary key. This allows for multiple "invocations" of that same constraint definition in the same spec.
  • type enum, uploaded_jar_id, and parameter schema fields were added to constraint_definition to support procedural constraints
  • definition was made nullable in constraint_definition, since it will be null when that constraint's source code is contained in the uploaded jar.
  • constraint_run now holds an additional field, constraint_invocation_id, which replaced (constraint_id, constraint_revision) in the primary key definition. This is so we can have a constraint run for each invocation in a plan spec, which might share constraint definitions and revisions.
  • constraint_run also holds the "as run" arguments that were passed to the constraint during execution in a new json field arguments.
  • merlin server was updated to comply with these schema changes
  • e2e tests were updated to comply as well

Verification

WIP

Documentation

Future work

@skovati
Copy link
Contributor Author

skovati commented Nov 8, 2024

Active works in progress:

  • database migrations
  • comments for new tables
  • verification of migrations against real data

@skovati skovati removed the request for review from Mythicaeda November 8, 2024 17:51
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.

DB updates for Procedural Constraints
1 participant