Long Term Releases, Innovation Releases and Preview Releases?

I feel like this has been said a lot over the last year or so, but I still keep getting questions about it, so I’ll chip in.

Before we jump into it, the first place you should be looking for release information is this MOS note.

Release Schedule of Current Database Releases (Doc ID 742060.1)

With that in mind, here we go…

Long Term Releases (Long Term Support Releases)

I prefer the name Long Term Support (LTS) Releases, as that is really what they’re all about.

The important point here is you get 5 years of Premier Support followed by 3 years of Extended Support. This will be a more manageable upgrade cycle for a lot of companies. I can see many companies just jumping between long term releases and never venturing near an innovation release.

Oracle database 19c is a long term release. The next one is scheduled to be 23c.

Innovation Releases

An innovation release gives you the bleeding-edge functionality in the Oracle database. Oracle call it leading-edge. I’m sticking with bleeding-edge.

The main thing here is you only get 2 years of Premier Support and no extended support. If you go this route you are committing to a quicker upgrade cycle. In practice, this really means yearly as far as I’m concerned. That’s not the sort of commitment I expect many companies to make.

Oracle database 21c is an innovation release, so I don’t expect many people will actually get to use it in their production systems. That’s not to say they shouldn’t, just that it may not be practical from a resourcing perspective in their company.

What I can see happening is a company will avoid innovation releases unless there is a killer feature they need now, which makes them willing to accept the regular upgrade cycle until that feature makes it into the next long term release. That might mean most databases in their estate are on long term releases, but a couple of databases are using innovation releases.

When you’re reading articles and blog posts about features in innovation releases, just remember you may not get to use them in production for quite some time, unless they are backported to the previous long term release.

Preview Releases

This is not a “planned thing”. I don’t think we expect to see preview-only releases in future. Oracle database 20c was available in preview on Oracle Cloud, but the crazy times of 2020 meant it never made it to general availability. Instead we jumped straight to 21c, as if 20c never happened. As a result, many of the new features in 21c, were originally intended to be new features in 20c.

Once again, I think the 20c issue has been discussed a lot of times, but I still get questions about what happened to 20c. 🙂

What You Should Do

At minimum you should be trying to get all your databases to 19c. You can then stay there until 23c is released, which will be your next big push.

If your company can cope with a quicker upgrade cycle, and if there is a compelling reason to do so, you can consider innovation releases. If you use an innovation release, don’t blame Oracle about the lack of long term support. You should know what you are getting into.

Regardless of what your company is doing, still try and keep on top of the new features. The more you know now, the easier the transition will be when the new release does become available to you, whether you’re a developer, DBA or both.

You can play with Oracle database 21c, and future releases, from your Oracle Cloud Free Tier account. Free is a really good price. 🙂



Video : Long Identifiers in Oracle Database 12.2 Onward

In today’s video we’ll quickly demonstrate long identifiers, introduced in Oracle database 12.2.

The video is based on this article.

I was moved to make this because I saw someone on Twitter complaining about the 30 character limit in Oracle. I figured they were probably using an old version of the database, but that’s their fault. A short video was convenient, as I was working this weekend, and didn’t have much free time. 🙂

The star of today’s video is Marcelle Kaye, in honour of her recent birthday. Hopefully we will get to meet up again one day…



VirtualBox 6.1.18

VirtualBox 6.1.18 has been released.

The downloads and changelog are in the usual places.

I’ve installed it on Windows 10, macOS Big Sur and Oracle Linux 7 hosts with no problems.

I’ll be running new Packer builds for the oraclebase/oracle-7 and oraclebase/oracle-8 vagrant boxes, so they should appear with the new version of the guest additions over the next day or so.




Vagrant and Docker Builds: ORDS 20.4, SQLcl 20.4 and Database Patches

The January Oracle quarterly patches were released yesterday, which prompted me to do some new builds.

We got Oracle REST Data Services (ORDS) 20.4 and SQLcl 20.4, which I use in a number of my Vagrant and Docker builds, so I updated them and ran some builds.

The Vagrant database builds, which include ORDS, can be found here.

The Docker ORDS builds can be found here.

I also updated Tomcat to 9.0.41 and OpenJDK to 11.0.10_9 from AdoptOpenJDK.

Once I finished those I decided to try out the Oracle database 19c (19.10) OJVM+DB combo patch on a single instance build. That went fine. You can see that build here.

Since that went OK, I figured it was worth trying to update my OL8 19c RAC build with the 19.10 OJVM+GI combo patch. That also went fine. You can see that build there.

I wasn’t really expecting to cover so much ground so quickly, but that’s the great thing about automation. 🙂

Tomorrow I’ve got to start putting together all the patch scripts for work. It’s always a bit tedious because I have to deal with a lot more products and variations, and I have to make sure I don’t screw up. Happy patching… 🙂



PS. If you are interesting in ORDS, SQLcl, Vagrant or Docker, these might help.

APEX Application Development Service on Oracle Cloud

A few days ago Oracle announced the APEX Application Development Service on Oracle Cloud.

I had a sneak peak of this service last October. I’ve used APEX since it was know as Project Marvel, but despite this I’m renowned as the worst APEX developer on the planet. I think I was invited as a control subject… 🙂

The main thing I’m expecting from any platform is it must be as “administration free” as possible. APEX is a low-code development tool. Some APEX developers will have a lot of database administration skills, but some will not. I wanted to see a service that got people up and developing safely, with as little administration fuss as possible. I think that’s what Oracle have delivered, which makes me really happy.

These new APEX instances are built on Autonomous Transaction Processing (ATP) instances, with some of the functionality disabled. There is a simpler route to create them using the “APEX Application Development > APEX Instances” menu, but you can create them through the normal Autonomous Database creation screens also.

Existing ATP instances can be accessed through the simplified interface, which is a nice touch.

I did my own run through of setting up an APEX instance here. I’m not going to talk much about the service, because there are lots of great APEX bloggers that are a better source of information than me. Make sure you check them out!

Happy APEXing!



Video : JSON Data Type in Oracle Database 21c

In today’s video we demonstrate the JSON data type, introduced in Oracle database 21c.

The video is based on this article.

It assumes knowledge of existing JSON support in the Oracle database. If you are not familiar with the functionality Oracle have been including in the database since Oracle 12c, you might want to check out these.

The star of today’s video is my sister-in-law Maria Colgan. As if being related to me by marriage is not enough of a claim to fame, she is also the current reigning queen of the Oracle database. Long live the Queen!



Oracle Database 21c : It’s New to Everyone

A few days ago Oracle made the official announcement about the release of Oracle database 21c (here). This was a rather late announcement, as the product has been available on Oracle Cloud for over a month, but that’s not the subject of this post.

With each new release I feel the need to write a post like this, so here goes…


This is a new product, so there will be a lot of people in the community writing content about it, including me. The one thing common to all those people, including me, is none of us have any real experience of this version of the database. Very few, if any, will use this version in anger for a real production system for quite some time, if ever (see innovation release). Does that mean you should ignore the content being produced at the moment? No. You just have to understand that everyone is a newbie at the moment. It will take some time for people to not only understand the basics of the functionality, but also get a feel for its relevance in the real world. Just keep that in mind.

But what about the people that were using the new features in the 20c preview release on the cloud for a year? Yep. They are all beginners too. The preview release of 20c never became generally available, so nobody got something I would consider “production experience” on that release. Even the folks at Oracle don’t have significant production experience of 21c yet. It’s only been a month. Many of the 21c new features were initially showcased in the 20c preview, but things have changed since then, so it’s likely articles you are reading that were based on 20c are out of date and need revision.

I’m not saying all this to be negative. I guess part of it is a self-protection mechanism. People will be producing content now, and as they get more experience they will hopefully revise that content to reflect their current understanding. Don’t expect to find any 21c gurus for a long time… 🙂

When will we get 21c on-prem?

The current cloud-first release of 21c is 21.1. That will bump up to 21.2 with the January patches, and 21.3 with the April patches. If we look at what happened for 18c and 19c, both were released on-prem at version X.3 some time after the release of the April patches. It’s a fair guess to say something similar will happen for 21c.

Going back to the “production experience” argument, many people won’t even start their learning experience of 21c until the on-prem version drops, even though you can get a free-tier version of 21c on Oracle Cloud today!

21c is an innovation release

Another thing to consider is 21c is an innovation release. Many people will never use this version of the database. Instead they will wait for the next long term support (LTS) release, which is likely to be Oracle 23c. Many companies can’t cope with a yearly release cycle, and will prefer to jump between LTS releases. That means you could be on 19c for another 2.5 years before you get an opportunity to move to the next on-prem LTS release. In that time features we are writing about today may have evolved substantially.

Does that mean there’s no point learning about 21c now? No. The more you know about what’s coming, the more you can prepare for it. There will be a lot to learn between 19c and 23c, so it’s better to gradually soak it up as you go along. You may also see something that makes the jump to 21c worthwhile for a specific project. I know at least one project at work that will benefit from being at 21c ASAP.

19c is where you need to be now!

Your immediate focus should be to get all your systems on to 19c, and get them all migrated to the multitentant architecture. The non-CDB architecture was deprecated in, and is desupported (that means gone) in 21c onward. If you don’t get used to the multitenant architecture now, you are going to make life really hard for yourself when you move to 23c for long term support.

Now is the time to act.

Every upgrade is potentially unique, but I have some upgrade articles that might help.

If you are new to the multitenant architecture, I’ve written a lot about it, and have a playlist on my YouTube channel.

What next?

Get playing with 21c. Learn what you love. Avoid what you dislike. Most of all, make as much noise as possible, but try to keep it constructive. Most companies are a bit short sighted where their own products are concerned. They need external people to shake them out of their navel-gazing from time to time. That’s true of Oracle as well. My first few 21c articles have resulted in people from Oracle contacting me, then raising bugs/enhancements. There are plenty of people inside Oracle who want to engage and make their products better. Help them help us!



Video : Virtual Columns in Oracle Database 11g Onward

In today’s video we’ll demonstrate how to use virtual columns, introduced in Oracle 11g.

The video is based on this article.

The star of today’s video is Scott Wesley of APEX fame. I think he’s into gardening too, because he has a blog about grass or something… 🙂