Tuesday, November 27, 2012

ORA-00942: table or view does not exist

My customer has enabled database logging in OpenAM. The backend is Oracle 11g RAC in production. (yes, pretty rich customer :>)



In production, the schema created for OpenAM logging is slightly complicated. According to customer's security standard, any application account that connects to the Oracle database will have limited privileges. That includes CREATE TABLE privilege. 

Therefore, all the possible tables that will be dynamically created by OpenAM during logging have to be pre-populated by the DBA. That's tedious but doable.

However, do note you'll see the following upon every restart of OpenAM:


amLog:11/27/2012 12:47:54:051 PM ICT: Thread[LoggingThread,5,jboss]
ERROR: amSSO_access:DBHandler:flush:execUpdate:reconnect successful.
amLog:11/27/2012 12:47:54:076 PM ICT: Thread[LoggingThread,5,jboss]
ERROR: DBHandler:createTable: 'alter table amSSO_access add (LoginID varchar(255), ContextID varchar(255), IPAddr varchar(255), LogLevel varchar(255), Domain varchar(255), LoggedBy varchar(255), MessageID varchar(255), ModuleName varchar(255), NameID varchar(255))'; error (942); msg = ORA-00942: table or view does not exist

amLog:11/27/2012 12:47:54:144 PM ICT: Thread[LoggingThread,5,jboss]
ERROR: amAuthentication_access:DBHandler:flush:execUpdate:reconnect successful.
amLog:11/27/2012 12:47:54:304 PM ICT: Thread[LoggingThread,5,jboss]
ERROR: DBHandler:createTable: 'alter table amAuthentication_access add (LoginID varchar(255), ContextID varchar(255), IPAddr varchar(255), LogLevel varchar(255), Domain varchar(255), LoggedBy varchar(255), MessageID varchar(255), ModuleName varchar(255), NameID varchar(255))'; error (942); msg = ORA-00942: table or view does not exist


This error can be safely ignored. Read here.

Sometimes, when a view or a procedure is created that accesses a table, Oracle issues the error ORA-00942: table or view does not exist, although this table (or view) definitely exists. 



.

No comments:

Post a Comment