APEX 19.2 : Vagrant and Docker Builds

I’m sure anyone who cares knows that APEX 19.2 was officially released on Friday. I did an upgrade of one of our development instances straight away and it worked fine. it’s subsequently gone to a bunch of other development instances. I’ll be pushing to get this out to production as quickly as possible.

Over the weekend I worked through a bunch of my GitHub stuff.

Vagrant : I’ve updated all my Vagrant builds to use APEX 19.2 and the latest versions of Tomcat 9 and OpenJDK 11. I was using newer versions of OpenJDK, but it seemed a bit silly, so I reverted back to the long term support release. I tried updating the base box to ‘bento/oracle-7.7’, but it kept giving me timeouts, so I’ve reverted back to ‘bento/oracle-7.6’ for the moment.

Docker : Same as above, I’ve updated all my Docker builds to use APEX 19.2 and the latest versions of Tomcat 9 and OpenJDK 11. I noticed oraclelinux:8-slim was behaving a little strangely. I thought it was a PATH issue, but I need to spend some time to understand what is happening. It seems you can’t run basic commands like dnf during the build phase. It’s probably something stupid I’m doing, but for now I’ve switched from oraclelinux:8-slim to oraclelinux:8. Just making that switch made everything work as expected.

My Docker builds within the company have gone through a similar process, so as I’m rolling out APEX 19.2 to the databases, I’m also switching the ORDS containers over to the new images. You gotta love containers!

I guess I’ll be working through all this again when the next version of ORDS and SQLcl drop. 🙂

Cheers

Tim…

APEX 19.2 Download Available

Yesterday evening Hildo Haenen tweeted that the APEX 19.2 download was available. You had to use the direct file URL and you had to have agreed to the license agreement on another download, as pointed out by Markus Hohloch, for the URL to work, but you could get the software. Of course, I wouldn’t dream of doing such a thing (I totally did…).

Today it seems the download page has been updated and you can get hold of the software in the normal way.

Happy installing/upgrading folks!

Cheers

Tim…

Update: Some people may still see the download page as a 19.1 download. I guess it’s just a matter of waiting for the CDN in your region to update…

PS. First upgrade done… 🙂

“Thank you for installing Oracle Application Express 19.2.0.00.18”

PPS. Joel Kallman just made the official announcement here.

Video : Vagrant : Oracle Database Build (19c on OL8)

Today’s video is an example of using Vagrant to perform an Oracle database build.

In this example I was using Oracle 19c on Oracle Linux 8. It also installs APEX 19.1, ORDS 19.2, SQLcl 19.2, with ORDS running on Tomcat 9 and OpenJDK 12.

If you’re new to Vagrant, there is an introduction video here. There’s also an article if you prefer to read that.

If you want to play around with some of my other Vagrant builds, you can find them here.

If you want to read about some of the individual pieces that make up this build, you can find them here.

The star of today’s video is Noel Portugal. It’s been far too long since I’ve seen you dude!

Cheers

Tim…

APEX 19.1 Upgrades : My Experience

With the exception of one application, which is taking a little longer to test, we’ve upgraded all our APEX installations to APEX 19.1.

I thought it would be good to share my experience of this, in case anyone is a little on the cautious side. 🙂

The vast majority of upgrades went fine. We just did the standard upgrade (install), without trying to minimise the downtime at all.

I should spend some time playing with the method for reducing downtime, but it’s hard to justify when the downtime is already short and acceptable. 🙂

One group of databases did prove problematic. It has done for previous upgrades also. The upgrades failed and I had to uninstall APEX, do a little bit of cleanup (dropping users), install it again, recreate the workspaces and redeploy the applications. It was a pain in the ass, but not difficult or time consuming. I have no idea why they failed, but as I said, it’s not the first time that has happened for this group of instances. If I had more time to play with it I’m sure I could find out, but as I know a reinstall fixes it, and time is an issue, you know what I’m going to do. Just run the scripts and move on…

As far as the applications themselves, there were no dramas. We try to keep things simple and most things are pretty vanilla, so it’s not like we are pushing any boundaries, which will expose anything. 🙂

I’ve seen some people have had problems with APEX 19.1 when it’s fronted by Apache and Nginx reverse proxies. We’ve got a mix of ORDS on Tomcat, and some things still using mod_plsql (don’t judge me 🙂 ) on OHS. This is all fronted by F5 Big IP load balancers as the reverse proxy, and we’ve not had any of those issues. 🙂

So all in all, pretty easy and what I was expecting.

Cheers

Tim…

PS. As always, I feel the need to point out we are a relatively small user of APEX, but it’s growing. Having said that, it’s installed on almost all of our Oracle databases. Added to that, I’m really aggressive about APEX upgrades, and will be even more so when the last of our systems move over to ORDS. Others may want to exercise a little more caution than me. 🙂

APEX 19.1, Vagrant and Docker

Last night Joel Kallman announced the release of APEX 19.1.

It wasn’t exactly a surprise as the APEX 19.1 Early Adopter site was shutdown and there was a maintenance window on apex.oracle.com, which is running APEX 19.1.

I downloaded the 19.1 software and plugged though my Vagrant and Docker stuff bringing it up to date. If you are into that stuff you can find it on my GitHub.

I guess this means I can start the process of upgrading everything at work on Monday. 🙂

Cheers

Tim…

Oracle Application Express (APEX) 18.2 : Upgrades Complete

A few days ago Joel Kallman announced the release of Oracle Application Express (APEX) 18.2.

In a previous post I mentioned the updates to my Vagrant builds to include this version, as well as updates of Tomcat and Java. I’ve subsequently done the updates for APEX 18.2 on Docker too. If you are interested you can see them here.

In addition to this we’ve rolled APEX 18.2 out at work. We already had some installations of APEX 18.1, but many were stuck on version 5.1.4 because of time constraints. Now everything is up to APEX 18.2. We still have a range of database versions (11.2, 12.1, 12.2 and soon to be 18c) at work, and it’s worked fine on all of them.

I spied a couple of people asking about the upgrade process. There’s no difference to previous versions. In the past, if one of the first two numbers change you do a regular install. If it’s not one of those major version changes you download the patch from MOS and apply it. Since this is a major version number change, I installed it in the normal way and everything was fine. I’m not sure how this will work going forward, as I suspect all releases will start to use the new version format, so does that mean every release from now on will be an “install”, not a “patch”? (see update) Someone has probably discussed this already and I missed it. 🙂

I only have one little gripe about the upgrades, which is I have to run an ORDS Validate once it’s complete to make sure ORDS is working fine. It would be really nice if APEX could fix whatever gets broken in ORDS, so I don’t have to do it. It’s just one less step to do… 🙂

Happy upgrading…

Cheers

Tim…

Update: The subject of install vs. patch was raised at OpenWorld 2018. I sounds like the current plan is to get rid of patches and take the install approach each time. The APEX team are working on reducing the downtime associated with the upgrades…

APEX 18.1 Docker Builds Updated

You’ve probably seen that APEX 18.1 was released recently. This is just a quick note to say I’ve updated my Docker builds to include the latest versions of all the software including APEX. You can find the builds here.

https://github.com/oraclebase/dockerfiles

I always install APEX into every database, so the database builds include APEX and the ORDS build includes the APEX images.

Remember, I’m not saying you should use these, but if you like to play around with Docker you might find them useful, along with my Docker articles here.

Regardless of how you like to use APEX, get on board with APEX 18.1… 🙂

Cheers

Tim…

Hey DBA, install/update APEX!

I recently got a question about APEX, which in itself is kind-of funny as it’s a case of the blind leading the blind, but as a result of that question it became apparent the poster was running a very old version of APEX. My first reaction was “Dude, you really need to upgrade!”. It was at that point I was hit with a line I’ve heard a lot over the years.

“Our DBA(s) won’t install/upgrade APEX!”

This gets on my nerves for a few reasons.

  • APEX is a free (no cost option?) tool. Why would you not take advantage of it if it fits your purpose?
  • Even if you don’t want to use APEX directly, it comes with some useful code. I use the APEX_JSON and APEX_WEB_SERVICE packages all the time from PL/SQL. Why would you hinder your PL/SQL developers by not giving them access to useful stuff?
  • If you already have APEX installed, why would you possibly think it is good to run an old version? Like any other piece of software the upgrades include bug fixes, not just new functionality. Are you really happy about running with un-patched functionality?
  • Of course the newer versions have improved functionality, which is just nice to have. 🙂

I guess I can kind-of understand companies/people who don’t want to install an extra product into the database as it’s another thing to manage, but I really don’t understand people running old versions. I see nothing but disadvantages in that…

So back to the title of this post, “Hey DBA, install/upgrade APEX!”

Cheers

Tim…

Oracle Application Express (APEX) 5.1.1 : Live on Production Systems

I wrote a post a couple of weeks ago about our roll-out of APEX 5.1.1 to our Dev and Test systems. In that post I said we would probably go live pretty quickly. I intended to write a quick post to say when it happened, then promptly forgot… 🙂

Just a quick note to say there were no issues found in our Dev and Test systems, so we quickly moved it out to production. I think it was less than a week from start to finish.

As always I feel the need to point out that our usage of APEX is quite basic. We don’t have loads of applications and the ones we have aren’t super complex, so it’s pretty easy for us to quickly get some confidence in a new release. I’m not suggesting heavy APEX users should be quite as rapid as us. That said, I think it’s nice to let people know that this stuff does do what it’s meant to. 🙂

We now have 5.1.1 in all our production systems. Happy days!

Cheers

Tim…

Oracle Application Express (APEX) 5.1.1

I read Joel Kallman’s post this morning announcing the release of APEX 5.1.1. We’ve got APEX 5.1 across the board, so I downloaded patch 25341386 from MOS, as instructed, and went to work patching stuff.

The patching was just like every other patch I’ve done for APEX (see here), super easy. 🙂

I thought there was a problem with the APEX images, but it turned out I was a donkey and I’d copied the images to the wrong directory on one of the app servers. 🙂

We now have APEX 5.1.1 on all Dev and Test systems. It went so well I’ll probably push it to production really soon. Happy days. 🙂

Cheers

Tim…