visit-dav / visit

VisIt - Visualization and Data Analysis for Mesh-based Scientific Data
https://visit.llnl.gov
BSD 3-Clause "New" or "Revised" License
434 stars 112 forks source link

Better containerization of state to enable users to share everything #4608

Open markcmiller86 opened 4 years ago

markcmiller86 commented 4 years ago

A session file saves a lot of state but not everything. In many cases, what a session file saves is the equivalent of a pointer (e.g. a name) to a resource that is available elsewhere like a color table name in ~/.visit or a database name or a host profile either in one machine's install point but must be tweeked to use on another machine.

We need to be able to containerize (not to be confused with computing containers) all of the state essential for two users to fully share a VisIt session across systems that are not sharing any file systems in common.

markcmiller86 commented 4 years ago

Other possible things to include...

cyrush commented 4 years ago

Think we often have an opposite problem as well - the session file is too specific that the same person cant restore it on another machine without editing it. It would be good to outline a better approach.

I think this is tricky given the web of settings at play. Recall things like host profiles can contain per-user settings that won't work for another user (such as their username, or even banks they have access to)

If we want to make big changes, we might want to start with auditing cases where we need to "save settings" and restart VIsIt, b/c those will be barriers here.

markcmiller86 commented 4 years ago

Maybe paraphrasing @cyrush here but better understanding of private (or maybe user-specific) vs. reproducible state would help here.

JustinPrivitera commented 2 years ago

I believe we decided that color tables should no longer have a home in the session files. This does make it harder to share state, but reduces bloat in the session files.