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

Phase out HistoryTrackerInterace #792

Open
john-science opened this issue Jul 22, 2022 · 2 comments
Open

Phase out HistoryTrackerInterace #792

john-science opened this issue Jul 22, 2022 · 2 comments
Assignees
Labels
architecture Issues related to big picture system architecture

Comments

@john-science
Copy link
Member

john-science commented Jul 22, 2022

It appears @youngmit already did the bulk of the work to move the functionality people want from the HistoryTrackerInterface into Database3: 38d9feb

This seem preferable, as the data will be more accessible to anyone with a DB. Also, it reduces the complexity of having a whole Interface. On the surface, it seems like this is an easy change to make. The (apparent) steps to take now are:

  1. Ensure that all the important functionality/data from the HistoryTrackerInterface is now in the DB.
  2. Find all downstream projects that use the HistoryTrackerInterface, and switch them to using the DB.
    • There is an equilibrium history tracker subclass downstream.
    • And there is some code in crucible downstream that makes heavy use of it.
@john-science john-science added the architecture Issues related to big picture system architecture label Jul 22, 2022
@ntouran
Copy link
Member

ntouran commented Jul 22, 2022

Yeah so history tracker was originally made before we could read a case's own database during a run for historical info. It saved a subset of state data to ram that it could very quickly bring back as needed. Now that db3 can read itself during a run, it's largely not needed.

The internal equilibrium capability has lots of fanciness that maps an equilibrium cycle's shuffling into full multi-cycle time-dependent histories that must be maintained internally, but that can be done somewhere outside of the history interface.

@john-science
Copy link
Member Author

john-science commented Jul 22, 2022

The internal equilibrium capability has lots of fanciness...

Heck, I could copy/paste all the code they need into their project, if they need more than the "new" DB3 can provide.

@john-science john-science self-assigned this Sep 8, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
architecture Issues related to big picture system architecture
Projects
None yet
Development

No branches or pull requests

2 participants