When 2 Queries Are Better Than 1

A general rule of thumb with queries in Oracle is to use just one query when you can and leave it to the Optimizer to work out the best possible execution plan i.e. decomposing one query into multiple separate queries can end up making the database do more work than it needs to. I came across a case the past week where the opposite was true - making Oracle do separate "smaller" queries was (more...)

Better Oracle JET Code Structuring with Your Own Modules – Part II

You can end up into long lines of JavaScript code when implementing more complex use cases in JET. This will complicate maintenance and make code hardly readable. To prevent this - plan code structure carefully and use your own modules. Structure code into different modules - to reuse common code across multiple use cases.

Check my JET/ADF BC sample available on GitHub - jetcrud. This sample implements one common module - Customer Controller. Module is (more...)

Did You Know #16 – Package Permissions

When user A creates a procedure and grants execute permissions to user B, user B can execute the procedure (obviously), but he can also see the code (in ALL_SOURCE view). With packages this scenario is a little bit different. When user A creates a package and grants execute permission to user B, user B will … Continue reading Did You Know #16 – Package Permissions

Why oh Why Do Will Still Not Have a Fast Bulk “SQL*Unloader” Facility?

Way back in 2004 I was working at the UK side of the Human Genome project. We were creating a massive store of DNA sequences in an Oracle database (this was one of two world-wide available stores of this information, for free & open use by anyone {* see note!}). The database was, for back then, enormous at 5-6TB. And we knew it would approx double every 12 months (and it did, it was (more...)

Note to myself: when handling large payloads

Today I stumbled on a question in the communities about handling large payloads in BPEL/XSLT. Although I know that SOASuite from 11g onwards can do paging of XML to disk, I never had the need. However, you could need it from time to time. And it's good to know how to do it.

It's noted on My Oracle Support with Doc ID 1327970.1. Which refers to the 11g documentation on Managing Large Documents and (more...)

Oracle COS Function with Examples

In this article, we look at the Oracle COS function and see some examples. Purpose of the Oracle COS Function The COS function will return the cosine of a number. If your knowledge of cosine is a bit rusty (like mine), then you might find this definition helpful.   Syntax The syntax of the COS […]

Deploying Dropwizard application on Application Container Cloud using Developer Cloud Service

This blog will help you understand deployment of Dropwizard application on Oracle Application Container Cloud Service using Developer Cloud Service.


Before we begin, a brief on what Dropwizard is:

Dropwizard stands on a line between being a library and a framework. It is Java based, uses the Jetty HTTP library to embed a HTTP server directly into the project. It uses Jersey for helping developers build Restful web applications and uses Jackson to handle (more...)

SQLcl custom Input prompt and validations

Another quick twitter inspired blog post inspired by the SQLcl account itself. Asked and answered: Do you support the ACCEPT command? YES. pic.twitter.com/NchmQ6Eegs — SQLcl (@oraclesqlcl) November 29, 2016 ACCEPT is a great way to get input but validation has to happen elsewhere as there's no hooks to do something like validate a number in a range without running a sql or plsql that does

Do you suffer from Storage Stockholm Syndrome?

The last year at DSSD (now a part of Dell EMC) has been an extremely interesting one for me, and I’ve learned a great deal, which is always good. Some of the lessons have been surprising, though… One of them is what I will rather dramatically refer to as Storage Stockholm Syndrome. Stockholm Syndrome is … Continue reading "Do you suffer from Storage Stockholm Syndrome?"

Delphix Users Panel Webinar

Delphix is sponsoring a user webinar on Wednesday from 10 to 11 am California time. I and a couple of other technical Delphix users will take part in a panel discussion. The webinar will give you a good chance to hear about other users’ experience with Delphix and a chance to ask questions. Like any good user meeting it will not be a non-technical sales pitch but it will instead focus on users sharing helpful technical information with other Delphix users.

Noted Oracle (more...)

Moving a VM- 100 Ways to Skin a Cat

I love technology-   ALL TECHNOLOGY.  This includes loving my Mac Air and loving my Microsoft Surface Pro 4.  I’ve recently went back to a Mac when I joined Delphix, trimming down the power I had on my Surface Pro 4, knowing the content I was providing would be required to run on hardware with lesser resources.

With the release of Microsoft SQL Server 2016 on Linux, I (more...)

SQL Developer: Quick Outline with SQL statements

Most of you probably know the "Quick Outline" function you have inside the SQL Developer.
It helps you to easily jump between different functions/procedures inside a package.

My colleague Holger told me about a bug in SQL Developer 3.x where you could use the "Outline" view with normal SQL files, too. Unfortunately in version 4 it didn't work anymore. So he stayed with version 3 for a long while. Otherwise he would had to (more...)

Oracle Data Guard Broker and Static Service Registration (Doc ID 1387859.1)

This is a quick and dirty note to self about Doc ID 1387859.1 which may be incorrect for Single Instance Database with Oracle Restart.

Please share if you have configuration for Single Instance Database with Oracle Restart using DataGuard Broker and listener registered from Grid – TIA.

Oracle Data Guard Broker and Static Service Registration (Doc ID 1387859.1)	


Single Instance Database with Oracle Restart


Optimizing the order of MongoDB aggregation steps

MongoDB does have a query optimizer, and in most cases it's effective at picking the best of multiple possible plans.  However it's worth remembering that in the case of the aggregate function the sequence in which various steps are executed is completely under your control.  The optimizer won't reorder steps into the optimal sequence to get you out of trouble. 

Optimizing the order of steps probably comes mainly to reducing the amount (more...)

max_enabled_roles – nice touch

Some people get very excited with roles, and quickly the number of roles proliferates to huge numbers…Until this happens

ORA-28031: maximum of 148 enabled roles exceeded

But in helping someone out on AskTom, I just found a nice touch in  I had granted my account 200 roles (since the max_enabled_roles parameter is capped at 148), fully expecting to get the standard error when attempting to connect.  But I didn’t (more...)

Characterset again – this is beyond a joke now

So another week another characterset problem, this time it cleverly disguised itself to start with......

Here is what i was initially presented with

rman TARGET sys/password@DEMO AUXILIARY sys/password@DEMOS

run {
allocate channel prmy1 type disk;
allocate channel prmy2 type disk;
allocate auxiliary channel aux1 type disk;
duplicate target database for standby from active database
set cluster_database='false'
set db_unique_name='DEMOS'
set control_files='+DATA'
set db_create_file_dest='+DATA'
set db_recovery_file_dest='+FRA'
set fal_server='DEMOS'
set db_recovery_file_dest_size='45G'
set local_listener='(DESCRIPTION =(ADDRESS = (PROTOCOL = (more...)

Delete/Insert #2

In the previous post I threw out a couple of options for addressing the requirement to transfer data from one table to another (“cut and paste” rather than just “copy”) without running into odd inconsistency errors. This triggered of a wonderful comment trail of alternatives based on how large the volume might be, how relaxed the concurrency requirements might be, and so on.

A comment by SydOracle1 picked up on my failure to get Oracle (more...)

SSO to zabbix with Azure AD

This is a very quick follow up to the last post and uses the same technique to enable SSO to the zabbix application.

The initial steps that need to be followed in Azure AD are exactly the same as the last post - if you want that again its here

To enable the same thing in zabbix you simple need to go to the following screen in the application

And populate the following information - (more...)

Smart Scanning GTTs – what about Flash Cache?

Continuing the example of the previous blog post (is it possible to Smart Scan GTTs?), I am investigating if Smart Scans against GTTs can benefit from Flash Cache, or “optimised reads”. The easiest way to see this in your session is to calculate the change in session counters based on v$mystat or v$sesstat. Other tools might also provide information about the amount of data read from Flash Cache, but there are quite often extra (more...)

UKOUG Conference 1999 : Who was there & what they were talking about

Yes you read the title of this blog post correctly!

Recently I was doing a bit a clear out and I came across a CD of the UKOUG Conference proceedings from 1999. That was my second UKOUG conference and how times have changed.


The CD contained all the conference proceedings consisting of slides and papers.

Here are some familiar names from back in 1999 who you may find presenting at this years conference, some you (more...)