Top 60 Oracle Blogs

Recent comments


Tools To Monitor and Work with Oracle on Azure

I’ve been studying for over a week for my certs.  It really is a challenge for my ADHD brain, as I learn by interacting and using a product, not be reading about it and guess what?  Most of what the certs are on are not in my technical area.  Yeah, this is not fun for me.  I find that my brain hits a limit on what it can absorb before the activity levels in the temporal lobes diminish and I need to take a break, which is what I’m doing right now after a full day of Azure Synapse Analytics, (yes, I know it’s not GA.  Yes, I know I have limited exposure to work with it, which means it’s going to be difficult for me to know at the deep level I’d need for a cert.  Yes, I want to find the person who added this, along with CosmosDB and Polybase as the main content for the cert… :))

Flashback Archive

A classic example of Oracle’s “mix and match” problem showed up on the Oracle Developer Forum a few days ago. Sometimes you see two features that are going to be really helpful in your application – and when you combine them something breaks. In this case it was the combination of Virtual Private Database (VPD/FGAC/RLS) and Flashback Data Archive (FDA/FBA) that resulted in the security predicate not being applied the way you would expect, hence allowing users to see data they were not supposed to see.

Video : Oracle REST Data Services (ORDS) : HTTP Headers and ORDS-Specific Bind Variables

In today’s video we do a quick run through how to use HTTP headers and ORDS-specific bind variables in Oracle REST Data Services.

The video is based on this article.

As always you can see all my ORDS articles here.

ORDS, SQLcl, SQL Developer and SQL Developer Data Modeler 19.4 Released

If you follow me, Jeff or Kris on Twitter, you will already know ORDS, SQLcl, SQL Developer and SQL Developer Data Modeler version 19.4 have all been released. They became available for download late Friday US time, and I got a DM about it yesterday morning, so fresh from spending 2 days running Data Guard builds, I moved on to running builds of some of this stuff.

Oracle REST Data Services (ORDS) 258w" sizes="(max-width: 139px) 85vw, 139px" />

It was a long day, but this is what I did.

Purge Cursor

This is a note I first drafted about 5 years ago (the date stamp says March 2014) and rediscovered a few days ago when the question came up on a Twitter thread.

How do you purge a single SQL statement from the library cache without having to execute “alter system flush shared_pool”?

3 months after the Oracle “Always Free” Tier — unexpected termination.

3 months after the Oracle “Always Free” Tier — unexpected termination. But don’t panic.

3 months ago, when Larry Ellison announced the “Always Free Tier”, I posted a blog about its possibilities and limitation:

The Oracle Cloud Free Tier

I used the ATP, ADW, and compute instances that I’ve created during that time and then did not expect any termination. But exactly 3 months later, the service is not available.

Autonomous Database

About the Autonomous Databases, I got the same as Dani Schider:

Wait for Java

This is a note courtesy of Jack can Zanen on the Oracle-L list server who asked a question about “wait for CPU” and then produced the answer a couple of days later. It’s a simple demonstration of how Java in the database can be very deceptive in terms of indicating CPU usage that isn’t really CPU usage.

Bottom line – when you call Java Oracle knows you’re about to start doing some work on the CPU, but once you’re inside the java engine Oracle has no way of knowing whether the java code is on the CPU or waiting. So if the java starts to wait (e.g. for some slow file I/O) Oracle will still be reporting your session as using CPU.

To demonstrate the principle, I’m going to create little java procedure that simply goes to sleep – and see what I find in the active session history (ASH) after I’ve been sleeping in java for 10 seconds.

Finding the deleted TYPE when ANYDATA raises ORA-21700: object does not exist or is marked for…

Finding the deleted TYPE when ANYDATA raises ORA-21700: object does not exist or is marked for delete

The current message about Oracle Database is: multi-model database. That’s not new. At the time of Oracle 9i, Object Oriented was the trend, with all the flexibility of polymorphism, but without the mess of unstructured data and without the inconsistency of NoSQL. Oracle added a datatype that can contain any datatype: SYS.ANYDATA. In the same column, you can put a number in row 1, a varchar2 in row 2, a record in row 3, andy object in row 4… Any arbitrary object can be stored, but, unlike a RAW or a BLOB (or XML or JSON), each object is structured and references a known datatype or a user-created TYPE.

However, it is impossible to enforce the dependency for each row and it can happen that you DROP a TYPE that is used by an ANYDATA object.


Here’s a worrying bug that showed up a couple of days ago on the Oracle-L mailing list. It’s a problem that I’ve tested against and – it may be present on earlier versions of Oracle. One of the nastiest things about it is that you might not notice it until you get an “out of space” error from the operating system. You won’t get any wrong results from it, but it may well be adding an undesirable performance overhead.

Video : Oracle REST Data Services (ORDS) : RESTful Web Services Handling Media Files

In today’s video we take a look at RESTful web services handling media files built using Oracle REST Data Services (ORDS).

This is based on this article.

There is more information about related stuff here.