Tech 2017 Agenda

As usual it’s hard to pick a personal agenda from the wealth of content available for the UKOUG annual conference, but this is my starting list:


13:40 – 14:25 Roger MacNicol: “My query plan says Table Access Full: what happens next ?”

14:40 – 15:30 Gert Poel: “Smart Database Development with PL/SQL and Oracle REST Data Services”

16:10 – 17:00 Kellyn Pot’Vin: “Oracle vs. SQL Server – the War of the Indexes”

17:10 – (more...)

Oracle Week 2017: Docker Concepts for Oracle/MySQL DBAs and DevOps (slides)

Oracle Week in Israel is a reason for celebration. Every year (and for the past 24 years), between a 1500 and 2000 Oracle professional are gathered for a 5 days conference on Oracle related educational topics. Each day is a full-day seminar on a specific topic – 9am to 4:30pm talking about something related to Oracle technologies. This year, I had 4 full-day back-to-back seminars – which is way more than the average speaker. Some (more...)

Last Week in Stream Processing & Analytics – 27.11.2017

This is the 92nd edition of my blog series blog series around Stream Processing and Analytics!

As every week I was also updating the following two lists with the presentations/videos of the current week:

As usual, find below the new blog articles, presentations, videos and software releases from last week:

News and Blog Posts


Apache Kafka / Kafka (more...)

JET 4.1.0 Composite – List Item Action and Defferred Loading

I was reviewing JET 4.1.0 features and decided to build simple composite component. Would like to share some of the items I learned.

Composite component comes with collapsible UI and action link, it implements list item, which can be rendered in any kind of parent UI container:

When item is expanded, more info is displayed:

Once user clicks on Open link, JS call is made and key from current item is printed in (more...)

Jarvis Pizzeria: Different presentations for the same WebForm

| Nov 27, 2017
In a previous blog we created a default WebForm for the Pizza Preparation process. In each human interaction of the process we used this default WebForm with the default presentation. In this post we will create a different presentation for each human interaction in the process.
  1. Crust Preparation Will only show the pizza name and size. Both fields are editable.
  2. Filling the Pizza Shows alle data. The pizza name and size are read-only. The ingredients (more...)

Oracle 12c on Fedora 27

As always, I have to start with a warning.

With that out of the way…

Fedora 27 has been out for a couple of weeks now, but I’ve not really been able to do anything with it because I couldn’t get it installed on VirtualBox. I finally managed to get the installation to work, provided I used the Live DVD when I was running VirtualBox on (more...)

How to add a metric extension and use a ‘control’ table to test results

I have previously blogged about creating a User Defined Metric (UDM) before  (7 years ago!)  but the method I am using today demonstrates how you can test out the alert using specific data.

The aim was to see if integration data is flowing through a table.  If there is a backlog we want to know about it.

Simon Ryan, a colleague did all the preparatory work and created all the 18 !! screen shots (more...)

RMAN Backup To FRA Repercussions

Common advice is to backup to FRA.
Before following advice, evaluate to determine fit and understand any repercussions.
Doesn’t this potentially create SPOF and may require backup from tape unnecessarily?


Make sure the following commands are part of backup when backup to FRA.



Recovery Manager: Release - Production on Sun Nov 26 16:02:17  (more...)

Docker-CE: Creating a small Linux as base OS for running a Docker cluster

After some first steps with docker i wanted to run more than one docker node. The problem is, that i have very limited resources on my laptop.
  • CoreOS (see here)
    consumes about 600MB diskspace
  • UbuntuCore (see here)
    consumes about 1.9GB diskspace
To setup CoreOS you have to learn ignition - otherwise every change is lost after a reboot. For UbuntuCore you have to use an UbuntuOne account to get it running.

I (more...)

VirtualBox 5.2.2

VirtualBox 5.2.2 has been released.

The downloads and changelog are in the usual places.

I’ve done the installation on my Windows 7 PC at work, macOS High Sierra and Oracle Linux 7 and all worked fine.

For some reason the automatic download of the extension pack failed on all platforms. I just downloaded it manually and installed it and it was OK.

I was hoping this would solve the problem I have with (more...)


| Nov 24, 2017
This spells out the Oracle Developer Community Asia-Pacific ACE Director Tour 2017, thankfully we can put a lot of abbreviations in there, because that is a long name. So I went on the ODC APAC ACED Tour 2017, altho I only did one third of it, I visited both New Zealand and Australia. Being in the great company of Debra Lilley, we travelled to Wellington, Auckland & Sydney, to spread the word about the (more...)

nVision Performance Tuning: 9. Using Compression without the Advanced Compression Licence

This blog post is part of a series that discusses how to get optimal performance from PeopleSoft nVision reporting as used in General Ledger.

Table compression can significantly decrease the size of tables and reduce the volume of I/O required to retrieve data.  Compression of the ledger, ledger budget, and summary ledger tables can significantly improve the performance of scans in nVision.
The Advanced Compression licence enables compression features to be used where segments are still updated (more...)

BPM BAC Subversion Server refusing connections Revised

A little background

In April I wrote about our BPM Server installation, that is actually a single host cluster on dev and test. But installed like it was a dual-node  server, so we had a cloned domain.

A BPM installation has a component that is called the Process Asset Manager. Under the hood it uses a replicated SubVersion server. Each node has one, so they had to synchronize. But since we're on the same host, (more...)

Friday Philosophy – Doing DOAG (& a Little, Light, Hem-Touching)

This week I’ve been at annual DOAG conference. DOAG is the German (Deutsch) Oracle User Group annual conference. It’s my second time there and I very much enjoyed it, meeting lots of people & seeing some great talks. I also got a request to do more Friday Philosophies, so…

DOAG is now the biggest Oracle User Group conference in Europe, it overtook the UKOUG conference a few years back. Do I see this as “competition”? (more...)

DBA vacancy Bradford, West Yorkshire

I have a vacancy in my team and the details are in the link below–database.html

Lots of interesting work going including 85Tb Data Warehouse on Exadata and developing Cloud capability using AWS and Google.


Oracle issues after upgrade to 12.2

Sometimes it’s really hard even to create reproducible test case to send it to oracle support, especially in case of intermittent errors.
In such cases, I think it would be really great to have access to similar service requests or bugs of other oracle clients.
So while my poll about knowledge sharing is still active, I want to share a couple of bugs we have faced after upgrade to 12.2 (and one bug from (more...)

Docker-CE: Get Started Tutorial – processes / files / HTTP headers

Inside my docker installation on ubuntu server i performed the official docker tutorial part 2: "containers"

Ok. Not really interesting, because the tutorial describes all steps very well (except the point, that you have to install python3-pip and you have to run pip3 and not pip).

Here the interesting part:

After i started the container ("docker run -p 4000:80 friendlyhello") i got the following:
root@ubuntuserver:/var/lib/docker/image# docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS                  (more...)

rman checksyntax not reliable

There is no syntax error reported but backup will fail.
Can you spot where the error is at?

[oracle@racnode-dc1-1 backup]$ rman checksyntax @ bkupinc0.rman

Recovery Manager: Release - Production on Thu Nov 23 17:14:31 2017

Copyright (c) 1982, 2014, Oracle and/or its affiliates.  All rights reserved.

RMAN> connect target;
2> set echo on
3> set command id to "LEVEL0";
4> show all;
5> run {
6> set controlfile autobackup  (more...)

TensorFlow – Getting Started with Docker Container and Jupyter Notebook

I'm studying Machine Learning and would like to share some intro experience working with TensorFlow. To get started with TensorFlow you need to install it, easiest way (at least for me) was to run TensorFlow using Docker. Read installation instructions - Installing TensorFlow.

Once TensorFlow Docker image is installed. I suggest to create container in detach mode (--detach=true) and provide port for Jupyter UI. Make sure to provide meaningful name for Docker container:

docker run (more...)

Using a hardware token to log on to linux

PKI/hardware tokens are now quite a commonplace accessory in the IT workplace and are generally used to enable VPN connectivity to the office or to sign or encrypt emails. I knew they could be used to authenticate server (and even database access) but this always sounded like it was a very complex thing to do and would only ever really be appropriate in government/defence type use cases where even higher levels of access control are (more...)