Octave is on its way this week. It's time to get ready

November 16, 2023
By Sayan Nandan

Blog post image

Things are always in motion, but the only thing that is constantly in motion is the passage of time. However, it appears as if our blog has defied the physical passage of time, remaining frozen in history.

It has been so long since I last posted here, and that’s because I’ve been so busy with the release. You might have seen numerous messages from me about the release, yet never actually witnessed it. Looking back at the issue tracker on our GitHub repository it appears that the first reference to 0.8 was made over a year ago!

Now, that’s a lot of time! In the meantime, I made several mentions of how we were ‘just about to release it this week’ only to make our community wait even further. So, why the wait and why did it take so long?

Did you notice that I said did and not “is taking?” I hope you did because I’m very happy to let you know that the development on Skytable Octave is complete and *we’re ready to ship this week*.

The reason it took so long is because (as noted elsewhere) the changes that have happened across the codebase are not merely the addition of new actions or a new storage system – it’s a new database. If you’ve used Skytable and have come across some limitations, you’ll immediately realize how big of a change it is to Skytable. This is the very first pivotal landmark change to Skytable, and it sets up the stage for making Skytable incredibly flexible and queryable, while still staying close to our goals of keeping performance at its best.

It has been a lot of work and I’m sure that once I open the pull request this Thursday, you’ll be able to judge it for yourself. The ‘rewrite’, if I may call it that, is essentially a reinvention of the entire database, and we’ve reevaluated everything from scratch, or ground zero.

I won’t give out any spoilers yet because you’ll be able to see things for yourself this week, but I’ll leave some important tips to make the transition to this new world as frictionless as possible.

Preparing for the upgrade

To prepare, I recommend abstracting any calls you make to get, set, and so on.

For example if you directly called set consider putting that inside a function because a lot of good stuff is happening to set; well, that means it’s going to go ;)

A small note on the release

The release, while stringently tuned currently has some memory usage issues due to some extra metadata for each entry; this means that the memory usage could have been better (of course, to start Skytable you just need about 5MB of RAM); the memory usage issues will be attended to and taken care of shortly after the release in a new bugfix release and since all our releases provide backwards compatibility, you wouldn’t need to worry about changing anything at all.

So, let’s get rolling shall we?

Yes! After having worked on this for over a year I’m excited to show you what we’ve built and I’m sure you’re as excited as I am! There’s so much packed in for our users … I really don’t want to give spoilers but there’s a lot to love.

For real-time updates, you can follow our account on X, join our Discord server to chat with community members, or keep an eye on our repository. See you at the release post by Friday (or latest by Sunday?). Goodbye until then!

Last updated on: November 16, 2023
2 min read
Get our source code here
Share this post: