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

user/program interface for schema upgrades #44

Open
riastradh-probcomp opened this issue Jun 9, 2015 · 2 comments
Open

user/program interface for schema upgrades #44

riastradh-probcomp opened this issue Jun 9, 2015 · 2 comments

Comments

@riastradh-probcomp
Copy link
Contributor

Prior to release, automatically upgrading the schema for databases generated by pre-release versions was OK, because everyone is using the most recent version from Git. Once we release, it will be necessary to make upgrading the database schema an explicit action so that when you use Bayeslite 2.0, you don't break the databases of users who are still on Bayeslite 1.3.

@riastradh-probcomp riastradh-probcomp added this to the public release milestone Jul 3, 2015
@axch axch modified the milestones: public release, public release v2 Aug 7, 2015
@gregory-marton
Copy link
Contributor

Disagree, and recommend wontfix. We should be strongly encouraging upgrading.

Downside of auto-upgrading: This makes collaboration with a given bdb file more difficult, because if one of the group hasn't upgraded, then they get left in the dust, perhaps with a strange error message, or even corruption.
Upside: the only recourse if you wish not to upgrade the bdb is usually not to use the new version of the software. Since the use model (no delete/insert rows) seems to be that we start afresh and re-analyze every time anyway, bdbs should be viewed as "cheap", and backwards compatibility should be a low priority.

@riastradh-probcomp
Copy link
Contributor Author

wontfix? It's already fixed. The only part of my original description that the system does not reflect is that by default we do corrupt bdb files from older versions, to suppress which behaviour you must pass compatible=True to bayesdb_open.

It seems to me that the use model you describe under 'upside' argues even more in favour of not corrupting bdb files from old versions, because after analysis there is no reason not to treat them as read-only. (Right now we don't have any way to open bdb files as actually read-only -- but that's a separate issue which I think we may be unable to address until #92.)

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

3 participants