skytable / skytable

Skytable is a modern scalable NoSQL database with BlueQL, designed for performance, scalability and flexibility. Skytable gives you spaces, models, data types, complex collections and more to build powerful experiences

Home Page:https://skytable.io

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

[Octave] Data upgrades from 0.7 to 0.8

ohsayan opened this issue · comments

As noted in several other places, there have been massive changes between 0.7 and 0.8 — so large, that even the most fundamental of things (such as GET and SET) have changed. As expected, the storage engine is completely new, with a new multi-tiered design that has two separate engines under the hood (depending on task requirements).

This means that the previous storage engine will be incompatible with the new one and we'll upgrade the dataset. Now do note that this adds an additional amount of work to do at startup and upgrade failures will lead to unnecessarily complicated workflows.

For now, while I have removed the sky-migrate tool from the binary bundle, do we want to keep the migration tool as a separate tool altogether or do we want to have it integrated inside skyd itself?

Also NB:

From Octave onwards, the storage engine is very standardized and we're quickly moving to have a proper internal spec for the engine which means this shouldn't be an issue from 0.8 onwards (for example 0.8.0 to 0.8.1). It is only in this case that things have changed vastly. (and I mean, changed by orders of magnitude)

I also think that it's actually a far better idea to create an interactive tool since even the data models have changed so we need to interactively ask "Your table definition used (binstr, some_old_type) but that is no longer supported. it is recommended that you change the type to... "

Thoughts?

As there is very less demand for this, I'm closing it. We can revisit in the future if we ever need to. The current SE automatically handles post 0.8 upgrades