Author Archives

Pastures new possibly

It’s looking increasingly likely that I’ll be looking for a new opportunity in December.
Not ideal timing, especially the market being in the state it is, but such are the current times.
However, if you or someone you know needs some Oracle expertise in London or the South East then please take a look at my [...]

Result_cache blocking II

Following on from my post yesterday, it belatedly occurred to me that I should have included some more information. Rather than add an addendum to the original where it might be missed by anyone interested that had already read it, I’m going kick off another post.
By the time, I got involved the problem had been [...]

Result_cache blocking

Had a result_cache problem today.
If you didn’t know it already, DBA_HIST_ACTIVE_SESS_HISTORY is a real boon for getting a very good idea of a) when the problem started and b) how wide the impact was.
300 session were backing up on a latch free wait. Turns out the latch was the “Result Cache: Latch”.
The blocking session was doing [...]

ORA-600 ktagetg can’t be used for a DDL

Just a placeholder for futher investigation really.
So far been unable to prove my fledgling theory via an isolated test case, but if someone else gets this error, then this post might at least provide a possible resolution.
Background is that release scripts failed to create a materialized view at time T1 due to dependent object not existing, @ T2 [...]

SDU

We had a meeting yesterday about the performance of an application across the WAN to the more remote regions of the world.
The upshot of the meeting was that the latency and bandwith of the network was fine but that the client-server network communications could be optimised.
My initial reaction was that the main influence was arraysize/fetchsize, [...]

Logon Triggers

Jeff Hunter’s post this morning reminds me of a recent situation with a logon trigger designed to limit direct access to a production database.
The logon trigger in question was designed to stop application users using their username and password via tools like Toad to access the database directly and issue their own queries. It did [...]

Three months since my last confession…

Shocked that it’s now been over three months since my last post.
What’s been going on?
Truth is that not much has been happening to blog about.
Most of my posts are borne out of some problem, issue or investigation but currently, client is on 11g, upgrade was 5 months ago and the database seems to be purring [...]

ORA-904: invalid identifier on SYS_NC virtual column

A follow-up to my post yesterday.
A quick recap on the situation:
A sql statement such as this:

SELECT col1
FROM my_schema.table1 tab1
WHERE …
AND NVL(col2,’UNASSIGNED’) = SYS_CONTEXT(’MY_CONTEXT’,’MY_COL2_VALUE’)

is raising an error such as this:

ORA-00904: “MY_SCHEMA”.”TAB1″.”SYS_NC00062$”: invalid identifier

where SYS_NC00062$ is not a column directly specified in the sql but a virtual column related to a function-based index.
This matches a bug which [...]

Interesting cost_io in 10053 trace

I’ve got a problem with a set of sql statements in production.
These statements all reference one particular virtual column in a composite function-based index.
The sql statements all look something like this:

SELECT col1
FROM my_schema.table1 tab1
WHERE …
AND NVL(col2,’UNASSIGNED’) = SYS_CONTEXT(’MY_CONTEXT’,’MY_COL2_VALUE’)

And they are raising the following error:

ORA-00904: “MY_SCHEMA”.”TAB1″.”SYS_NC00062$”: invalid identifier

I might yet blog about this problem depending [...]

Using function result_cache for timed caching*

*Or “can I use result_cache to cache for 1 minute/day/hour/day/week/month”
There is already a plethora of excellent resources on the new 11g result_cache functionality, notably:

Oracle Database Concepts Manual
oracle-developer.net - pl/sql function result cache
oracle-developer.net - query result cache

Including a couple of interesting angles on things here:

At Pythian - RC Enqueue, RC Latches, Does 11g result cache scale [...]