Personal tools
You are here: Home Blog SQL Developer getting ora-00942 at session start

SQL Developer getting ora-00942 at session start

We had the crazy situation that every time we loged into one specific database, we received ora-00942. One could just click OK and continue working as usual. Still it was annoying and we wanted to get rid of it.

The error message leaves no hint on which object it is unable to find.Fortunately there is a trigger active on this database that logs any kind of error, the causing SQL, the time, user, etc. to a table within the database. This way we were able to find out that SQL Developer produced the error while selecting on a table APEX_RELEASE.

Strange there is no APEX installed on this system.

I was unable to find out why SQL Developer tried to look for APEX just on this one system ...

Finally I did a tcpdump and analyzed the contets in wireshark. Wireshark is especially nice for that since it is able to follow a TCP stream an display the contents of a whole TCP session in a text window.

There I was able to see the wohle communication between the SQL Developer and the database.

So, what actually happened was, SQL Developer looked in all_objects weather anything named apex_release exists in the database and aktually got a positive result.

It turned out that one user created a table named APEX_RELEASE in his schema.

Now getting a positive result for its query SQL Developer assumes that APEX must be installed and that a public synonym must also exist for that table. Consequently SQL Developer tries to find out what release of APEX ist installed by selecting from APEX_RELEASE ...

BANG!!!!

This of cause fails because the table exists in another schema an cannot be accessed with my user just by doing: 

select release_no from apex_release 

ARGL!!!

I will ask the person to kindly rename the table or drop it.

Document Actions