Beware of old clients...

No, not old customers, old Oracle client software!

I was recently asked to write a ON LOGON trigger for an database (don't ask, it is a very old system). Wrote the trigger, tested it, works no problem. It is never that simple.

I get a confused question from the user. Basically along the lines of "are you sure you wrote and deployed that trigger?". After a few rounds of Yes I Did / Still Doesn't Work I finally remembered ON LOGON has not been available forever. Turns out the user had an 8.0.6 Oracle Client installed and was hitting the database. Looks like when receives a connection from an 8.0.6 client it doesn't execute the ON LOGON trigger. I was connecting from a 10g client so everything worked fine for me.

Security hole? Undocumented feature? Required for compatibility? Who knows, 8i is pretty ancient but just be aware that just because the RDBMS Server has a feature doesn't mean the feature will be available to all clients that connect.

-- Dave


Add new comment