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

Add SpineInterface and SpineOpt commits to results DB #1003

Open
DillonJ opened this issue May 2, 2024 · 7 comments
Open

Add SpineInterface and SpineOpt commits to results DB #1003

DillonJ opened this issue May 2, 2024 · 7 comments
Assignees

Comments

@DillonJ
Copy link
Collaborator

DillonJ commented May 2, 2024

Often it's difficult to know which version of SpineOpt and SpineInterface was used for a set of old results or for an old model. For example, sometimes we will notice a performance degradation or an old DB doesn't work any more. In these cases it's very valuable to have this information.

It feels like the best solution would be for SpineOpt to write the commit of SpineInterface and SpineOpt that have been used to generate a set of results. Perhaps it could write new parameters (e,g, SpineOpt_Version and SpineInterface_Version the model object under the result altnerative in the output DB. While it's at it, maybe it could write total execution time and other useful information?

@manuelma
Copy link
Collaborator

manuelma commented May 2, 2024

We write it to the log - but we could write them to the DB too.

@DillonJ
Copy link
Collaborator Author

DillonJ commented May 2, 2024

That would be good. Often the log is not saved ad it’s usually actually multiple files and requires manual steps and may or may not have been written at all

@manuelma
Copy link
Collaborator

manuelma commented May 2, 2024

the two are good, because often the model doesn't solve or results are not written but the log is available. It is not very hard to setup and very easy to find the first file.

@manuelma manuelma self-assigned this May 3, 2024
manuelma added a commit that referenced this issue May 7, 2024
@manuelma
Copy link
Collaborator

manuelma commented May 7, 2024

We are now writing versions and elapsed time to a model Map parameter called 'solution_stats'. Please reopen if no good or if more stuff is needed.

@DillonJ
Copy link
Collaborator Author

DillonJ commented May 14, 2024

@manuelma this is really nice. It would be even better if we could include the following (in the case of a Benders Model):

  • Number of benders iterations
  • Benders Gap
  • Objective function value

@manuelma
Copy link
Collaborator

I just added all that @DillonJ - it's very handy indeed.

@manuelma manuelma changed the title Add SpineIterface and SpineOpt commits to results DB Add SpineInterface and SpineOpt commits to results DB May 15, 2024
@DillonJ
Copy link
Collaborator Author

DillonJ commented Jun 19, 2024

Looks like SpineOpt only writes the version and not the commit hash. I think it should write both since we can't be sure the version has been bumped. The commit hash is the only thing we can believe in.

@DillonJ DillonJ reopened this Jun 19, 2024
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

No branches or pull requests

2 participants