MINI MINI MANI MO

Path : /opt/oracle/product/18c/dbhomeXE/rdbms/mesg/
File Upload :
Current File : //opt/oracle/product/18c/dbhomeXE/rdbms/mesg/qsmus.msg

/* Copyright (c) 1998, 2015, Oracle and/or its affiliates. All rights reserved.*/
/    
/   
/   NAME  
/     qsmus.msg - Oracle Summary Management Advisor routines error messages  
/   DESCRIPTION  
/     Contains the various error codes returned by the routines, what they 
/     mean and what the probable cause is and what action(s), if any, to 
/     take.  
/   
/ Errors can be internal or user errors. Internal errors are not reported  
/ specifically, rather a generic error code (QSMA_FAILURE) is used. User  
/ errors have individual error codes so that the user can take corrective 
/ action.   
 
/------------------------------------------------------------------------------/  
/ NOTES:  
/   Language      : American  
/   Character set : US7ASCII  
/  
/  
/  
/ MODIFIED       (MM/DD/YY)  
/ hosu            03/24/15 - proj 57436: approximate percentile aggregation
/ hosu            07/24/14 - proj 57436: approximate distinct count aggregation
/ liding          06/07/13 - 12.2 project #47749 (never stale MV)
/ sramakri        05/14/14 - bug-18718344
/ mthiyaga        06/24/13 - Add msg 1170
/ sramakri        07/12/12 - bug-14067583
/ panzho          06/27/12 - bug 14238973
/ panzho          06/18/12 - bug 14210038
/ panzho          06/12/12 - bug 14186363
/ sramakri        04/23/12 - bug-13966683
/ avangala        04/19/12 - Bug 13546906: Join back not possible
/ panzho          03/29/12 - bug 13066365
/ panzho          03/14/12 - bug 13840660
/ panzho          03/12/12 - Bug 13066299, 13066272, 13066282
/ xiaobma         03/02/12 - Bug 13805079: restrictions on SyncRef
/ sramakri        02/29/12 - errors_us comments
/ sramakri        02/21/12 - sr_demo2 messages
/ sramakri        02/01/12 - ade messages 3280, 3281
/ panzho          01/23/12 - BUG 12958793 and Bug 13516652
/ sramakri        01/22/12 - add syncref_msg errors
/ sramakri        12/07/11 - add messages 3258, 3259
/ xiaobma         12/09/11 - Add message 3276 
/ sramakri        12/01/11 - address review comments
/ sramakri        11/10/11 - sync-refresh locking messages
/ sramakri        11/08/11 - RPO messages
/ sramakri        10/12/11 - address review comments
/ sramakri        09/22/11 - staging-log integration
/ xiaobma         09/07/11 - Sync Refresh message about unsupported partitions
/ sramakri        07/31/11 - more comments
/ sramakri        07/30/11 - address comments from review by errors_us
/ sramakri        06/21/11 - Sync Refresh messages
/ lsheng          05/07/11 - add error message for match_recognize
/ gnambu          08/24/09 - Fix merge error
/ zqiu            07/17/09 - add KKQSNOOLAP
/ avangala        07/15/09 - Anti joins not supported for fast refresh
/ avangala        06/03/09 - Explain why PCT fast refresh not possible
/ prakumar        01/08/08 - Modify message 1213
/ mthiyaga        12/02/08 - Add message 1784
/ sramakri        10/30/08 - bug 6235086
/ gssmith         10/06/08 - Bug 5929468
/ mthiyaga        07/20/08 - Redefine QSM-1297
/ huagli          03/08/08 - Project 25482: ade message 2191, 2192, 2193
/ rbello          04/04/07 - SPM mesg 
/ rbello          04/04/07 - bug 5455335, JOURNAL SPM/OUTLINE message
/ pabingha        02/01/07 - Part. Rec. Datapump script messages
/ kclaypoo        01/08/07 - Bug 5663578 messages SAA progress
/ akoeller        10/11/06 - Bug 5465555 - Partition script
/ gssmith         12/18/06 - Add SAA error message
/ mthiyaga        11/10/06 - Add more xrw msgs
/ akoeller        07/28/06 - Bug 5412118 
/ gssmith         07/21/06 - Bug 5401595 
/ gssmith         07/11/06 - Remove ALLOW_REPARTITING parameter 
/ awitkows        06/05/06 - full outer join == no rewrite 
/ lsheng          05/26/06 - add message 2190
/ gssmith         05/31/06 - S
/ gssmith         05/28/06 - Add new message for AA 
/ gssmith         04/24/06 - Add new 11g parameter descriptions 
/ mthiyaga        05/24/06 - Add general inline view rw messages 
/ mthiyaga        03/19/06 - Add message 1338 
/ mthiyaga        08/25/05 - Add message 1837 
/ mthiyaga        05/11/05 - Add msg 1168 
/ twtong          04/18/05 - bug-4304412
/ gssmith         03/30/05 - Bug 4249020 
/ gssmith         03/22/05 - Bug 4245373 
/ twtong          02/21/05 - bug-4195175
/ mthiyaga        01/14/05 - Rephrase msg 01110 
/ mxiao           12/13/04 - add 3117 and 3118
/ xan             11/22/04 - enhance 2169
/ mthiyaga        10/04/04 - Address formatting issues 
/ mxiao           10/27/04 - add 3112 - 3116 for tune_mview
/ sramakri        08/09/04 - Optimal Global Greedy trace messages
/ gssmith         08/31/04 - Adjust AA name 
/ mthiyaga        08/16/04 - Add improved messages for explain_rewrite 
/ mthiyaga        06/14/04 - Change msg 1127 to accept argument 
/ gssmith         04/23/04 - Add new message for AA
/ mthiyaga        05/12/04 - Add message 1137 
/ sramakri        03/01/04 - hypothetical workload journal entries 
/ mxiao           03/19/04 - add message 2189
/ gssmith         03/30/04 - New AA parameters text 
/ mthiyaga        03/03/04 - Add msgs for non-rewritable column types 
/ gssmith         02/17/04 - Change version 
/ gssmith         02/05/04 - Add new journaling messages 
/ gssmith         01/15/04 - Bug 3171015 
/ twtong          07/11/03 - bug-3035834
/ btao            08/05/03 - add error message 00804 
/ gssmith         08/05/03 - Add new messages for AA 
/ bpanchap        05/13/03 - Adding mmv rewrite messages for explian_rewrite
/ gssmith         04/18/03 - Change SWO name
/ gssmith         03/18/03 - Adjust Access Advisor column names
/ tfyu            05/27/03 - message for 2187
/ gssmith         01/30/03 - SWO name change
/ gssmith         01/20/03 - Missing stats bug
/ btao            01/23/03 - add message for cancel, interrupt & timeout events
/ gssmith         01/09/03 - Bug 2629700
/ slawande        01/06/03 - Add journal messages for index analyzer
/ gssmith         12/11/02 - add messages 
/ gssmith         12/02/02 - Volatility error message
/ mthiyaga        12/24/02 - Add MV arg for msg 1618
/ ddas            10/23/02 - change OPTIMIZER_GOAL reference to OPTIMIZER_MODE
/ gssmith         10/14/02 - New messages for directives
/ lsheng          10/18/02 - add 2186 message 
/ gssmith         10/18/02 - Provide message for bugfix 2632776
/ gssmith         10/07/02 - File I/O messages
/ abgupta         10/09/02 - change message of 2158
/ awitkows        10/08/02 - add 1122 message
/ gssmith         09/20/02 - New type name
/ mthiyaga        10/02/02 - Add KKQSFGSJC
/ gssmith         09/14/02 - wip
/ gssmith         09/13/02 - wip
/ gssmith         09/11/02 - New Advisor messages
/ gssmith         08/21/02 - Add messages for Access Advisor
/ mxiao           07/25/02 - Add message 2076
/ abgupta         10/02/02 - 
/ abgupta         09/25/02 - define messages for join dep
/ abgupta         09/23/02 - add error message for spreadsheet
/ mthiyaga        07/22/02 - More explain_rewrite() msgs
/ mthiyaga        06/25/02 - Add msg 1115
/ mthiyaga        01/10/02 - Add message 01105.
/ mxiao           12/19/01 - reflect the review from errors_us
/ slawande        11/27/01 - Change 9.0.2 to 9.2 in message.
/ akalra          10/03/01 - Add message for KKQSASOFDISABLED.
/ mxiao           10/12/01 - add 2180
/ slawande        08/06/01 - Add messages for UNION ALL MV.
/ mxiao           06/21/01 - add 2172, 2173
/ alakshmi        05/21/01 - add 2170, 2171
/ twtong          03/07/01 - add explain mesg
/ mthiyaga        03/08/01 - Add action/cause to msg 1084
/ slawande        02/27/01 - Reword error message 2010
/ gssmith         02/28/01 - Add messages for Java errors
/ jraitto         02/09/01 - Add cause/actions for EXPLAIN_MV
/ tfyu            02/19/01 - change error msg for 2066
/ tfyu            02/15/01 - change EUT to PCT and 8.2 to 9.0
/ twtong          02/06/01 - add mesg for upgraded mv
/ mthiyaga        12/07/00 - Add more EXPLAIN_REWRITE msgs
/ twtong          11/30/00 - add explain mv mesg for mv log seq#
/ mthiyaga        08/17/00 - Add message # 1100
/ twtong          10/06/00 - add explain mv mesg for mv log
/ twtong          09/18/00 - add error msg for explain_mv
/ twtong          07/21/00 - add new mesg for grouping set
/ awitkows        07/11/00 - add new rewrite failure msgs
/ jraitto         07/19/00 - eliminate redundant messages
/ sramakri        07/11/00 - add messages 515 and 516
/ jraitto         07/01/00 - explain mv + view flattening
/ bpanchap        06/01/00 - Modify msg 1050
/ mthiyaga        06/01/00 - Add message # 1089
/ jraitto         06/21/00 - explain mv
/ mthiyaga        04/06/00 - Add EXPLAIN_REWRITE related messages
/ gssmith         05/03/00 - Summary Advisor messages
/ btao            06/14/99 - add msg 514 
/ sramakri        06/30/98 - Add 513, one or more of the workload tables is mis
/ sramakri        06/11/98 - add more messages
/ sramakri        05/29/98 - Add more messages
/ sramakri        03/18/98 - Summary management messages used by summary adviso
/ sramakri        01/19/98 - Creation   
/*/  
  
  
00501, 00000, "unable to initialize Summary Advisor environment"  
// *Cause:  The Summary Advisor external procedure initialization process 
//          failed.  
// *Action: Contact Oracle Worldwide Support. 
  
00502, 00000, "OCI error"  
// *Cause:  A OCI callback routine reported an error
// *Action: Contact Oracle Worldwide Support. 
  
00503, 00000, "out of memory"
// *Cause:  Summary Advisor failed to allocate the necessary memory.
// *Action: Contact Oracle Worldwide Support. 

00504, 00000, "internal error"
// *Cause:  An internal error occurred.
// *Action: Contact Oracle Worldwide Support. 

00505, 00000, "syntax error"
// *Cause:  A syntax error occurred.
// *Action: Correct syntax error if possible or contact Oracle
// Worldwide Support. 

00506, 00000, "no fact-tables could be found"
// *Cause:  The fact-filter is not specified, and there are no 
//          fact-tables in the warehouse. A fact-table is a table
//          having foreign-key constraints to one or more of the 
//          dimension-tables in the data warehouse.
// *Action: Check the fact-filter is correctly specified; check that
//          appropriate constraints exist; and the user has privileges
//          to access the tables

00507, 00000, "no dimensions could be found"
// *Cause:  The database does not have any dimensions
// *Action: Create the dimensions in your warehouse

00508, 00000, "statistics missing on tables/columns"
// *Cause:  The system metadata does not contain statistics
//          on one or more tables or columns. The Advisor
//          needs cardinalities of all fact-tables, and of the
//          level-keys of all dimensions in the data warehouse.
// *Action: Run ANALYZE on the tables and summaries in the
//          warehouse to collect statistics

00509, 00000, "invalid parameter"
// *Cause:  The indicated parameter has an invalid value
// *Action: Supply a value in the proper range

00510, 00000, "statistics missing on materialized views"
// *Cause:  The system metadata does not contain statistics
//          on one or more materialized views. The Advisor
//          needs cardinalities of all materialized views in the 
//          data warehouse.
// *Action: Run ANALYZE on the tables and materialized views in the
//          warehouse to collect statistics.

00511, 00000, "invalid fact-tables specified in fact-filter"
// *Cause:  The tables specified in the fact-filter are not
//          valid fact-tables. A fact-table must have foreign-key
//          constraints to one or more of the dimension-tables in the data
//          warehouse.
// *Action: Check the fact-filter is correctly specified; check that
//          appropriate constraints exist; and the user has privileges
//          to access the tables

00512, 00000, "invalid summaries specified in the retention-list"
// *Cause:  The summaries specified in the retention-list are not valid.
// *Action: Check the spelling of the summary-names; check that they are 
//          valid; and the user has privileges to access them.

00513, 00000, "one or more of the workload tables is missing"
// *Cause:  One or both of the workload tables are missing. 
//          The two workload tables which should be present 
//          in the user's schema are V_192216243_F_5_E_14_8_1
//          and V_192216243_F_5_E_15_8_1; the former is mapped
//          to WORK$_IDEAL_MVIEW and the latter to WORK$_MVIEW_USAGE.
//          The workload tables are created by the Oracle Trace Formatter
//          when the data-collection-file (oraclesm.dat) is formatted by 
//          the user.
// *Action: Check whether the Formatter succeeded in formatting the data
//          collection. Sometimes the V_192216243_F_5_E_14_8_1 (i.e
//          WORK$_IDEAL_MVIEW) may not be created whereas the other table
//          is created. The most likely cause of this is the init.ora parameters
//          needed to invoke mview-rewrite are not enabled. Check your
//          documentation for all the init.ora parameters which need to be set
//          for mview-rewrite to occur. Another possibility is no GROUP BY
//          queries were issued during the time the data was collected, in
//          which case, run the Trace collection for a longer time to get a 
//          representative sampling of the queries issued in the data
//          warehouse.
//
00514, 00000, "the size of must-retain summaries exceeds specified space limit"
// *Cause:  The specified space limit is greater than the size of must-retain
//          summaries.
// *Action: Reduce the number of must-retain summaries or increase the space
//          limit
00515, 00000, "operation cancelled by user"
// *Cause:  The operation has been cancelled by the user
// *Action: None
//
00516, 00000, "illegal status detected for run"
// *Cause:  The run has encountered an illegal value in the status field of the
//          mview$_adv_log table. This could be internal error or an  
//          application error.
// *Action: Contact Oracle Worldwide Support.
//
00517, 00000, "Summary Advisor requires a COMPATIBLE setting of 8.1.0.0 or greater"
// *Cause:  The current database has a compatibility setting that is earlier 
//          than the supported server version.
// *Action: Adjust the instance parameter COMPATIBLE to 8.1.0.0 or greater.
//
00518, 00000, "Java is not enabled.  Please execute INITJVM.SQL and INITQSMA.SQL"
// *Cause:  The current database has has not be created or upgraded to support
//          Java stored procedures.  Summary Advisor requires Java stored
//          procedures. 
// *Action: Log into the database with SYSDBA privileges.  Execute the INITJVM.SQL
//          script which is found in the ORACLE home directory under JAVAVM.  
//          Next, execute the INITQSMA.SQL script found in the ADMIN directory
//          under the ORACLE home.
//
00519, 00000, "Summary Advisor is not installed.  Please execute INITQSMA.SQL."
// *Cause:  The current database has has not be created or upgraded to support
//          Summary Advisor.  Summary Advisor requires several Java stored
//          procedures. 
// *Action: Log into the database with SYSDBA privileges.  Execute the INITQSMA.SQL
//          script found in the ADMIN directory under the ORACLE home.
// ****
// ****  Messages 520-700 are in the 9i Summary Advisor Java modules
//                701-708 are Hypothetical Workload generator journal messages
 
00710, 00000, "data access error in module %s"
// *Cause:  SQL Access Advisor detected a severe error while accessing the
//          advisor repository.
// *Action: See the accompanying error message for approprate actions.

//
//  Access Advisor and Advisor Framework errors
//  
  
00750, 00000, "the specified value %s for parameter %s is invalid or contains an invalid item"  
// *Cause:  The user attempted to set a task parameter using invalid data.
// *Action: Adjust the data value and retry the operation.

00751, 00000, "the file %s could not be opened for write access"
// *Cause:  Access Advisor could not create the script or report due to
//          a file system error.         
// *Action: Verify the location for file write access and retry the operation.

00752, 00000, "the parameter %s contains an invalid combination of options %s"
// *Cause:  The user specified correct option keywords, but 
//          entered a combination that is not supported within Access Advisor.
// *Action: Validate the correct option usage and retry the operation.

00753, 00000, "the specified value %s is out of the acceptable range of %s to %s for parameter %s"  
// *Cause:  The user attempted to set a task parameter using invalid data.
// *Action: Adjust the data value and retry the operation.

00754, 00000, "task %s does not reference a valid workload and therefore cannot be executed"
// *Cause:  The user attempted to execute a advisor task that requires a workload.
// *Action: Specify a workload for the task and retry the operation.

00755, 00000, "a set of workload statements already exists for workload %s"
// *Cause:  The user attempted to save workload data into an existing
//          workload that already contains data without specifying APPEND or
//          REPLACE.
// *Action: Validate the import mode retry the operation.

00756, 00000, "the specified workload %s is being used by one or more advisor tasks"  
// *Cause:  The user attempted to modify or delete a workload that is currently
//          being used by another task.
// *Action: Remove the workload reference from the advisor task and retry the
//          operation.

00757, 00000, "the specified workload %s is not referenced by task %s"
// *Cause:  The user attempted to delete invalid workload reference from
//          the task.
// *Action: Validate the workload reference and retry the operation.

00758, 00000, "the specified parameter %s is not valid for workload %s"  
// *Cause:  The user attempted to access a workload parameter that is does not exist
//          for the specified workload.  The parameter may be misspelled or the user
//          selected a parameter that is not supported by the particular
//          advisor.
// *Action: Validate the parameter name and retry the operation.

00759, 00000, "the user %s does not exist for the specified workload statement"  
// *Cause:  The user attempted to add a new SQL statement with an invalid username.
// *Action: Adjust the name and retry the operation.

00760, 00000, "the import mode %s is invalid for the current operation"
// *Cause:  The user attempted to store data in the repository with an invalid import mode.
// *Action: Use one of the following valid values:  NEW, APPEND, or REPLACE.

00761, 00000, "the priority %s is invalid for the current operation"
// *Cause:  The user attempted to store data in the repository with an invalid priority.
// *Action: Use one of the following valid values:  1, 2, 3.

00762, 00000, "the specified Summary Advisor workload %s does not exist"
// *Cause:  The user attempted to import an advisor workload from an invalid 
//          or non-existent Summary Advisor workload.
// *Action: Validate the Summary Advisor workload identifier and retry the operation.

00763, 00000, "the owner %s was not found while validating user-defined workload %s.%s"
// *Cause:  The user attempted to import an advisor workload from a user who may not
//          access to the table.
// *Action: Validate the location of the user-defined workload.

00764, 00000, "the column %s was not found in the user-defined workload table %s.%s"
// *Cause:  The user attempted to import an advisor workload from a user table that does not
//          contain the required column.
// *Action: Validate the user-defined workload table and retry the operation.

00765, 00000, "cannot validate user-defined workload because table %s.%s is invalid."
// *Cause:  The user attempted to import an advisor workload from a table that is 
//          not accessible.
// *Action: Validate the location of the user-defined workload.

00766, 00000, "a SQL statement is required for the current workload operation"
// *Cause:  The user attempted to create an entry in a workload collection without specifying
//          a SQL statement.
// *Action: Validate the SQL statement and retry the operation.

00767, 00000, "a SQL cache is not available to user %s"
// *Cause:  The user attempted to collect a workload from the SQL without having 
//          authorization.
// *Action: Validate the user account and retry the operation.

00768, 00000, "the search condition is invalid for the requested operation"
// *Cause:  The user provided a invalid SEARCH argument to an Access Advisor workload
//          operation.  A search condition must be a valid SQL search condition
//          using only the column names specified in the procedure documentation.
// *Action: Correct the search condition and retry the operation.

00769, 00000, "the SQL statement %s was not found for workload %s"
// *Cause:  The user attempted to access a SQL statement that does not
//          exist in the workload.
// *Action: Validate the SQL statement identifier and retry the operation.

00770, 00000, "the specified workload %s is already referenced by task %s"
// *Cause:  The user attempted to add a workload reference to a task when
//          the task already contains the reference.
// *Action: Validate the workload reference and retry the operation.

00771, 00000, "the specified SQL statement cannot be stored in the workload because it has no valid table references"
// *Cause:  The user attempted to add a workload statement that contains table
//          references that are either system-specified or user-specified invalid tables.
// *Action: Validate the workload statement and retry the operation.

00772, 00000, "the specified SQL statement cannot be stored in the workload due to a statement error"
// *Cause:  The user attempted to add a workload statement that contains invalid SQL syntax or
//          an invalid column reference.
// *Action: Validate the workload statement and retry the operation.

00773, 00000, "the parameter %s contains the invalid %s name %s"
// *Cause:  The task or workload parameter contains a name that is
//          either too long or does not exist in the database.
// *Action: Validate the parameter value and retry the operation.

00774, 00000, "there are no SQL statements to process for task %s"
// *Cause:  While executing, the specified task found no valid SQL statements
//          to analyze.  Possible causes are: an empty workload, table filtering, 
//          or username filtering.
// *Action: Validate the workload and the appropriate task parameters and
//          retry the operation.

00775, 00000, "the specified SQL statement cannot be stored in the workload due to invalid table references"
// *Cause:  The user attempted to add a workload statement that contains one or 
//          more invalid identifier for the parsing user.
// *Action: Validate the workload statement and retry the operation.

00776, 00000, "the user-defined workload %s is missing the following column: %s"
// *Cause:  The user attempted to import a workload from an external table;
//          however, the table does not contain all of the required columns.
// *Action: Adjust the target workload table and retry the operation.

00777, 00000, "the specified directive %s is unsupported at this time"  
// *Cause:  The user attempted to create a directive that is not currently
//          supported.
// *Action: Check the advisor documentation for valid directives.

00778, 00000, "the specified output filename %s is invalid or cannot be accessed"  
// *Cause:  The user attempted to create a report or script in a file that cannot
//          be written or created.
// *Action: Adjust the file name or directory and retry the operation.

00779, 00000, "the specified directive conflicts with the existing directive %s"  
// *Cause:  The user attempted to add a directive that cannot operate with
//          an existing directive.
// *Action: Check the advisor documentation for valid directives.

00780, 00000, "the task %s could not be executed because the workload %s is being modified"
// *Cause:  While attempting to execute a task, Access Advisor checks for exclusive
//          access to all of the referenced workloads.  If any cannot be
//          reserved, then the execution fails.
// *Action: Wait until the referenced workloads are free for exclusive access
//          retry the operation.

00781, 00000, "the specified value %s is invalid for parameter %s.  Valid keywords are %s"  
// *Cause:  The user attempted to set a task parameter using invalid data.
// *Action: Adjust the data value and retry the operation

00782, 00000, "the specified value %s is an invalid date format for parameter %s"  
// *Cause:  The user attempted to set a task parameter using invalid date formatting
//          directives.
// *Action: See the Oracle documentation for valid date-formatting and 
//          retry the operation.

00783, 00000, "the specified value %s contains an invalid date for parameter %s"  
// *Cause:  The user attempted to set a task parameter using invalid date formatting.
// *Action: A date literal must be in the form DD/MM/YYYY HH24:MI:SS.

00784, 00000, "the %s %s referenced in the list %s is invalid for parameter %s"  
// *Cause:  The user attempted to set a task parameter using an invalid username or 
//          table specification.
// *Action: Validate the object name and retry the operation.

00785, 00000, "the directive %s is not supported for task %s at this time"
// *Cause:  The user attempted to add an invalid directive to the current task.
// *Action: Validate the directive and retry the operation.

00786, 00000, "the name %s is invalid for directive %s"
// *Cause:  The user attempted to add a directive that contains an empty or
//          invalid object name.
// *Action: Correct the name and retry the operation.

00787, 00000, "the tablespace %s is invalid for directive %s"
// *Cause:  The user attempted to add a directive that contains an empty or
//          invalid tablespace name.
// *Action: Correct the name and retry the operation.

00788, 00000, "The requested recommendation does not support direct implementation"
// *Cause:  The user attempted to use the DBMS_ADVISOR.IMPLEMENT_TASK procedure to 
//          implement a SQL Access Advisor recommendation that cannot be implemented
//          due to its complexity.
// *Action: The user must generate a script and implement the recommendation outside
//          of the SQL Access Advisor.

00789, 00000, "The requested recommendation requires user editing and cannot be implemented"
// *Cause:  The user attempted to use the DBMS_ADVISOR.IMPLEMENT_TASK procedure to 
//          implement a SQL Access Advisor recommendation that cannot be implemented
//          because it requires additional scripting information from the user.
// *Action: The user must generate a script and edit the results.

00790, 00000, "the workload %s cannot be modified or changed because it is being used by task %s"
// *Cause:  The user attempted to change or delete a workload that is referenced 
//          by an active task.
// *Action: Remove references to a workload from any tasks that
//          reference that workload, unless the task is in its initial task state.

00791, 00000, "the specified SQL statement cannot be stored in the workload because is contains unsupported statement type"
// *Cause:  The user attempted to add a workload statement that contains an invalid statement type.
//          Supported statement types are INSERT, DELETE, UPDATE, SELECT and MERGE.
// *Action: Validate the workload statement and retry the operation.

00792, 00000, "the specified SQL statement cannot be stored in the workload because one or more tables have missing statistics"
// *Cause:  The user attempted to add a workload statement that contains a table without statistics.
//          Access Advisor requires all referenced tables to have valid statistics.
// *Action: Validate the workload statement and retry the operation.

00793, 00000, "the specified SQL Tuning Set %s does not exist"  
// *Cause:  The user specified a SQL Tuning Set that has not been defined
//          in the SQL Tuning Set repository.
// *Action: Correct the SQL Tuning Set name and retry the operation.
/

00794, 00000, "the statement can not be stored due to a violation of the %s filter"  
// *Cause:  The user attempted to manually add a workload statement that failed
//          a filter test.  Manual statements must meet the same filtering
//          guidelines as imported statements.
// *Action: Adjust the attributes or the filter and retry the operation.

00795, 00000, "the SQL Tuning Set repository has not been implemented"
// *Cause:  The user attempted to collect a workload from a SQL Tuning Set 
//          repository that has not yet been implemented or enabled.
// *Action: Validate the existence of the repository and retry the operation.

00796, 00000, "the specified SQL statement cannot be stored in the workload because table %s does not have valid statistics"
// *Cause:  The user attempted to add a workload statement that references a table 
//          with missing statistics.
// *Action: Gather statistics for the referenced table and retry the operation.

00797, 00000, "the specified workload %s does not exist for the current user"  
// *Cause:  The user attempted to reference an Access Advisor workload
//          using a name that does not exist in the Advisor repository.
// *Action: Adjust the name and retry the operation.
/

00798, 00000, "the specified workload %s already exists"  
// *Cause:  The user attempted to create the specified workload
//          using a name that already exists in the Advisor repository.  
//          Task names must be unique to the database user.
// *Action: Adjust the name and retry the operation.

00799, 00000, "the user-defined workload table %s cannot be found"
// *Cause:  The user has attempted to import a workload from an external table
//          that does not exist or cannot be accessed.
// *Action: Adjust the target workload table and retry the operation.

00800, 00000, "the specified workload name %s is invalid"
// *Cause:  The user has specified an invalid workload name.
// *Action: Adjust the target workload name and retry the operation.

00801, 00000, "the specified username %s is invalid"
// *Cause:  The user has specified an invalid username.
// *Action: Adjust the target username and retry the operation.

00802, 00000, "An error occurred while implementing action %s (%s)\n%s."
// *Cause:  While performing IMPLEMENT_TASK, a specific action operation failed.
// *Action: Make the necessary adjustments as specified in the secondary 
//          message and retry the operation.

00803, 00000, "The STORAGE_CHANGE parameter value %s cannot be zero or negative for partial workloads."
// *Cause:  While performing EXECUTE_TASK, the user specified a STORAGE_CHANGE
//          value that is incompatible with the type of workload data.
// *Action: Set a positive STORAGE_CHANGE value.
//

00804, 00000, "not enough space for mandatory access structures"
// *Cause:  While performing EXECUTE_TASK, the user specified a STORAGE_CHANGE
//          value that leaves no space for mandatory access structures,
//          such as primary key indexes.
// *Action: Set a greater STROAGE_CHANGE value.

00805, 00000, "the specified recommendation %s value %s is invalid"
// *Cause:  The user has specified an invalid value when attempting to change
//          a recommendation attribute.
// *Action: Adjust the target attribute value and retry the operation.

00806, 00000, "the %s parameter value must be specified when STORAGE_MODE is set to TOTAL"
// *Cause:  While performing EXECUTE_TASK, the user specified a STORAGE_MODE of
//          TOTAL, but failed to set the DEF_MVIEW_OWNER and DEF_INDEX_OWNER
//          to valid owner names.
// *Action: Set the specified owner to a valid name
//

00807, 00000, "the ANALYSIS_SCOPE parameter value contains an incomplete or invalid combination of options."
// *Cause:  Though the ANALYSIS_SCOPE parameter supports several options, some
//          combination are not supported.
// *Action: Enter a valid combination of options.
//

00808, 00000, "parameter %s only permits a single keyword.  Choose one of the following: %s"  
// *Cause:  The user attempted to set a task parameter using multiple keywords.
// *Action: Adjust the data value and retry the operation

00809, 00000, "the selected number of recommendations exceeds the maximum value of %s"
// *Cause:  While executing GET_TASK_SCRIPT, an attempt was made to fetch a script having too
//          many recommendations. The limit has been set in order to avoid possible performance
//          and out-of-memory errors.
// *Action: Select a small set of recommendations prior to fetching the script

00850, 00000, "task"
// *Document: NO

00851, 00000, "workload"
// *Document: NO

00852, 00000, "EMPTY"
// *Document: NO

00853, 00000, "NULL"
// *Document: NO

00854, 00000, "%s"
// *Document: NO

00855, 00000, "Workload processing completed: %s scanned  %s accepted  %s discarded"
// *Document: NO

00856, 00000, "statements"
// *Document: NO

00857, 00000, "Importing workload from user-defined workload %s.%s"
// *Document: NO

00858, 00000, "Importing workload from SQL cache"
// *Document: NO

00859, 00000, "Importing workload from schema"
// *Document: NO

00860, 00000, "Importing workload from Summary Advisor workload %s"
// *Document: NO

00861, 00000, "Module"
// *Document: NO

00862, 00000, "Action"
// *Document: NO

00863, 00000, "Username"
// *Document: NO

00864, 00000, "Description"
// *Document: NO

00865, 00000, "Hypothetical workload"
// *Document: NO

00866, 00000, "user"
// *Document: NO

00867, 00000, "table"
// *Document: NO

00868, 00000, "object"
// *Document: NO

00869, 00000, "General purpose database template"
// *Document: NO

00870, 00000, "OLTP database template"
// *Document: NO

00871, 00000, "Data Warehouse database template"
// *Document: NO

00872, 00000, "SQL Access Advisor: Version %s - Production"
// *Document: NO

00873, 00000, "Username:"
// *Document: NO

00874, 00000, "Task:"
// *Document: NO

00875, 00000, "Execution date:"
// *Document: NO

00876, 00000, "index type"
// *Document: NO

00877, 00000, "Missing statistics: Table: %s"
// *Document: NO

00878, 00000, "Invalid table references: User: %s  Statement: %s"
// *Document: NO

00879, 00000, "Invalid SQL: User: %s  Statement: %s"
// *Document: NO

00880, 00000, "Import query: %s"
// *Document: NO

00881, 00000, "Workload processing query: %s"
// *Document: NO

00882, 00000, "Preparing workload for analysis"
// *Document: NO

00883, 00000, "Importing workload from SQL Tuning Set %s"
// *Document: NO

00884, 00000, "Filter violation: %s:  Statement: %s"
// *Document: NO

00885, 00000, "Invalid user: User: %s  Statement: %s"
// *Document: NO

00886, 00000, "Deprecated parameter: Old name: %s  New Name: %s"
// *Document: NO

00887, 00000, "Filter Summary: %s:  Unused"
// *Document: NO

00888, 00000, "Filter Summary: %s:  Statements discarded: %s"
// *Document: NO

00889, 00000, "Filter Summary: All user-specified filters were disabled"
// *Document: NO

00890, 00000, "Default Enterprise Manager task template"
// *Document: NO

00891, 00000, "Filter Summary: %s:  Statements invalidated: %s"
// *Document: NO

00892, 00000, "Resetting workload"
// *Document: NO

00893, 00000, "Workload processing completed: %s scanned  %s passed  %s invalidated"
// *Document: NO

00894, 00000, "Valid SQL: User: %s  Statement: %s"
// *Document: NO

00900, 99999, ""
// *Document: NO
// *Cause:   Internal error  
// *Action:  None
//

00901, 00000, "In BRIEF mode star transformation analysis is skipped"
// *Document: NO

00902, 00000, "No index candidates were found for statement %s"
// *Document: NO
// *Cause: Informational message indicating that the index advisor did not 
//         find any suitable index solutions for the query. 
//
//         This could be for several reasons including but not limited to: 
//         - There was no construct in the query that would benefit from an 
//           index access (such as join, predicate, group by order by, etc) 
//         - Some tables or columns used in those constructs were not eligible 
//           to be included in an index. 
//         - The index advisor does not support this type of query.
//         - The query requires index types not supported by index advisor
//
//         For detailed explanation on how the optimizer uses indexes, 
//         please refer to the Oracle Performance and Tuning Manual.

00903, 00000, "All new index solutions for statement %s were rejected by the query optimizer"
// *Document: NO
// *Cause: Informational message indicating that all index candidates
//         found by the index advisor were rejected by the optimizer
//         in favor of other less costly access paths.

00904, 00000, "No index candidates were found for MVs referenced in statement %s"
// *Document: NO
// *Cause: Informational message indicating that the index advisor
//         did not find any suitable index solutions for the 
//         materialized views referenced in the query. This could be because
//         the query did not get rewritten using any materialized views or
//         because of reasons mentioned in QSM-00902.

00905, 00000, "All new index solutions on MVs in query %s were rejected by the query optimizer"
// *Document: NO
// *Cause: Informational message indicating that all index candidates
//         on materialized views referenced in the query were  were rejected 
//         by the optimizer in favor of other less costly alternatives.

00906, 00000, "Existing index %s does not have statistics"
// *Document: NO
// *Cause: Informational message indicating that an existing index
//         is missing statistics. This means that any recommendations
//         involving it may not be fully reliable.

00907, 00000, "Table %s considered too volatile for %s indexes"
// *Document: NO
// *Cause: The specified table had too many DMLs being done to it
//         and hence no index candidates will be recommended on it.

00908, 00000, "Column %s considered too volatile for %s indexes"
// *Document: NO
// *Cause: The specified column had too many updates being done to
//         to it and hence will not be considered for inclusion into
//         an index

00909, 00000, "Internal Error during index analysis for query %s"
// *Document: NO

00910, 00000, "Error loading existing index for index analysis %s"
// *Document: NO


00911, 00000, "Task has been set to ignore table volatility information"
// *Document: NO
// *Cause: Task parameter DML_VOLATILITY has been set to DISABLED. This
//         means that we will ignore the cost impact of DML to the table
//         when recommending access structures. The recommended access 
//         structures on a table with heavy DML, could have an adverse 
//         impact on DML performance.

00912, 00000, "Operation cancelled by user at stage %s, step %s"
// *Document: NO

00913, 00000, "Operation interrupted by user at stage %s, step %s"
// *Document: NO

00914, 00000, "Operation timeout at stage %s, step %s"
// *Document: NO

00915, 00000, "No existing materialized views were found"
// *Document: NO
// *Cause: There are no existing materialized views to load. For a 
//         materialized view to be loaded, at least one of the base 
//         tables it references must be referenced by at least one
//         query in the given workload.

00916, 00000, "No eligible materialized views found for query %s"
// *Document: NO
// *Cause: No eligible materialized view candidates exist for the given
//         query

00917, 00000, "Generating materialized view candidates (%s%%)"
// *Document: NO
// *Cause: Information only. The number in parenthesis indicates completion 
//         percentage

00918, 00000, "Generating intial recommendations for each query (%s%%)"
// *Document: NO
// *Cause: Information only. The number in parenthesis indicates completion 
//         percentage

00919, 00000, "Performing local optimization (%s%%)"
// *Document: NO
// *Cause: Information only. The number in parenthesis indicates completion 
//         percentage

00920, 00000, "Performing global optimization (%s%%)"
// *Document: NO
// *Cause: Information only. The number in parenthesis indicates completion 
//         percentage

00921, 00000, "Generating index candidates (%s%%)"
// *Document: NO
// *Cause: Information only. The number in parenthesis indicates completion 
//         percentage

00922, 00000, "Evaluating the initial execution cost for each query (%s%%)"
// *Document: NO
// *Cause: Information only. The number in parenthesis indicates completion 
//         percentage

00923, 00000, "Preparing workload queries for analysis (%s%%)"
// *Document: NO
// *Cause: Information only. The number in parenthesis indicates completion 
//         percentage

00924, 00000, "Access advisor execution completed "
// *Document: NO
// *Cause: Information only. 

00925, 00000, "SQL Syntax or Semantic Error"
// *Document: NO
// *Cause: Information only. 

00926, 00000, "Valid table"
// *Document: NO
// *Cause: Information only. 

00927, 00000, "Invalid table"
// *Document: NO
// *Cause: Information only. 

00928, 00000, "Valid username"
// *Document: NO
// *Cause: Information only. 

00929, 00000, "Invalid username"
// *Document: NO
// *Cause: Information only. 

00930, 00000, "Valid action"
// *Document: NO
// *Cause: Information only. 

00931, 00000, "Invalid action"
// *Document: NO
// *Cause: Information only. 

00932, 00000, "Valid module"
// *Document: NO
// *Cause: Information only. 

00933, 00000, "Invalid module"
// *Document: NO
// *Cause: Information only. 

00934, 00000, "Valid SQL String"
// *Document: NO
// *Cause: Information only. 

00935, 00000, "Invalid SQL String"
// *Document: NO
// *Cause: Information only. 

00936, 00000, "Invalid table reference"
// *Document: NO
// *Cause: Information only. 

00937, 00000, "Invalid start time"
// *Document: NO
// *Cause: Information only. 

00938, 00000, "Invalid end time"
// *Document: NO
// *Cause: Information only. 

00939, 00000, "Missing statistics"
// *Document: NO
// *Cause: Information only. 

00940, 00000, "Missing statistics: Statement: %s"
// *Document: NO

00941, 00000, "Invalid comment"
// *Document: NO
// *Cause: Information only. 

00942, 00000, "Performing optimal global greedy post-processing (%s%%)"
// *Document: NO
// *Cause: Information only. The number in parenthesis indicates completion 
//         percentage

00943, 00000, "%s"
// *Document: NO
// *Cause: Information only. 


00944, 00000, "SQL Access Advisor publishing results (%s)"
// *Document: NO
// *Cause: Information only. The number in paranthesis indicates the publish point

00945, 00000, "SQL Access Advisor was interrupted or cancelled"
// *Document: NO
// *Cause: Information only. 

00946, 00000, "Note %s managed statement: %s"
// *Document: NO
// *Cause: Information only. 

00950, 00000, "Repartitioning table %s"
// *Document: NO
// *Cause: Information only. 

00951, 00000, "Dependent objects prevent automatic table repartitioning"
// *Document: NO
// *Cause: Information only. 

00952, 00000, "The following objects must be removed before executing implementation script: %s"
// *Document: NO
// *Cause: Information only. 

00953, 00000, "Creating new partitioned table"
// *Document: NO
// *Cause: Information only. 

00954, 00000, "Copying %s to new partitioned table"
// *Document: NO
// *Cause: Information only. 

00955, 00000, "Dropping materialized view log on original table"
// *Document: NO
// *Cause: Information only. 

00956, 00000, "Creating materialized view log on new partitioned table"
// *Document: NO
// *Cause: Information only. 

00957, 00000, "Revalidating %s for use with new partitioned table"
// *Document: NO
// *Cause: Information only. 

00958, 00000, "Populating new partitioned table with data from original table"
// *Document: NO
// *Cause: Information only. 

00959, 00000, "Renaming tables to give new partitioned table the original table name"
// *Document: NO
// *Cause: Information only. 

00970, 00000, "comments"
// *Document: NO

00971, 00000, "constraints"
// *Document: NO

00972, 00000, "referential constraints"
// *Document: NO

00973, 00000, "indexes"
// *Document: NO

00974, 00000, "triggers"
// *Document: NO

00975, 00000, "object grants"
// *Document: NO

00976, 00000, "fine-grained access-control policies"
// *Document: NO

00977, 00000, "audits of schema objects"
// *Document: NO

00978, 00000, "fine-grained audit policies"
// *Document: NO

00979, 00000, "materialized views"
// *Document: NO

00980, 00000, "dimensions"
// *Document: NO

00999, 00000, "Advisor feature is not currently implemented"
// *Cause:   The user attempted to execute an unsupported advisor operation.
// *Action:  Verify the availability of the operation.
//


//
// **** Numbers from 01001 to 02000 are allocated for EXPLAIN REWRITE *****
//
// **** IMPORTANT: Messages that have 99999 in the second column of the message
// ****            numbers are protected messages and should NOT go into
// ****            documentation or published in any other form. These are
// ****            for Oracle internal use only
//
//

01001, 00000, "query rewrite not enabled"
// *Cause:    When query rewrite is disabled, no query rewrite will take place.
// *Action:   Enable query rewrite with ALTER SESSION SET QUERY_REWRITE ENABLE command.
/
01002, 00000, "no query rewrite when OPTIMIZER_MODE is rule based"
// *Cause:    Query rewrite did not occur because the OPTIMIZER_MODE was set to
//            RULE.         
// *Action:   Change the optimizer mode using the OPTIMIZER_MODE parameter.
/
01003, 00000, "no query rewrite on DDL queries"
// *Cause:    If query contains any data definition operations, no query rewrite 
//            will take place.
// *Action:   none.
/
01004, 99999, "no query rewrite before view merging"
// *Cause:    Internal session parameter _QUERY_REWRITE_2 is set to FALSE
// *Action:   Change session parameter with ALTER SESSION command.
/
01005, 99999, "no query rewrite when query has slave SQL"
// *Cause:    Current prcess is a kxfx slave
// *Action    none
/
01006, 99999, "query rewrite disabled for this query block"
// *Cause:    During query rewrite, certain view query blocks cannot be
//            rewritten.
// *Action:   none
/
01007, 00000, "query has NOREWRITE hint"
// *Cause:    When query contains a NOREWRITE hint, no query rewrite will take
//            place for that query block.
// *Action:   Remove the NOREWRITE hint from the query
/
01008, 00000, "no query rewrite for update queries"
// *Cause:    If a query or part of it has any DML update operations, no query rewrite
//            will take place.
// *Action:   none
/
01009, 00000, "query rewritten with materialized view, %s, using text match algorithm"
// *Cause:    The query  was rewritten using a materialized view, because query text
//            matched the definition of the materialized view
// *Action:   none
/
01010, 00000, "table(s) in the query not found in materialized view, %s"
// *Cause:    If the materialized view does not reference the base tables found in the
//            query, it cannot be used for rewrite
// *Action:   none
/
01011, 00000, "when heuristic rewrite not set, rewrite hint required"
// *Cause:    When using a stored outline, a rewrite hint is required for query rewrite
// *Action:   none
/
01012, 00000, "SAMPLE clause present in FROM"
// *Cause:    If a query contains a SAMPLE clause, query rewrite will not take place
// *Action:   none
/
01013, 00000, "nested aggregates or CONNECT BY/START WITH clause present"
// *Cause:    If the query contains nested aggregates, CONNECT BY clause, or
//            START WITH clause, query rewrite will not take place
// *Action:   none
/
01014, 00000, "top level operator in WHERE clause of the query is an OR"
// *Cause:    If the top-level operator in the WHERE clause is an OR and there is
//            more than one table in the FROM list, then query rewrite will not
//            take place.
// *Action:   none
/
01015, 00000, "GROUP BY clause has non-columns"
// *Cause:    No query rewrite, if there is no valid column in the GROUP BY clause.
// *Action:   none
/
01016, 00000, "Query rewrite does not support, aggregate, %s"
// *Cause:    No query rewrite, if the query contains any DISTINCT aggregates
//            other than COUNT, MIN or MAX.
// *Action:   none
/
01017, 99999, "aggregate argument cannot be converted to canonical form"
// *Cause:    Argument of each aggregrate in the query needs to be convertible
//            into a canonical form for query rewrite. 
// *Action:   none
/
01018, 00000, "single table materialized join view rewrite not required"
// *Cause:    Materialized join view is more expensive for rewrite than using
//            the base table
// *Action:   none.
/
01019, 00000, "no suitable materialized view found to rewrite this query"
// *Cause:    There doesn't exist any materialized view in the dataware house that 
//            can be used to rewrite this query.
// *Action:   Consider creating a new materialized view.
/
01020, 00000, "materialized view, %s, is ineligible"
// *Cause:    Materialized view is probably disabled or stale.
// *Action:   Consider enabling the materialized view for rewrite or refreshing
//            it.
/
01021, 00000, "materialized view, %s, not found in the hint list"
// *Cause:    There is a rewrite hint list specified in the query, but this
//            materialized view is not among the hinted ones.
// *Action:   Include this materialized view in the rewrite hint list.
/
01022, 00000, "a more optimal materialized view than %s was used to rewrite"
// *Cause:    Query Rewrite always chooses the most optimal materialized view
//            based on certain parameters, such as cardinality of the
//            materialized view, number of joins etc. The materialized view
//            specified was found to be less optimal.
// *Action:   To force using a materialized view, consider using a rewrite hint.
/
01023, 99999, "materialized view, %s, has GRANT errors"
// *Cause:    Materialized view probably has some metadata errors.
// *Action:   Consider recreating it.
/
01024, 99999, "materialized view, %s, has unknown compile errors"
// *Cause:    Materialized view probably has some metadata errors.
// *Action:   Consider recreating it.
/
01025, 00000, "materialized view, %s, not found"
// *Cause:    The specified materialized view is not found in the database.
// *Action:   Check the spelling or create a new materialized view
/
01026, 00000, "query rewrite is disabled for, %s"
// *Cause:    Query rewrite could not use this materialized view, because query
//            rewrite was not enabled for it.
// *Action:   Enable query rewrite for the materialized view with ALTER
//            MATERIALIZED VIEW "mv" ENABLE QUERY REWRITE command, where "mv"
//            is the name of the materializev view.
/
01027, 99999, "materialized view, %s, is unusable"
// *Cause:    Materialized view probably has some metadata errors.
// *Action:   Consider recreating it.
/
01028, 00000, "materialized view, %s, is currently being refreshed"
// *Cause:    Materialized view cannot be used for query rewrite while it is
//            being refreshed
// *Action:   Rerun the query, after the refresh operation is completed.
/
01029, 00000, "materialized view, %s, is stale in ENFORCED integrity mode"
// *Cause:    A stale materialized view cannot be used for query rewrite when
//            the query rewrite integrity mode is set to ENFORCED.
// *Action:   Refresh the materialized view or alter the rewrite integrity mode
//            with ALTER SESSION QUERY_REWRITE_INTEGRITY = STALE TOLERATED command.
/
01030, 00000, "materialized view, %s, has PL/SQL functions in ENFORCED integrity mode"
// *Cause:    A materialized view with PL/SQL functions in its definition cannot
//            be used for query rewrite when query rewrite integrity is set to ENFORCED.
// *Action:   Consider running the query in STALE TOLERATED mode.
/
01031, 00000, "materialized view, %s, is stale in TRUSTED integrity mode"
// *Cause:    A stale materialized view cannot be used for query rewrite when
//            the query rewrite integrity mode is set to TRUSTED.
// *Action:   Refresh the materialized view or alter the rewrite integrity mode
//            with ALTER SESSION QUERY_REWRITE_INTEGRITY = STALE TOLERATED command.
/
01032, 00000, "materialized view, %s, not found"
// *Cause:    There was no associated metadata for the materialized view.
// *Action:   Check the spelling and re-run the query.
/
01033, 00000, "query rewritten with materialized view, %s"
// *Cause:    The specified materialized view was used to rewrite the given query.
// *Action:   none
/
01034, 00000, "materialized view, %s, needs a dimension level to join table, %s"
// *Cause:    One or more hierarchical relationship(s) in the table(s) could not
//            be established.
// *Action:   Consider adding a level in the dimension to provide the missing intra-
//            table relationships.
/
01035, 99999, "a row level security policy exists on this table"
// *Cause:    Any row level security policy that may exist on a base-table prevents
//            exact text match query rewrite.
// *Action:   none.
/
01036, 99999, "unmatched column, %s, present in query after view merging"
// *Cause:    Clearing the columns after view merging failed due to some reasons -
//            bug??
// *Action:   none
/
01037, 99999, "Query Rewrite failed to allocate the necessary query join graph"
// *Cause:    Join graph allocation and initialization failed, possibly due to
//            one or more undetermined operand(s) in the query expression. 
// *Action:   none
/
01038, 99999, "logical operator(s) could not be processed"
// *Cause:    One or more logical operator(s) in the query predicates could not be 
//            processed, possibly due to invalid operator(s).
// *Action:   none
/
01039, 00000, "selection present on right hand side of an outer join"
// *Cause:    Query cannot be rewritten if any predicate contains a selection on
//            the right hand side of an outer join.
// *Action:   none
/
01040, 00000, "match between the materialized view (%s) and query join graphs failed"
// *Cause:    Query rewrite will not take place if the joins in the query and the
//            materialized view do not have any match.
// *Action:   none
/
01041, 00000, "materialized view, %s, does not match with a measure in the query"
// *Cause:    If a measure (such as SUM, AVERAGE) in the query cannot be matched
//            or computed from the materialized view, it will not be used for rewrite.
// *Action:   none
/
01042, 00000, "anchor and matching join arc check failed for %s"
// *Cause:    If there is a lossy join in the materialized view that doesn't exist in
//            the query, query rewrite will not take place.
// *Action:   none
/
01043, 00000, "join back attempted on a table to the RHS of a semi or anti join for %s "
// *Cause:    Query Rewrite will not occur if a join back is required to a table that 
//            appears to the right hand side of a semi or anti-join.
// *Action:   none
/
01044, 00000, "join back attempted on a view for %s"
// *Cause:    Query Rewrite will not occur if a join back to a table is required to find
//            any missing columns.
// *Action:   none
/
01046, 00000, "complex join back on correlated columns not allowed (%s)"
// *Cause:    Query Rewrite will not occur if a join back is required on a column that 
//            is referenced by a sub-query.
// *Action:   none
/
01047, 00000, "complex join back on non-MAV rewrite not allowed (%s)"
// *Cause:    Query Rewrite can occur by means of a complex join back only during a
//            MAV rewrite. 
// *Action:   none
/
01048, 00000, "join back level(s) not present (%s)"
// *Cause:    Query Rewrite requires joining back to a level of a dimension to 
//            find a missing information.
// *Action:   Consider creating a dimension.
/
01049, 99999, "semi-join check failed for materialized view, %s"
// *Cause:    If there is a semi join in the query, then Query Rewrite will create 
//            (select distinct <pk-list>, <ref-col> from mjv) where <pk-list> is the list of 
//            rowids/pk of all mjv tables that don't correspond to a right side of a 
//            semi-join and <ref-col> are their columns. Query Rewrite will not
//            occur if a join from the materialized view cannot match the semi-join
//            from the query.
// *Action:   none
/
01050, 00000, "roll-up check failed for materialized view, %s"
// *Cause:    A column in the query cannot be computed from the materialized view.
// *Action:   Consider creating a dimension to supply the missing information
/
01051, 00000, "no support for rollup when a window function is present on the column"
// *Cause:    No query rewrite if a window function is present on a column that
//            requires a roll-up to compute a measure.
// *Action:   none
/
01052, 00000, "referential integrity constraint on table, %s, not VALID in ENFORCED integrity mode"
// *Cause:    A join present in the materialized view requires validated
//            primary/foreign key constraints in ENFORCED query rewrite integrity mode.
// *Action:   Validate the constraint or change the integrity mode with ALTER
//            SESSION SET QUERY_REWRITE_INTEGRITY = STALE_TOLERATED command.
/
01053, 00000, "NORELY referential integrity constraint on table, %s, in TRUSTED/STALE TOLERATED integrity mode"
// *Cause:    A join present in the materialized view requires RELY mode to be
//            set on the primary/foreign key constraints.
// *Action:   Set the RELY mode with ALTER TABLE <table> MODIFY CONSTRAINT
//            <constraint> RELY command. Alternatively validate the constraint with ALTER
//            TABLE <table> VALIDATE CONSTRAINT <constraint>.
/
01054, 99999, "no join match between query and summary, %s"
// *Cause:    There are no common joins between the query and the the materialized view
// *Action:   none
/
01055, 00000, "Query Rewrite failed to allocate the necessary materialized view join graph"
// *Cause:    Join graph allocation and initialization failed, possibly due to
//            one or more undetermined operand(s). 
// *Action:   none
/
01056, 00000, "no query rewrite for this DDL expression"
// *Cause:    Some SELECT statements which are part of a DDL expression may be
//            eligible for rewrite.  These include CREATE AS SELECT and CREATE
//            OUTLINE statements. The given query expression is a DDL expression,
//            which doesn't fall in this category.
// *Action:   none
/
01057, 00000, "no query rewrite for this DML expression"
// *Cause:    Current DML is being done using an updatable view, so it is not
//            eligible for rewrite.
// *Action:   none
/
01058, 00000, "MV, %s, does not have column, %s, for a joinback"
// *Cause:    A GROUP BY column in the query is not present in the GROUP BY clause of
// 	      of the materialized view. This usually requires a join back to a third
//	      table.
// *Action:   none
/
01059, 00000, "HAVING clause in the query block is malformed"
// *Cause:    An illegal HAVING clause has been specified in the query.
// *Action:   Correct the query syntax and run the query again.
/
01060, 00000, "illegal subquery in the HAVING clause"
// *Cause:    When a HAVING clause has a subquery, then any references to the
//            tables in the outer query should only reference the tables in the
//            GROUP BY clause.
// *Action:   Correct error in the syntax and rerun the query.
/
01061, 00000, "illegal query expression"
// *Cause:    An illegal query was specified. Specifically one of the following
//            criteria was not satisfied: (a) All (non-constant, non-aggregate)
//            SELECT expressions in the query should be made up of group 
//            expressions. (b) All column references in the HAVING clause should
//            come from the GROUP BY expressions. (c) If there is an ORDER BY
//            clause, then all column references should come from the GROUP BY or
//            SELECT clause, depending on whether the query selects DISTINCT.
// *Action:   Correct error in the syntax and rerun the query.
/
01062, 00000, "query has one or more manual partition(s)"
// *Cause:     Query rewrite is not possible if query has any manual partitions.
// *Action:    none
/
01063, 00000, "query has a dictionary table or view"
// *Cause:    Query rewrite is not allowed if query references any dictionary
//            tables/views.
// *Action:   none
/
01064, 00000, "query has a fixed table or view"
// *Cause:    Query rewrite is not allowed if query references any fixed
//            tables/views
// *Action:   none
/
01065, 00000, "materialized view, %s, cannot compute measure, %s, in the query"
// *Cause:    If the materialized view cannot compute a measure in the query
//            using the measures in its definition, then query rewrite will
//            not occur.
// *Action:   none
/
01066, 00000, "materialized view, %s, does not have the column, %s, from query"
// *Cause:    Query rewrite will not occur, if the materialized view cannot
//            provide all the columns that the query has
// *Action:   none
/
01067, 00000, "materialized view, %s, cannot support the query measure, %s"
// *Cause:    An attempt was made to push a grouping function through an
//            expression specified in the query to transform a measure. Query
//            rewrite will not occur if this measure transformation failed.
// *Action:   none
/
01068, 00000, "no dimensions present"
// *Cause:    An attempt was made to load a dimension from the dataware house,
//            but there were no dimensions present.
// *Action:   none
/
01069, 00000, "summary join graph for, %s, does not have table, %s"
// *Cause:    An attempt to locate an object that is part of a join failed.
// *Action:   none
/
01070, 99999, "equivalence class manager was not found"
// *Cause:    An equivalence class manager is required to compute the transitive
//            closure for the columns in an equivalence class. 
// *Action:   none
/
01071, 00000, "query rewrite not possible because a join in materialized view % with table % has eliminated some rows found in query"
// *Cause:    All lossy joins in the materialized view must be present in the
//            query for query rewrite to occur.
// *Action:   none
/
01072, 00000, "materialized view, %s, and query have different joins between tables, %s"
// *Cause:    Anchors, if any, in the MV and query match. But the joins between these
//            anchors in the MV and query are different.
// *Action:   none
/
01073, 00000, "query rewrite not possible because materialized view, %s, has a join not found in query"
// *Cause:    Query rewrite may not be possible if the materialized view has some
//            joins that query does not have
// *Action:   none
/
01074, 00000, "query rewrite not possible because materialized view, %s, and query have different number of joins between tables, %s"
// *Cause:    Query rewrite may not be possible if the query has some joins that the
//            materialized view does not have between the same pair of tables.
// *Action:
/
01075, 00000, "materialized view, %s, does not support aggregate function, %s"
// *Cause:    The specified aggregate function is not found in the materialized
//            view.
// *Action:   none
/
01076, 99999, "no materialized join view was found"
// *Cause:    To support an MJV rewrite, we require a materialized join view.
// *Action:   none
/
01077, 00000, "materialized view, %s, is grouping at a higher level than query"
// *Cause:    If a query column, which is not present in the materialized view,
//            can be obtained by a rollup within the materialized view, then it
//            should group at a higher level than the materialized view.
// *Action:   none
/
01078, 99999, "materialized view, %s, is marked invalid"
// *Cause:    The materialized view's kglobsta field has KGLSINV bit set.
// *Action:   none ??
/
01079, 00000, "DML operation occurred on a table referenced by MV, %s"
// *Cause:    If any dependent tables of a materialized view undergoes a DML
//            operation, query rewrite may be restricted depending on the 
//            query rewrite integrity mode for the session. In this situation,
//            query rewrite will take place only if the rewrite integrity
//            mode is STALE_TOLERATED.
// *Action:   Consider refreshing the materialized view chaning the rewrite
//            integrity mode to STALE_TOLERATED.
/
01080, 00000, "invalid dimension, %s"
// *Cause:    This dimension table has authorization or compilation problems.
// *Action:   none
/
01081, 00000, "no primary key or row id found for table, %s, in MV, %s"
// *Cause:    In order to obtain a missing column, the materialized view needs to
//            join back to the above table. But it lacks the primary key or
//            rowid for the table.
// *Action:   none
/
01082, 00000, "Joining materialized view, %s, with table, %s, not possible"
// *Cause:    A column in the query is not found in the summary. To obtain the 
//            column, a join back of materialized view to the table by means of either the 
//            primary key, foreign key or rowid of the table is required. The
//            specified materialized view does not have the primary key,
//            foreign key or rowid of the table to perform the join operation.
// *Action:   Consider building a dimension-table to provide the missing information.
/
01083, 00000, "query text not available - possible inline view"
// *Cause:    During the query rewrite transformation, orignal query was possibly
//            transformed into an inline view.
// *Action:   none
/
01084, 00000, "materialized view %s has an anchor table %s not found in query"
// *Cause:    A table in a materialized view is an anchor, (a) if it is not
//            joined to any other table or (b) joined to other tables but
//            each of its joins is either lossy or lossless with the above
//            table being child-side table. If an anchor which is present
//            in the materialized view is not found in the query, then
//            query rewrite will not take place.
//
// *Action:   none
/
01085, 00000, "materialized view, %s, has a lossy join between tables, %s"
// *Cause:    There are no primary key, foreign key constraints between these tables.
//            But query rewrite is still possible if the lossy join between the above
//            tables also appear in the query
// *Action:   none
/
01086, 00000, "dimension(s) not present or not used in ENFORCED integrity mode"
// *Cause:    Query rewrite does not use dimensions in ENFORCED query rewrite
//            integrity mode. If a suitable dimension is present, consider
//            chaning the current integrity mode to either TRUSTED or STALE_
//            TOLERATED by using ALTER SESSION SET QUERY_REWRITE_INTEGRITY =
//            command.
// *Action:   none
/
01087, 00000, "query grouping on a column that cannot be derived from materialized view, %s"
// *Cause:    Query is grouping on undetermined columns.
// *Action:   none
/
01089, 99999, "an inline view in the query does not have a materialized view"
// *Cause:    General query rewrite is not possible if an inline view in the query
//            does not have a matching materialized view in the meta data.
// *Action:   none
/
01090, 99999, "no query rewrite after view merging"
// *Cause:    Internal session parameter _QUERY_REWRITE_1 is set to FALSE
// *Action:   Change session parameter with ALTER SESSION command.
/
01091, 00000, "cost based optimizer found query rewrite is more expensive"
// *Cause:    When cost based optimizer is ON, cost of the rewritten cursor 
//	      is compared to the cursor generated without query rewrite, and
//	      the cheaper one is chosen for execution.
// *Action:   none
/
01092, 00000, "mjv tries to rewrite a semi-join and primary key or rowid missing"
// *Cause:    Materialized join view tries to rewrite a semi-join (IN sub-query)
//	      and the primary keys or rowids of left tables of semi-joins
//	      are missing from MJV.
// *Action:   none
/
01093, 00000, "anti-join marker not found in materialized join view"
// *Cause:    Materialized join view has outer join while the query inner join.
//	      For rewrite to succeed MV must have an anti-join marker like
//	      the rowid or primary key of the right tables of outer join
// *Action:   none
/
01094, 00000, "outer-join filter not found in materialized join view"
// *Cause:    Materialized join view has outer join while the query inner join.
//	      For rewrite to succeed MV must have an anti-join marker like
//	      the rowid or primary key of the right tables of outer join
// *Action:   none
/
01095, 00000, "no suitable grouping_id found in MV with grouping sets"
// *Cause:    If materialized aggregate view contains grouping sets, then it also
//	      must contain the grouping_id() function. This function must contain
//	      all columns in the MV GROUP BY.
// *Action:   none
/
01096, 00000, "Materialized view with grouping sets contains duplicates"
// *Cause:    Materialized view with grouping sets contains duplicates and
//	      no rewrite is supported for it. For example, GROUP BY GROUPING
//	      SET ((a), (a)) is not supported for rewrite.
// *Action:   none
/
01097, 00000, "Materialized view with grouping sets has too long key"
// *Cause:    Materialized view with grouping sets has more that 64 different
//	      keys in its GROUP BY. No rewrite is supported then. 
// *Action:   none
/
01098, 00000, "mv %s clause more restrictive than query %s clause"
// *Cause:    The materialized view contains a selection condition in the
//            WHERE or HAVING clause that is more restrictive than the
//            corresponding selection condition in the request query.
// *Action:   Change the selection criteria in the request query to be at
//            least as restrictive as the selection criteria in the 
//            materialized view, or drop and recreate the materialized view
//            using less restrictive selection criteria.
/
01099, 00000, "non-tolerated reference to stale portion of mv for table %s"
// *Cause:    The materialized view is partially stale.  It is stale with 
//            respect to one or more partitions in one or more of its 
//            detail tables.  The request query references one or more
//            such detail partitions.
// *Action:   (1) Change the selection criteria of the request to restrict
//            the query to only the fresh portion of the materialized view,
//            or (2) ALTER {SYSTEM|SESSION} QUERY_REWRITE_INTEGRITY = 
//            STALE_TOLERATED or (3) refresh the materialized view.
/
01100, 00000, "containment check failed for mv, %s"
// *Cause:    The materialized view contains a selection condition in the
//            WHERE or HAVING clause that is more restrictive than the
//            corresponding selection condition in the request query.
// *Action:   Change the selection criteria in the request query to be at
//            least as restrictive as the selection criteria in the
//            materialized view, or drop and recreate the materialized view
//            using less restrictive selection criteria.
/
01101, 00000, "rollup(s) took place on mv, %s"
// *Cause:    If query's GROUP BY has one of the higher levels of columns
//            found in the materialized view, then the lower level columns
//            in the materialized view will be rolled up to compute the
//            desired results.
// *Action:   none
/ 
01102, 00000, "materialized view, %s, requires join back to table, %s, on column, %s"
// *Cause:    A column in the query does not appear in the materialized view.
//            Query rewrite will try to obtain this column from the base table,
//            by doing a join back to that column with the MV.
// *Action:   none
/
01103, 00000, "there is a remote table, %s, referenced in the query"
// *Cause:    Query rewrite does not support query with remote tables.
// *Action:   none
/
01104, 00000, "query is using flashback"
// *Cause:    Query rewrite does not support flashback.
// *Action:   none
/
01105, 00000, "no primary key or row id in MV, %s, is found for table, %s"
// *Cause:    In order to obtain a missing column, the materialized view needs to
//            join back to the above table. But it lacks the primary key or
//            rowid for the table.
// *Action:   none
/
01106, 00000, "materialized view, %s, is stale with respect to some partition(s) in the base table(s)"
// *Cause:    Query is requesting some data from the MV that are stale with respect to
//            some partitions in the base tables due to some updates.
// *Action:   refresh the stale partitions and rerun the query
/
01107, 00000, "Partition Containment Tracking (PCT) rewrite is not allowed"
// *Cause:    Query rewrite is disabled for PCT through a session parameter
// *Action:   none
/
01108, 00000, "maximum number of disjuncts exceeded in the query %s"
// *Cause:    Query rewrite engine cannot process the query if the number of
//            disjuncts (OR's)in the WHERE clause exceeds the maximum allowed
//            number. The number of disjuncts in the query and the maximum
//            allowed disjuncts are given at the end of the message in the 
//            form of (no of disjuncts in query, maximum disjuncts allowed).
// *Action:   none
/
01109, 00000, "while rewriting with MV, %s, table, %s, migrated to query delta"
// *Cause:    There was an unmatched join on the MV, so a table involved in the
//            join was pushed to the query delta to see if the query can be 
//            rewritten
// *Action:   none
/
01110, 00000, "query rewrite not possible with materialized view %s because it contains a join between tables (%s) that is not present in the query and that potentially eliminates rows needed by the query"
// *Cause:    All lossy joins in the materialized view must be present in the
//            query for query rewrite to occur.
// *Action:   none
//
/
01111, 00000, "no partition key or partition marker found in MV, %s"
// *Cause:    In order to do query rewrite with fresh partitions of an MV, the
//            MV should have a partiton key or partition marker.
// *Action:   none
/
01112, 00000, "WHERE clause of mv, %s, is more restrictive than query"
// *Cause:    The materialized view contains a selection condition in the
//            WHERE clause that is more restrictive than the corresponding
//            selection condition in the request query.
// *Action:   Change the selection criteria in the request query to be at
//            least as restrictive as the selection criteria in the
//            materialized view, or drop and recreate the materialized view
//            using less restrictive selection criteria.
/
01113, 00000, "HAVING clause of mv, %s, is more restrictive than query"
// *Cause:    The materialized view contains a selection condition in the
//            HAVING clause that is more restrictive than the corresponding
//            selection condition in the request query.
// *Action:   Change the selection criteria in the request query to be at
//            least as restrictive as the selection criteria in the
//            materialized view, or drop and recreate the materialized view
//            using less restrictive selection criteria.
01115, 00000, "rollup took place on a column with a window function"
// *Cause:    There was a rollup to aggregate the data on a column with
//            a window function.
// *Action:   none
01116, 00000, "window function computability checks failed"
// *Cause:    The window function in the query could not be computed from the
//            materialized view.
// *Action:   none
/
01120, 00000, "recursive rewrite not allowed here"
// *Cause:    This query was possibly rewritten with an equivalence which 
//            doesn't allow further rewrites.
// *Action:   none
/
01121, 00000, "materialized view, %s, is TRUSTED in ENFORCED integrity mode"
// *Cause:    A stale materialized view created with USING TRUSTED CONSTRAINTS
//            clause cannot be used when the query rewrite integrity mode is set
//            ENFORCED.
// *Action:   Alter materialized view such that it has the ENFORCED CONSTRAINTS
//            ALTER MATERIALIZED VIEW <mv> REFRESH USING ENFORCED CONSTRAINTS
/
01123, 00000, "self-join algorithm could not resolve multiple instances"
// *Cause:    The generalized self-join algorithm could not resolve the
//            mutliple instances, likely due to mismatch in joins or
//            measures
// *Action:   Consider using aliases in the query to match with the aliases
//            in the materialized view
/
01124, 00000, "set operator materialized view, %s, doesn't have a marker column"
// *Cause:    The specified set operator materialized view does not have
//            a marker column.
// *Action:   Add a marker column to the specified materialized view.
/
01125, 00000, "a more optimal set operator materialized view than %s was used to rewrite"
// *Cause:    Query Rewrite always chooses the most optimal set operator
//            materialized view based on parameters, such as cardinality
//            of the set operator materialized view, number of branches
//            that the set operator materialized view can rewrite etc.
//            The set operator materialized view specified was found to be
//            less optimal.
// *Action:   To force using a set operator materialized view, consider
//            using a rewrite hint.
/
01126, 00000, "query rewritten with set operator materialized view, %s"
// *Cause:    The specified set operator materialized view was used to
//            rewrite the given query.
// *Action:   none
/
01127, 00000, "query rewritten with materialized view(s), %s"
// *Cause:    The query was succesfully rewritten with multiple MVs
// *Action:   none
/
01128, 00000, "Multi MV rewrite is disabled "
// *Cause:    When multimv query rewrite is disabled, no multimv query rewrite
//            will take place.
// *Action:   Enable multimv query rewrite with ALTER SESSION SET
//            "_MULTIMV_QUERY_REWRITE_ENABLED" = true .
/
01129, 00000, "query has NO_MULTIMV_REWRITE hint "
// *Cause:    WHen the query has this hint no multimv rewrite will be
//            tried for this query
// *Action:   Remove hint from query
/
01130, 00000, "Multi MV rewrite not allowed if at least one query block has no MVs "
// *Cause:    When only multimv query rewrite is enabled, every query block should
//            have at least one MV in it's from clause
// *Action:   Disable only multimv query rewrite with ALTER SESSION SET
//            "_ONLY_MULTIMV_QUERY_REWRITE_ENABLED" = false .
/
01131, 00000, "query has ONLY_MULTIMV_REWRITE hint "
// *Cause:    When the query has this hint no multimv rewrite will be
//            done if the query has a query block with no MVs in the from
//            clause
// *Action:   Remove hint from query
/
01132, 00000, "query has a named array type column"
// *Cause:    When the query has a column of named array type, query rewrite
//            cannot be done
// *Action:   none
/
01133, 00000, "query has an ADT column"
// *Cause:    When the query has a column of ADT type, query rewrite
//            cannot be done
// *Action:   none
/
01134, 00000, "query has a hidden or nested table column"
// *Cause:    When the query has a hidden or nested table column, query 
//            rewrite cannot be done
// *Action:   none
/
01135, 00000, "query has an LOB column"
// *Cause:    When the query has a column stored in LOB, query rewrite
//            cannot be done
// *Action:   none
/
01136, 00000, "query has a nested table column"
// *Cause:    When the query has a nested table column, query rewrite
//            cannot be done
// *Action:   none
/
01137, 00000, "dimension level, %s, marked as SKIP WHEN NULL"
// *Cause:    Join back is not possible on a level marked as SKIP WHEN NULL
//            in a dimension
// *Action:   none
/
01138, 00000, "Query rewrite is not allowed."
// *Cause:    Query rewrite was not allowed during materialized view validation.
// *Action:   None
/
01139, 00000, "query rewrite with stale materialized view, %s, requires join back"
// *Cause:   Query rewrite was not allowed with a stale materialized view 
//           if join back to a base table is required. 
// *Action:   None
/
01150, 00000, "query did not rewrite"
// *Cause:    See the other messages from explain_rewrite() for explanation"
//
// *Action:   none
/
01151, 00000, "query was rewritten"
// *Cause:
//
// *Action:   none
/
01152, 00000, "multi-mv query rewrite not possible when there is a CONNECT BY clause"
// *Cause:
//
// *Action:   none
/
01153, 00000, "multi-mv query rewrite not possible when there is an inner query block"
// *Cause:
//
// *Action:   none
/
01154, 00000, "multi-mv query rewrite not possible when there is a START WITH clause"
// *Cause:
//
// *Action:   none
/
01155, 00000, "multi-mv query rewrite not possible when there is a Window Function"
// *Cause:
//
// *Action:   none
/
01156, 00000, "multi-mv query rewrite not possible when there is a grouping set"
// *Cause:
//
// *Action:   none
/
01157, 00000, "multi-mv query rewrite not possible when there is a set operator"
// *Cause:
//
// *Action:   none
/
01158, 00000, "multi-mv query rewrite not possible when there is a spread sheet"
// *Cause:
//
// *Action:   none
/
01159, 00000, "multi-mv query rewrite not possible when there is a nested aggregate"
// *Cause:
//
// *Action:   none
/
01160, 00000, "multi-mv query rewrite not possible when the number of disjuncts in the query exceeds 256"
// *Cause:
//
// *Action:   none
/
01161, 00000, "multi-mv query rewrite not possible when there is a self join"
// *Cause:
//
// *Action:   none
/
01162, 00000, "multi-mv query rewrite not possible when there is an RLS view" 
// *Cause:
//
// *Action:   none
/
01163, 00000, "multi-mv query rewrite not possible when there is an unsupported aggregate "
// *Cause:
//
// *Action:   none
/
01164, 00000, "multi-mv query rewrite not possible when there is a user bind variable"
// *Cause:
//
// *Action:   none
/
01165, 00000, "multi-mv query rewrite not possible when an ORDER BY column is not found in the SELECT list"
// *Cause:
//
// *Action:   none
/
01166, 00000, "multi-mv query rewrite not possible when an ORDER BY expression is not found in the SELECT list"
// *Cause:
//
// *Action:   none
/
01167, 00000, "multi-mv query rewrite not possible when a WHERE clause column comes from an innerquery block"
// *Cause:
//
// *Action:   none
/
01168, 00000, "query rewrite not possible when Fine Grain Auditing is present on a base table"
// *Cause     Query rewrite could not take place because Fine Grain Auditing (FGA)
//            was present on a base table in the query
// *Action:   none
/
01169, 00000, "query rewrite not possible for a CREATE or ALTER VIEW statement"
// *Cause:    Query rewrite could not take place because the incoming query was either 
//            a CREATE or ALTER VIEW statement
// *Action:   none
/
01170, 00000, "no matching objects found between query and materialized view %s"
// *Cause:    Matching objects were not found between the query and the materialized view.
//            Materialized view may contain only editioning views.
// *Action:   None
/
01202, 00000, "query rewrite not possible when OPTIMIZER_MODE is set to rule based"
// *Cause:    Query rewrite did not occur because the OPTIMIZER_MODE was set to
//            RULE.         
// *Action:   Change the optimizer mode using the OPTIMIZER_MODE parameter.
/
01203, 00000, "query rewrite not possible on DDL queries"
// *Cause:    If query contains any data definition operations, no query rewrite 
//            will take place.
// *Action:   none.
/
01204, 99999, "query rewrite not possible before view merging"
// *Cause:    Internal session parameter _QUERY_REWRITE_2 is set to FALSE
// *Action:   Change session parameter with ALTER SESSION command.
/
01205, 99999, "query rewrite not possible when query has slave SQL"
// *Cause:    Current prcess is a kxfx slave
// *Action    none
/
01207, 00000, "query rewrite not possible when query has a NOREWRITE hint"
// *Cause:    When query contains a NOREWRITE hint, no query rewrite will take
//            place for that query block.
// *Action:   Remove the NOREWRITE hint from the query
/
01208, 00000, "query rewrite not possible for update queries"
// *Cause:    If a query or part of it has any DML update operations, no query rewrite
//            will take place.
// *Action:   none
/
01209, 00000, "query rewritten with materialized view, %s, using text match algorithm"
// *Cause:    The query  was rewritten using a materialized view, because query text 
//            matched the definition of the materialized view
// *Action:   none
/
01210, 00000, "query rewrite not possible because no common table(s) found between materialized view %s and query"
// *Cause:    If the materialized view does not reference the base tables found in the
//            query, it cannot be used for rewrite
// *Action:   none
/
01211, 00000, "query rewrite not possible when stored outline does not have a rewrite hint"
// *Cause:    When using a stored outline, a rewrite hint is required for query rewrite
// *Action:   none
/
01212, 00000, "query rewrite not possible when SAMPLE clause is present in FROM"
// *Cause:    If a query contains a SAMPLE clause, query rewrite will not take place
// *Action:   none
/
01213, 00000, "query rewrite not possible when nested aggregates or CONNECT BY clause or START WITH clause or recursive WITH clause is present"
// *Cause:    If the query contains nested aggregates, CONNECT BY clause, or
//            START WITH clause, or recursive with clause, query rewrite will 
//            not take place
// *Action:   none
/
01214, 00000, "query rewrite not possible if OR is the top level operator in query WHERE clause"
// *Cause:    If the top-level operator in the WHERE clause is an OR and there is
//            more than one table in the FROM list, then query rewrite will not
//            take place.
// *Action:   none
/
01215, 00000, "query rewrite not possible when query GROUP BY clause has non-columns"
// *Cause:    No query rewrite, if there is no valid column in the GROUP BY clause.
// *Action:   none
/
01218, 00000, "query rewrite is likely more expensive due to a single table match between materialized view and query"
// *Cause:    Materialized join view is more expensive for rewrite than using
//            the base table
// *Action:   none.
/
01219, 00000, "no suitable materialized view found to rewrite this query"
// *Cause:    There doesn't exist any materialized view in the database that 
//            can be used to rewrite this query.
// *Action:   Consider creating a new materialized view.
/
01220, 00000, "materialized view, %s, is disabled, stale or unusable"
// *Cause:    Materialized view is probably disabled or stale.
// *Action:   Consider enabling the materialized view for rewrite or refreshing
//            it.
/
01222, 00000, "materialized view %s is less optimal than %s"
// *Cause:    Query Rewrite always chooses the most optimal materialized view
//            based on certain parameters, such as cardinality of the
//            materialized view, number of joins etc. The materialized view
//            specified was found to be less optimal.
// *Action:   To force using a materialized view, consider using a rewrite hint.
/
01241, 00000, "query measure cannot be derived from the materialized view %s"
// *Cause:    If a measure (such as SUM, AVERAGE) in the query cannot be matched
//            or computed from the materialized view, it will not be used for rewrite.
// *Action:   none
/
01244, 00000, "join back could not be done on a view for %s"
// *Cause:    Query Rewrite will not occur if a join back to a table is required to find
//            any missing columns.
// *Action:   none
/
01246, 00000, "join back on correlated columns not allowed (%s)"
// *Cause:    Query Rewrite will not occur if a join back is required on a column that 
//            is referenced by a sub-query.
// *Action:   none
/
01247, 00000, "join back cannot be done on a materialized view that does not have an aggregate (%s)"
// *Cause:    Query Rewrite can occur by means of a complex join back only during a
//            MAV rewrite. 
// *Action:   none
/
01248, 00000, "materialized view does not have the join back level(s) (%s)"
// *Cause:    Query Rewrite requires joining back to level of a dimension to 
//            find missing information.
// *Action:   Consider creating a dimension.
/
/
01251, 00000, "query rewrite cannot perform rollup due to the presence of a window function"
// *Cause:    No query rewrite if a window function is present on a column that
//            requires a roll-up to compute a measure.
// *Action:   none
/
01256, 00000, "query rewrite not possible for this DDL statement"
// *Cause:    Some SELECT statements which are part of a DDL expression may be
//            eligible for rewrite.  These include CREATE AS SELECT and CREATE
//            OUTLINE statements. The given query expression is a DDL expression,
//            which doesn't fall in this category.
// *Action:   none
/
01257, 00000, "query rewrite not possible for this DML statement"
// *Cause:    Current DML is being done using an updatable view, so it is not
//            eligible for rewrite.
// *Action:   none
/
01263, 00000, "query rewrite not possible when query references a dictionary table or view"
// *Cause:    Query rewrite is not allowed if query references any dictionary
//            tables/views.
// *Action:   none
/
01271, 00000, "query rewrite not possible because a join in materialized view %s with table %s has eliminated some rows found in query"
// *Cause:    A join from the materialized view to any table that eliminates
//            some rows should be be present in the query. Otherwise query
//            rewrite will not occur.
// *Action:   none
/
01273, 00000, "query rewrite not possible because materialized view %s has a join not found in query"
// *Cause:    Query rewrite may not be possible if the materialized view has some
//            joins that query does not have
// *Action:   none
/
01274, 00000, "query rewrite not possible because materialized view %s and query have different number of joins between tables %s"
// *Cause:    Query rewrite may not be possible if the query has some joins that the
//            materialized view does not have between the same pair of tables.
// *Action:
/
01279, 00000, "query rewrite not possible because DML operation occurred on a table referenced by materialized view %s"
// *Cause:    If any dependent tables of a materialized view undergoes a DML
//            operation, query rewrite may be restricted depending on the 
//            query rewrite integrity mode for the session. In this situation,
//            query rewrite will take place only if the rewrite integrity
//            mode is STALE_TOLERATED.
// *Action:   Consider refreshing the materialized view changing the rewrite
//            integrity mode to STALE_TOLERATED.
/
01281, 00000, "query rewrite not possible because either a primary key or a row id is required to join table %s with MV %s"
// *Cause:    In order to obtain a missing column, the materialized view needs to
//            join back to the above table. But it lacks the primary key or
//            rowid for the table.
// *Action:   none
/

01284, 00000, "materialized view %s has an anchor table %s not found in query"
// *Cause:    A table in a materialized view is an anchor, (a) if it is not
//            joined to any other table or (b) joined to other tables but
//            each of its joins is not guaranteed to provide all the rows or joined 
//            with the above table being child-side table. If an anchor which is present
//            in the materialized view is not found in the query, then
//            query rewrite will not take place.
//
// *Action:   none
/
01293, 00000, "anti-join marker not found in materialized view with joins"
// *Cause:    Materialized view has outer join while the query has inner join.
//	      For rewrite to succeed MV must have an anti-join marker like
//	      the rowid or primary key of the right tables of outer join
// *Action:   none
/
01295, 00000, "no suitable grouping_id found in materialized view with grouping sets"
// *Cause:    If materialized view contains grouping sets, then it also
//	      must contain the grouping_id() function. This function must contain
//	      all columns in the MV GROUP BY.
// *Action:   none
/
01296, 00000, "query rewrite not possible because materialized view contains duplicate grouping sets"
// *Cause:    Materialized view with grouping sets contains duplicates and
//	      no rewrite is supported for it. For example, GROUP BY GROUPING
//	      SET ((a), (a)) is not supported for rewrite.
// *Action:   none
/
01297, 00000, "query rewrite not possible because materialized view with grouping sets has more than 176 different keys"
// *Cause:    Materialized view with grouping sets has more that 176 different
//	      keys in its GROUP BY. No rewrite is supported then. 
// *Action:   none
/
01298, 00000, "materialized view %s clause more restrictive than query %s clause"
// *Cause:    The materialized view contains a selection condition in the
//            WHERE or HAVING clause that is more restrictive than the
//            corresponding selection condition in the request query.
// *Action:   Change the selection criteria in the request query to be at
//            least as restrictive as the selection criteria in the 
//            materialized view, or drop and recreate the materialized view
//            using less restrictive selection criteria.
/
01299, 00000, "query rewrite not possible because materialized view %s is partially stale"
// *Cause:    The materialized view is partially stale.  It is stale with 
//            respect to one or more partitions in one or more of its 
//            detail tables.  The request query references one or more
//            such detail partitions.
// *Action:   (1) Change the selection criteria of the request to restrict
//            the query to only the fresh portion of the materialized view,
//            or (2) ALTER {SYSTEM|SESSION} QUERY_REWRITE_INTEGRITY = 
//            STALE_TOLERATED or (3) refresh the materialized view.
/
01303, 00000, "query rewrite not possible because query references a remote table %s"
// *Cause:    Query rewrite does not support query with remote tables.
// *Action:   none
/
01304, 00000, "query rewrite not possible because query is using flashback"
// *Cause:    Query rewrite does not support flashback.
// *Action:   none
/
01307, 00000, "Partition Containment Tracking (PCT) rewrite is not allowed"
// *Cause:    Query rewrite is disabled for PCT through a session parameter
// *Action:   none
/
01308, 00000, "number of 'OR's in query exceeded the maximum value %s"
// *Cause:    Query rewrite engine cannot process the query if the number of
//            disjuncts (OR's)in the WHERE clause exceeds the maximum allowed
//            number. The number of disjuncts in the query and the maximum
//            allowed disjuncts are given at the end of the message in the 
//            form of (no of disjuncts in query, maximum disjuncts allowed).
// *Action:   none
/
01316, 00000, "window function could not be computed from materialized view %s"
// *Cause:    The window function in the query could not be computed from the
//            materialized view.
// *Action:   none
/
01321, 00000, "query rewrite not possible because materialized view %s has TRUSTED constraints in ENFORCED integrity mode"
// *Cause:    A stale materialized view created with USING TRUSTED CONSTRAINTS
//            clause cannot be used when the query rewrite integrity mode is set
//            ENFORCED.
// *Action:   Alter materialized view such that it has the ENFORCED CONSTRAINTS
//            ALTER MATERIALIZED VIEW <mv> REFRESH USING ENFORCED CONSTRAINTS
/

01332, 00000, "query rewrite not possible because query has a named array type column"
// *Cause:    When the query has a column of named array type, query rewrite
//            cannot be done
// *Action:   none
/
01333, 00000, "query rewrite not possible because query has an ADT column"
// *Cause:    When the query has a column of ADT type, query rewrite
//            cannot be done
// *Action:   none
/
01334, 00000, "query rewrite not possible because query has a hidden or nested table column"
// *Cause:    When the query has a hidden or nested table column, query 
//            rewrite cannot be done
// *Action:   none
/
01335, 00000, "query rewrite not possible because query has an LOB column"
// *Cause:    When the query has a column stored in LOB, query rewrite
//            cannot be done
// *Action:   none
/
01336, 00000, "the materialized view you specified (%s) was not used to rewrite the query"
// *Cause:    A materialized view specified by the user in the input was not
//            used to rewrite the query, either because query rewrite failed
//            or another more optimal materialized view was used to rewrite.
// *Action:   none
/
01339, 00000, "rewrite not supported on inline view aggregate"
// *Cause:    Query has an inline view with an aggregate. Such inline views
//            cannot be matched to any inline views in materialized views.
// *Action:   none
/
01340, 00000, "no inline view match found between query and materialized view(s)"
// *Cause:    Query's inline view does not have a match with any inline views
//            in the materialized view
// *Action:   none
/
01341, 00000, "joins between materialized view %s and query inline views are different"
// *Cause:    There is a mismatch between the joins in the query and materialized 
//            view inline views
// *Action:   none
/
01342, 00000, "query rewrite not possible because query has full outer join"
// *Cause:    When query block has a table involved in full outer join,
//            query rewrite cannot be done
// *Action:   none
/
01343, 00000, "general inline view rewrite not possible on remote objects"
// *Cause:    The general inline view rewrite could not take place because 
//            the query had remote objects
// *Action:   none
/
01344, 00000, "general inline view rewrite not possible on this WHERE clause construct"
// *Cause:    The general inline view rewrite was not supported with this 
//            WHERE clause construct
// *Action:   none
/
01345, 00000, "general inline view rewrite not possible when inline view has subquery"
// *Cause:    The general inline view rewrite could not take place because
//            there were subqueries
// *Action:   none
/
01346, 00000, "general inline view rewrite not possible with nested inline views"
// *Cause:    General inline view rewrite cannot take place with nested inline
//            views
// *Action:   none
/
01347, 00000, "a query inline view could not be matched with any materialized view inline view"
// *Cause:    No materialized view inline views were found to match with a
//            query inline view
// *Action:   none
/
01348, 00000, "an invalid predicate was found in an inline view"
// *Cause:    An inline view in the query contained an invalid WHERE clause predicate
// *Action:   none
/
01349, 00000, "general inline view cannot be supported on this inline view"
// *Cause:    Certain inline views are unsupported in general inline view rewrite
// *Action:   none
/
01350, 00000, "query rewrite cannot support this inline view"
// *Cause:    Certain inline views are unsupported in general inline view rewrite
// *Action:   none
/
01351, 00000, "query inline view has no matching objects with any materialized view inline views"
// *Cause:    There were no matching objects between the query inline view and
//            materialized view inline views
// *Action:   none
/
01352, 00000, "SELECT lists of the query and materialized view inline views do not match"
// *Cause:    Query inline view's and materialized view inline view's SELECT
//            list items did not match.
// *Action:   none
/
01353, 00000, "no query rewrite on remote objects unless integrity mode is set to stale_tolerated"
// *Cause:    Query rewrite's integrity mode should be set to stale_tolerated
//            for query rewrite to occur on queries with remote objects
// *Action:   Set the session parameter, QUERY_REWRITE_INTEGRITY to stale_tolerated
/
01354, 00000, "query rewrite is disabled for remote objects"
// *Cause:    Query rewrite was disabled internally for queries referencing remote objects.
// *Action:   none
/
01355, 00000, "multi-mv rewrite not possible in the presence of remote objects"
// *Cause:    Multi-MV rewrite not possible for queries referencing remote objects.
// *Action:   none
/
01356, 00000, "query rewrite against cube-organized materialized views not possible when OLAP option is off"
// *Cause:    Query rewrite against cube-organized materialized views was not possible because the OLAP option was off.
// *Action:   none
/
01357, 00000, "query rewritten with a stale materialized view, %s, by on query computation"
// *Cause:    Query is rewritten with a stale materialized view by doing
//            on-query computation
// *Action:   none
/
01509, 00000, "equivalence, %s, matched query text"
// *Cause:    The query  was rewritten using an equivalence, because query
//            text matched the source statement for this equivalence.
// *Action:   none
/
01522, 00000, "a more optimal equivlanece than %s was used to rewrite"
// *Cause:    Query Rewrite always chooses the most optimal equivalence
//            based on certain parameters, such as cardinality of the
//            equivalence, number of joins etc. The equivalence view
//            specified was found to be less optimal.
// *Action:   none
/
01526, 00000, "query rewrite is disabled for equivalence, %s"
// *Cause:    Query rewrite could not use this equivalence, because this 
//            equivalence was created as disabled.
// *Action:   Enable this equivalence using alter_rewrite_equivalence 
//	      procedure from package, dbms_advanced_rewrite.
/
01533, 00000, "query rewritten with equivalence, %s"
// *Cause:    The specified equivalence was used to rewrite the given query.
// *Action:   none
/
01565, 00000, "equivalence, %s, cannot compute measure, %s, in the query"
// *Cause:    If a measure in the query cannot be computed  using the
//            measures in the equivalence, then query rewrite will not
//            occur.
// *Action:   none
/
01567, 00000, "equivalence, %s, cannot support the query measure, %s"
// *Cause:    An attempt was made to push a grouping function through an
//            expression specified in the query to transform a measure. Query
//            rewrite will not occur if this measure transformation failed.
// *Action:   none
/
01572, 00000, "equivalence, %s, and query have different joins between tables, %s"
// *Cause:    Anchors, if any, in the equivalenceand query match. But the joins between 
//            these anchors in the equivalence and query are different.
// *Action:   none
/
01582, 00000, "Joining equivalence, %s, with table, %s, not possible"
// *Cause:    A column in the query is not found in the equivalence. To obtain the
//            column, a join back of equivalence to the table by means of either the
//            primary key, foreign key or rowid of the table is required. But
//            join backs are not allowed for equivalence rewrite
// *Action:   none
/
01584, 00000, "equivalence, %s, has anchor, %s, not found in query"
// *Cause:    If an anchor which is present in the equivalence is not
//            found in the query, then query rewrite will not take place.
// *Action:   none
/
01601, 00000, "rollup(s) took place on equivalence, %s"
// *Cause:    If query's GROUP BY has one of the higher levels of columns
//            found in the equivalence, then the lower level columns
//            in the equivalence will be rolled up to compute the
//            desired results.
// *Action:   none
/
01602, 00000, "equivalence, %s, requires join back to table, %s, on column, %s"
// *Cause:    A column in the query does not appear in the equivalence.
//            Query rewrite will try to obtain this column from the base table,
//            by doing a join back to that column with a materialized view. But
//            join backs are not allowed for equivalence rewrite as the required
//            constraints are not guaranteed to be found on the tables in the
//            destination statement of the equivalence.
// *Action:   none
/
01610, 00000, "a lossy join in equivalence, %s, between tables, %s, not found in query"
// *Cause:    All lossy joins in the equivalence must be present in the
//            query for query rewrite to occur.
// *Action:   none
//
/
01617, 00000, "equivalence definition is disabled"
// *Cause:    There is an equivalence defition that could have been probably
//            used by query rewrite to rewrite the query. But this equivalence
//            is disabled.
// *Action:   none
/
01618, 00000, "equivalence, %s, is enabled for text match rewrite only"
// *Cause:    This equivalence was created for text match rewrite only
//
// *Action:   none
/
01619, 00000, "equivalence cannot be used in ENFORCED integrity mode"
// *Cause:    An equivalence cannot be used for query rewrite when
//            the query rewrite integrity mode is set to ENFORCED.
// *Action:   none
/
01621, 00000, "join backs to base tables not allowed with an equivalence "
// *Cause:    Query rewrite needs to do a join back to a base table column
//            to answer this query. But join back is not allowed for an
//            equivalence rewrite
// *Action:   none
/
01709, 00000, "query rewritten with equivalence, %s, using text match algorithm"
// *Cause:    The query  was rewritten using an equivalence  because query text
//            matched the definition of the equivalence
// *Action:   none
/ 
01784, 00000, "equivalence %s has an anchor table %s not found in query"
// *Cause:    A table in an equivalence is an anchor, if (a) it is not
//            joined to any other table or (b) it is joined to other tables but
//            each of its joins is not guaranteed to provide all the rows or joined 
//            with the above table being child-side table. If an anchor which is present
//            in the equivalence is not found in the query, then
//            query rewrite will not take place.
//
// *Action:   none
/
01837, 00000, "recursive query rewrite on equivalence, %s, not permitted "
// *Cause:    The source and destination statements of this equivalence MV
//            are possibly identical. A recursive rewrite on this equivalence
//            can lead to an infinite loop and thus not permitted.
// *Action:   none
/
01838, 00000, "semijoin transformation not supported on equivalence"
// *Cause:    There was a semijoin transformation attempted on an equivalence
//            rewrite. Currently this is not allowed
// *Action:   none
/

// **** Numbers from 02001 to 03000 are allocated for EXPLAIN MV *****
//
//
// 0 
02001, 00000, "clustered mv container table"
// *Cause:    The capability in question is not supported on a materialized 
//            view that has a clustered container table.
// *Action:   Recreate the materialized view using a conventional container 
//            table.
/
02002, 00000, "DISTINCT aggregate measure in SELECT list"
// *Cause:    The capability in question is not supported when the materialized
//            view uses the DISTINCT qualifier on an aggregate function.
// *Action:   Remove the DISTINCT qualifier.
/
02003, 00000, "aggregate function nested within an expression"
// *Cause:    The capability in question is not supported when the 
//            materialized view contains an aggregate function invocation 
//            nested within an outer expression.
// *Action:   Re-phrase the expression such that the aggregate function 
//            invocation is not nested.
/
02004, 00000, "grouping column omitted from SELECT list"
// *Cause:    The capability in question is not supported when the materialized
//            view contains a column or expression in the GROUP BY clause 
//            that is not also present in the list of output select
//            expressions.
// *Action:   Include all GROUP BY expressions in the output select list.
/
02005, 00000, "named view in FROM list"
// *Cause:    The capability in question is not supported when a named view
//            appears in the FROM list.
// *Action:   Remove the named view from the FROM list.
/
02006, 00000, "subquery in FROM list"
// *Cause:    The capability in question is not supported when a subquery
//            appears in the FROM list.
// *Action:   Remove the subquery from the FROM list.
/
02007, 00000, "multiple instances of the same table or view"
// *Cause:    The capability in question is not supported when the same table
//            or view occurs more than once in the FROM list.
// *Action:   Re-phrase the query to avoid multiple instances of the same
//            table.  For instance, 
/
02008, 00000, "non-join filter condition in WHERE or HAVING clause"
// *Cause:    The capability in question is not supported when the materialized
//            view has a selection condition (an expression not representing
//            a join) in the WHERE or HAVING clauses.
// *Action:   Remove the selection filter expression.
/
02009, 00000, "non-inner join"
// *Cause:    The capability in question is only supported with inner joins.
// *Action:   Re-phrase the query using an inner join. Remove any outer joins.
/
02010, 00000, "join predicate with operator other than equals (=)"
// *Cause:    The capability in question is not supported when the materialized
//            uses a relationship operator other than equals ("=") in a join
//            in the WHERE clause. This is known as a non-equijoin.
// *Action:   Re-phrase the query to avoid the non-equijoin.
/
02011, 00000, "a HAVING clause is present"
// *Cause:    The capability in question is not supported when the materialized
//            view uses a HAVING clause.
// *Action:   Remove the HAVING clause.
/
02012, 00000, "a CONNECT BY clause is present"
// *Cause:    The capability in question is not supported when the materialized
//            view uses a CONNECT BY clause.
// *Action:   Re-phrase the query to avoid use of the CONNECT BY clause.
/
02013, 00000, "SELECT list includes a RAW data type expression"
// *Cause:    The capability in question is not supported when the materialized
//            view uses RAW data type in an expression.
// *Action:   Remove the reference to the RAW expression.
/
02014, 00000, "GROUP BY expression other than a column"
// *Cause:    The capability in question is not supported when the materialized
//            view uses an expression other than a simple column reference
//            in the GROUP BY clause.
// *Action:   Re-phrase the query to use only simple column expressions in 
//            the GROUP BY clause.
/
02015, 00000, "Index Organized Table (IOT) present in FROM list"
// *Cause:    The capability in question is not supported when the materialized
//            view references an Index Organized Table in the FROM list.
// *Action:   Remove the reference to the Index Organized Table.
/
02016, 00000, "clustered table in FROM list"
// *Cause:    The capability in question is not supported when the materialized
//            view references a clustered table in the FROM list.
// *Action:   Remove the reference to the clustered table in the FROM list.
/
02017, 00000, "subquery present in the HAVING clause"
// *Cause:    The capability in question is not supported when the materialized
//            view uses a subquery in the HAVING clause.
// *Action:   Re-phrase the query to avoid the subquery in the HAVING clause.
/
02018, 00000, "subquery present in the WHERE clause"
// *Cause:    The capability in question is not supported when the materialized
//            view uses a subquery in the WHERE clause.
// *Action:   Re-phrase the query to avoid the subquery in the WHERE clause.
/
02019, 00000, "mv references another mv in FROM clause"
// *Cause:    The capability in question is not supported when the materialized
//            view is nested (i.e., when it references another materialized 
//            view in its FROM list). 
// *Action:   Re-phrase the query to avoid reference to the other materialized
//            view.
/
02020, 00000, "container column not in SELECT list with NOT NULL constraint"
// *Cause:    The capability in question is not supported when the materialized
//            view's container table has a column that does not correspond to
//            an output expression in the select list, and that column has a 
//            NOT NULL constraint.  This situation can result in problems
//            during refresh since any new rows inserted into the materialized
//            view will set that column to NULL.
// *Action:   Disable or remove the NOT NULL constraint.
/
02021, 00000, "set operator encountered in mv"
// *Cause:    The capability in question is not supported when the materialized
//            view uses set operators such as UNION, UNION ALL, MINUS, etc.
// *Action:   Re-phrase the query to avoid the use of set operators.
/
02022, 00000, "aggregate selections"
// *Cause:    The capability in question is not supported when the materialized
//            view uses an aggregate expression in the HAVING clause.
// *Action:   Re-phrase the query to avoid the use of an aggregate in the
//            HAVING clause.
/
02023, 00000, "nested cursor"
// *Cause:    The capability in question is not supported when the materialized
//            view uses a nested cursor expression.
// *Action:   Re-phrase the query to avoid use of a nested cursor expression.
/
02024, 00000, "no GROUP BY clause"
// *Cause:    The capability in question is not supported when the materialized
//            view does not use a GROUP BY clause.
// *Action:   Re-phrase the query to use a GROUP BY clause.
/
02025, 00000, "no aggregate functions"
// *Cause:    The capability in question is not supported when the materialized
//            view uses no aggregate functions.
// *Action:   Re-phrase the query to use aggregate functions.
/
02026, 00000, "non-AND conjunction in WHERE clause"
// *Cause:    The capability in question is not supported when the materialized
//            view uses a conjunction other than AND (such as OR) in the WHERE
//            clause.
// *Action:   Re-phrase the query to avoid use of the non-AND conjunction.
/
02027, 00000, "group by ROLLUP"
// *Cause:    The capability in question is not supported when the materialized
//            view uses the ROLLUP operator in the GROUP BY clause.
// *Action:   Re-phrase the query to avoid use of the ROLLUP operator.
/
02028, 00000, "group by CUBE"
// *Cause:    The capability in question is not supported when the materialized
//            view uses the CUBE operator in the GROUP BY clause.
// *Action:   Re-phrase the query to avoid use of the CUBE operator.
/
02029, 00000, "PL/SQL function invocation"
// *Cause:    The capability in question is not supported when the materialized
//            view invokes a PL/SQL function.
// *Action:   Re-phrase the query to avoid use of PL/SQL functions.
/
02030, 00000, "reduced precision specified for prebuilt mv"
// *Cause:    The capability in question is not supported when the materialized
//            view is created with the WITH REDUCED PRECISION clause.
// *Action:   DROP the materialized view and re-create it without using the
//            WITH REDUCED PRECISION clause.
/
02031, 00000, "materialized view cannot support any type of query rewrite"
// *Cause:    The materialized view cannot be used with query rewrite.
// *Action:   Examine the other messages and documentation to determine the
//            cause of the problem.
/
02032, 00000, "no joins are present in the WHERE clause"
// *Cause:    The capability in question is not supported when the materialized
//            view includes no join conditions in the WHERE clause.
// *Action:   Re-phrase the query to include a join.
/
02033, 00000, "no filter conditions are present in the WHERE clause"
// *Cause:    The capability in question is not supported when the materialized
//            view includes no filter selection conditions in the WHERE clause.
// *Action:   Add a filter condition.
/
02034, 00000, "no joins are present in the HAVING clause"
// *Cause:    The capability in question is not supported when the materialized
//            view includes no joins in the HAVING clause.
// *Action:   Re-phrase the query to include a join.
/
02035, 00000, "no filter conditions are present in the HAVING clause"
// *Cause:    The capability in question is not supported when the materialized
//            view includes no filter condition in the HAVING clause.
// *Action:   Re-phrase the query to include a join.
/
02036, 00000, "in-list present in mv"
// *Cause:    The capability in question is not supported when the materialized
//            view uses an IN list.
// *Action:   Re-phrase the query to avoid the use of IN lists.
/
02037, 00000, "cannot evaluate constant expression at compile time"
// *Cause:    The capability in question is not supported when the materialized
//            view uses a compile-time non-constant expression in a filter
//            condition in the WHERE or HAVING clauses.  For example, 
//            WHERE X=1 uses a compile-time constant expression in a filter 
//            condition.  WHERE X=MY_PLSQL_FUNCTION() uses a compile-time
//            non-constant expression in a filter condition.
// *Action:   Re-phrase the query to avoid the use of a compile-time 
//            non-constant expressions in filter conditions.
/
02038, 00000, "Partition Change Tracking (PCT) is enabled"
// *Cause:    The Partition Change Tracking (PCT) capability is supported for
//            this materialized view. 
// *Action:   No action is needed.
/
02039, 00000, "top level mv query uses grouping sets"
// *Cause:    The capability in question is not supported when the materialized
//            view use grouping sets.
// *Action:   Re-phrase the query to avoid use of grouping sets.
/
02040, 00000, "top level query contains GSets and the key is too long for rewrite"
// *Cause:    The capability in question is not supported when the materialized
//            view uses a grouping set with too many keys.
// *Action:   Reduce the number of grouping set keys.
/
02041, 00000, "nested aggregate function"
// *Cause:    The capability in question is not supported when the materialized
//            view nests an aggregate function invocation as an argument to
//            another aggregate function.
// *Action:   Re-phrase the query to avoid the nested aggregate function
//            invocation.
/
02042, 00000, "view or subquery in from list"
// *Cause:    The capability in question is not supported when the materialized
//            view references a view or subquery in the FROM list.
// *Action:   Re-phrase the query to avoid the use of views or subqueries  in
//            in the FROM list.
/
// 02043 is unused, replaced by 02012
/
02044, 00000, "ORDER BY clause in mv"
// *Cause:    The capability in question is not supported when the materialized
//            view includes an ORDER BY clause.
// *Action:   Remove the ORDER BY clause.
/
02045, 00000, "START WITH clause in mv"
// *Cause:    The capability in question is not supported when the materialized
//            view includes a START WITH clause.
// *Action:   Re-phrase the query to avoid the use of the START WITH clause.
/
// 02046 is unused, replaced by 02021
/
02047, 00000, "window function in mv"
// *Cause:    The capability in question is not supported when the materialized
//            view uses a window function.
// *Action:   Re-phrase the query to avoid the use of window functions.
/
02048, 00000, "outer join in mv"
// *Cause:    The capability in question is not supported when the materialized
//            view uses an outer join.
// *Action:   Re-phrase the query to avoid the use of outer joins.
/
02049, 00000, "subquery using the ANY clause in mv"
// *Cause:    The capability in question is not supported when the materialized
//            view uses the ANY clause with a subquery.
// *Action:   Re-phrase the query to avoid the use of the ANY clause.
/
02050, 00000, "subquery using the ALL clause in mv"
// *Cause:    The capability in question is not supported when the materialized
//            view uses the ALL clause with a subquery.
// *Action:   Re-phrase the query to avoid the use of the ALL clause.
/
02051, 00000, "subquery using the NOT EXISTS clause in mv"
// *Cause:    The capability in question is not supported when the materialized
//            view uses the NOT EXISTS with a subquery.
// *Action:   Re-phrase the query to avoid the use of the NOT EXITS clause.
/
02052, 00000, "subquery using a select list in mv"
// *Cause:    The capability in question is not supported when the materialized
//            view uses a select list.
// *Action:   Re-phrase the query to avoid the use of a select list.
/
02053, 00000, "collection subquery in mv"
// *Cause:    The capability in question is not supported when the materialized
//            view uses a collection subquery.
// *Action:   Re-phrase the query to avoid the use of collection subqueries.
/
02054, 00000, "DISTINCT clause in select list in mv"
// *Cause:    The capability in question is not supported when the materialized
//            view uses the DISTINCT clause in the select list.
// *Action:   Re-phrase the query to avoid the use of the DISTINCT clause.
/
02055, 00000, "mv references a packed object table or view"
// *Cause:    The capability in question is not supported when the materialized
//            view references a packed object table or view.
// *Action:   Re-phrase the query to avoid the use of the packed object tables
//            or views.
/
02056, 00000, "correlated variable and outer join in mv"
// *Cause:    The capability in question is not supported when the materialized
//            view uses a correlated variable and an outer join.
// *Action:   Re-phrase the query to avoid the use of the correlated variables
//            or outer joins.
/
02057, 00000, "ROWNUM referenced in mv"
// *Cause:    The capability in question is not supported when the materialized
//            view references the ROWNUM function.
// *Action:   Re-phrase the query to avoid the use of the ROWNUM function.
/
02058, 00000, "set operator in mv and compatibility mode is less than 9.0"
// *Cause:    The capability in question is not supported when the materialized
//            view uses a set operator and the compatibility mode is less than
//            9.0.
// *Action:   Re-phrase the query to avoid the use of set operators or set
//            the compatibility mode to 9.0 or greater.
/
02059, 00000, "join may produce duplicate rows in mv"
// *Cause:    The capability in question is not supported when the materialized
//            view contains a join condition that can result in duplicate
//            rows in the materialized view.
// *Action:   Re-phrase the query to avoid the occurrence of duplicate rows
//            in the materialized view.
/
// 02060 is unused, replaced by 02011
/
02061, 00000, "one or more joins present in mv"
// *Cause:    The capability in question is not supported when the materialized
//            view contains joins.
// *Action:   Re-phrase the query to avoid the use of the joins.
/
02062, 00000, "GROUP BY clause in mv"
// *Cause:    The capability in question is not supported when the materialized
//            view uses the GROUP BY clause.
// *Action:   Re-phrase the query to avoid the use of the GROUP BY clause.
/
02063, 00000, "aggregate function in mv"
// *Cause:    The capability in question is not supported when the materialized
//            view uses an aggregate function.
// *Action:   Re-phrase the query to avoid the use of the aggregate functions.
/
02064, 00000, "subquery in mv"
// *Cause:    The capability in question is not supported when the materialized
//            view uses a subquery.
// *Action:   Re-phrase the query to avoid the use of the subqueries.
/
// 02065 is unused, replaced by 02021
/
02066, 00000, "Oracle error: see RELATED_NUM and RELATED_TEXT for details"
// *Cause:    The capability in question is not supported because an attempt
//            to create the materialized view would result in an error. 
// *Action:   Examine the associated Oracle error code in the RELATED_NUM
//            column and the Oracle error text in the RELATED_TEXT column
//            and address the problem.
/
02067, 00000, "no partition key or PMARKER or join dependent expression in select list"
// *Cause:    The capability in question is not supported when the materialized
//            view unless the select list (and group by list if a GROUP BY
//            clause is present) includes the partition key or 
//            PMARKER function reference to the table in question or an expression
//            join dependent on the partitioning column of the table in question.
// *Action:   Add the partition key or a PMARKER function reference or a join dependent
//            expression to the select list (and the GROUP BY clause, if present).
/
02068, 00000, "relation is not a partitioned table"
// *Cause:    The capability in question is not supported when the relation
//            in question is not a partitioned table. 
// *Action:   Change the query to reference a partitioned table.
/
02069, 00000, "PCT not supported with multi-column partition key" 
// *Cause:    The capability in question is not supported when the table in
//            is partitioned on a multi-column key.
// *Action:   Re-phrase the query to reference a table partitioned on a single
//            column key.
/
02070, 00000, "PCT not supported with this type of partitioning"
// *Cause:    The capability in question is not supported when the table in 
//            question uses certain types of partitioning.
// *Action:   Re-phrase the query to reference a table that is uses a type of
//            partitioning that is supported for this capability. 
/
02071, 00000, "internal error: undefined PCT failure code"
// *Cause:    An internal Oracle error has occurred. 
// *Action:   Report the problem through your normal support channels.
/
02072, 00000, "requirements not satisfied for fast refresh of nested mv"
// *Cause:    The capability in question is not supported because one or
//            more of the requirements for this capability have not been
//            satisfied.
// *Action:   Examine the relevant nested materialized view documentation 
//            in the Warehouse Guide and address the problem.
/
02073, 00000, "non-primary key RepAPI mv is not fast refreshable"
// *Cause:    Fast refresh is supported for RepAPI materialized views only 
//            if it is also a primary key materialized view.
// *Action:   Re-design the materialized view to be a primary key materialized
//            view.
/
02074, 00000, "materialized view over Heterogeneous Services link"
// *Cause:    The capability in question is not supported when the materialized
//            view uses a heterogeneous link.
// *Action:   Re-design the materialized view to avoid the use of the 
//            heterogeneous links.
/
02075, 00000, "materialized view on synonym"
// *Cause:    The capability in question is not supported when the materialized
//            view references a synonym, if the compatible parameter is earlier
//            than 10.2.0.
// *Action:   Re-phrase the query to avoid the use of the synonyms.
/
02076, 00000, "sequence number in the mv log is newer than last refresh"
// *Cause:    The timestamp of the sequence number in the mv log was after 
//            the last refresh time.
// *Action:   A complete refresh is required before the next fast refresh.
/
02077, 00000, "mv log is newer than last full refresh"
// *Cause:    The capability in question is not supported when the relevant 
//            materialized view log was created after the creation 
//            or most recent complete refresh of the materialized view. 
// *Action:   Perform a complete refresh of the materialized view. 
/
02078, 00000, "mv log must have new values"
// *Cause:    The capability in question is not supported when the relevant
//            materialized view log omits new values. 
// *Action:   Re-create the materialized view log using the NEW VALUES clause.
/
02079, 00000, "mv log must have ROWID"
// *Cause:    The capability in question is not supported when the relevant
//            materialized view log omits ROWIDs. 
// *Action:   Re-create the materialized view log using the ROWID clause.
/
02080, 00000, "mv log must have primary key"
// *Cause:    The capability in question is not supported when the relevant
//            materialized view log omits primary keys. 
// *Action:   Re-create the materialized view log using the PRIMARY KEY clause.
/
02081, 00000, "mv log does not have all necessary columns"
// *Cause:    The capability in question is not supported when the relevant
//            materialized view log omits columns referenced in the select
//            list of the materialized view. 
// *Action:   Re-create the materialized view log and include all columns
//            referenced in the select list.
/
02082, 00000, "problem with mv log"
// *Cause:    The capability in question is not supported because of a problem
//            the materialized view log in question. 
// *Action:   Examine the relevant materialized view log and fast refresh
//            documentation in the Warehouse Guide and address the problem.
/
02083, 00000, "mv references PL/SQL function that maintains state"
// *Cause:    The capability in question is not supported when the materialized
//            view references a PL/SQL function that maintains state and which
//            may not return the same value every time it is invoked against
//            the same set of rows.
// *Action:   Re-phrase the query to avoid such a PL/SQL function.  Or modify
//            the PL/SQL function to avoid state maintenance and change
//            its declaration accordingly.
/
02084, 00000, "DISTINCT clause on a duplicate sensitive aggregate function"
// *Cause:    The capability in question is not supported when the materialized
//            view uses the DISTINCT clause in this context.
// *Action:   Re-phrase the query to avoid the use of the DISTINCT clause.
/
// 02085 is unused, replaced by 02003
/
02086, 00000, "mv uses the MIN or MAX aggregate functions"
// *Cause:    The capability in question is not supported when the materialized
//            view uses the MIN or MAX function.
// *Action:   Re-phrase the query to avoid the use of the MIN or MAX functions.
/
02087, 00000, "materialized view uses the approximate aggregate detail functions"
// *Cause:    The capability in question was not supported when the materialized
//            view used the approximate aggregate detail function.
// *Action:   Rephrase the query to avoid using the approximate aggregate
//            detail function.
/
02088, 00000, "mv omits at least one grouping key from the select list"
// *Cause:    The capability in question is not supported when the materialized
//            view omits any grouping expressions from the select list.
// *Action:   Include all GROUP BY expressions in the select list.
/
// 02089 is unused, replaced by 02014
/
02090, 00000, "SELECT includes an expression that is not just a column"
// *Cause:    The capability in question is not supported when the materialized
//            view uses an expression in the select list that is not a simple
//            column reference.
// *Action:   Re-phrase the query to avoid the use of the expressions that 
//            are not simple column references.
/
02091, 00000, "mv references a non-repeatable or session-sensitive expression"
// *Cause:    The capability in question is not supported when the materialized
//            view uses an expression that may not return the same value each
//            time it is invoked against the same set of rows or that may
//            return different values depending on session parameters.
// *Action:   Re-phrase the query to avoid the use of such expressions.
/
02092, 00000, "mv references a sequence number"
// *Cause:    The capability in question is not supported when the materialized
//            view references a sequence number.
// *Action:   Re-phrase the query to avoid the reference to sequence numbers.
/
02093, 00000, "mv uses an object REF clause"
// *Cause:    The capability in question is not supported when the materialized
//            view uses an object REF clause.
// *Action:   Re-phrase the query to avoid the use of an object REF clause.
/
// 02094 is unused, replaced by 02024
// 02095 is unused, replaced by 02007  
/
02096, 00000, "mv references a named view"
// *Cause:    The capability in question is not supported when the materialized
//            view references a view.
// *Action:   Re-phrase the query to avoid references to views.
/
// 02097 is unused, replaced by 02006
/
// 02098 is unused, replaced by 02015
/
02099, 00000, "mv references a remote table or view in the FROM list"
// *Cause:    The capability in question is not supported when the materialized
//            view references a remote table or view in the FROM list.
// *Action:   Re-phrase the query to avoid references to remote tables or 
//            views.
/
// 02100 is unused, replaced by 02019
/
02101, 00000, "mv references a synonym in the FROM list"
// *Cause:    The capability in question is not supported when the materialized
//            view references a synonym in the FROM list.
// *Action:   Re-phrase the query to avoid the reference to the synonym.
/
02102, 00000, "mv FROM list references an object in the SYS schema"
// *Cause:    The capability in question is not supported when the materialized
//            view references an object in the SYS schema.
// *Action:   Re-phrase the query to avoid the reference to the SYS schema.
/
// 02103 is unused, replaced by 02026
/
02104, 00000, " aggregate function in a filter condition in the HAVING clause"
// *Cause:    The capability in question is not supported when the materialized
//            view references an aggregate function in a filter condition in
//            the HAVING clause.
// *Action:   Re-phrase the query to avoid the use of aggregates in filter 
//            conditions in the HAVING clause.
/
// 02105 is unused, replaced by 02010   
/
02106, 00000, "mv uses a filter condition in the WHERE or HAVING clause"
// *Cause:    The capability in question is not supported when the materialized
//            view includes a filter condition in the WHERE or HAVING clause.
// *Action:   Re-phrase the query to avoid the use of filter conditions in
//            the WHERE or HAVING clauses.
/
// 02107 is unused, replaced by 02023
// 02108 is unused, replaced by 02017 
// 02109 is unused, replaced by 02018
// 02110 is unused, replaced by 02011
// 02111 is unused, replaced by 02013
/
02112, 00000, "top level query has  LEFT OUTER, RIGHT OUTER or FULL OUTER join"
// *Cause:    The capability in question is not supported when the materialized
//            view uses these types of joins.
// *Action:   Re-phrase the query to avoid the use of these types of joins.
/
02113, 00000, "expression in select list references multiple tables or views"
// *Cause:    The capability in question is not supported when the materialized
//            view includes an expression in the select list that references
//            multiple tables or views.
// *Action:   Re-phrase the query to avoid the use of the such expressions.
/
02114, 00000, "no GROUP BY clause, no aggregates and not >= 9.0 compatibility"
// *Cause:    The capability in question is not supported when the materialized
//            view has no GROUP BY clause, no aggregates and compatibility
//            mode is less than 9.0.
// *Action:   Re-phrase the query to avoid the include a GROUP BY clause
//            or an aggregate function.  Or set compatibility mode to
//            9.0 or greater.
/
02115, 00000, "mv references a remote object and is refreshed ON COMMIT"
// *Cause:    The capability in question is not supported when the materialized
//            view references a remote object and is refreshed ON COMMIT.
// *Action:   Re-phrase the query to avoid the reference to the remote 
//            object or alter the materialized view to be refreshed ON DEMAND.
/
02116, 00000, "mupltiple master sites"
// *Cause:    The capability in question is not supported when the materialized
//            view references multiple remote objects that reside at different
//            remote instances.
// *Action:   Re-phrase the query to avoid the use of multiple master sites.
/
02117, 00000, "missing GROUPING_ID or GROUPING functions on GROUP BY column(s)"
// *Cause:    The capability in question is not supported when the materialized
//            view uses grouping sets but omits the relevant GROUPING_ID or
//            GROUPING functions.
// *Action:   Re-phrase the query to include the relevant GROUPING_ID or 
//            GROUPING functions. 
/
02118, 00000, "duplicate grouping sets"
// *Cause:    The capability in question is not supported when the materialized
//            view redundantly references grouping sets.
// *Action:   Re-phrase the query to avoid the use of the redundant grouping
//            sets.
/
02119, 00000, "internal error while analyzing required supporting aggregates"
// *Cause:    An internal Oracle error has occurred.
// *Action:   Report the problem through your normal support channels.
/
02120, 00000, "compatibility mode must be 9.0 or higher"
// *Cause:    The capability in question is not supported when the 
//            compatibility mode is less than 9.0.
// *Action:   Set the compatibility mode to 9.0 or higher.
/
02121, 00000, "set operator in a context not supported for fast refresh"
// *Cause:    The capability in question is not supported when the materialized
//            view uses a set operator in this context.
// *Action:   Re-phrase the query to avoid the use of the set operator.
/
02122, 00000, "compatibility mode must be 8.1 or higher"
// *Cause:    The capability in question is not supported when the 
//            compatibility mode is less than 8.1.
// *Action:   Set the compatibility mode to 8.1 or higher.
/
02123, 00000, "subquery and UNION mv's must be primary key mv's"
// *Cause:    The capability in question is not supported when the materialized
//            view is not a primary key materialized view and uses subqueries
//            or the union operator in this context.
// *Action:   Re-create the materialized view as a primary key materialized
//            view.
/
02124, 00000, "object type in WHERE clause"
// *Cause:    The capability in question is not supported when the materialized
//            view references an object type in the WHERE clause.
// *Action:   Re-phrase the query to avoid the reference to the object type.
/
02125, 00000, "subquery join conditions don't meet requirements for capability"
// *Cause:    The capability in question is not supported when the materialized
//            view uses a subquery in a join in this way.
// *Action:   Examine the relevant replication documentation concerning 
//            subquery materialized views and address the problem.
/
02126, 00000, "no rowid at master site"
// *Cause:    The capability in question is not supported when the materialized
//            view references a remote site that does not support rowids.
// *Action:   Re-phrase the query to avoid the reference to the remote site.
/
02127, 00000, "not supported for this type mv by Oracle version at master site"
// *Cause:    The capability in question is not supported when the materialized
//            view uses certain constructs and references an older version, 
//            remote Oracle instance. 
// *Action:   Re-phrase the query to avoid the use of the construct or upgrade
//            the remote Oracle instance.
/
02128, 00000, "does not meet the requirements of a primary key mv"
// *Cause:    The capability in question is not supported when the materialized
//            view fails to meet the requirements of a primary key materialized
//            view.
// *Action:   Examine the relevant primary key materialized view replication
//            documentation and address the problem.
/
02129, 00000, "join or filter condition(s) are complex"
// *Cause:    The capability in question is not supported when the materialized
//            view uses a complex join or filter condition.
// *Action:   Re-phrase the query to simplify the join or filter condition.
/
02130, 00000, "expression not supported for fast refresh"
// *Cause:    The capability in question is not supported when the materialized
//            view references certain, complex expressions.
// *Action:   Re-phrase the query to simplify the expression.
/
02131, 00000, "agg(expr) requires correspondng SUM(expr) function"
// *Cause:    The capability in question is not supported when the materialized
//            view uses certain aggregate functions but omits an invocation
//            of the SUM function on the same argument.
// *Action:   Add the SUM function to the select list.
/
02132, 00000, "agg(expr) requires correspondng COUNT(expr) function"
// *Cause:    The capability in question is not supported when the materialized
//            view uses certain aggregate functions but omits an invocation 
//            of the COUNT function on the same argument.
// *Action:   Add the COUNT function to the select list.
/
02133, 00000, "agg(expr) requires correspondng MIN(expr) function"
// *Cause:    The capability in question is not supported when the materialized
//            view uses certain aggregate functions but omits an invocation
//            of the MIN function on the same argument.
// *Action:   Add the MIN function to the select list.
/
02134, 00000, "agg(expr) requires correspondng MAX(expr) function"
// *Cause:    The capability in question is not supported when the materialized
//            view uses certain aggregate functions but omits an invocation
//            of the MAX function on the same argument.
// *Action:   Add the MAX function to the select list.
/
02135, 00000, "agg(expr) requires correspondng AVG(expr) function"
// *Cause:    The capability in question is not supported when the materialized
//            view uses certain aggregate functions but omits an invocation
//            of the AVG function on the same argument.
// *Action:   Add the AVG function to the select list.
/
02136, 00000, "agg(expr) requires correspondng VARIANCE(expr) function"
// *Cause:    The capability in question is not supported when the materialized
//            view uses certain aggregate functions but omits an invocation
//            of the VARIANCE function on the same argument.
// *Action:   Add the VARIANCE function to the select list.
/
02137, 00000, "agg(expr) requires correspondng STDDEV(expr) function"
// *Cause:    The capability in question is not supported when the materialized
//            view uses certain aggregate functions but omits an invocation
//            of the STDDEV function on the same argument.
// *Action:   Add the STDDEV function to the select list.
/
02138, 00000, "agg(expr) requires correspondng agg(expr*expr) function"
// *Cause:    The capability in question is not supported when the materialized
//            view uses certain aggregate functions but omits an invocation
//            of that same aggregate function on the square of the same
//            argument.
//             
// *Action:   Add an invocation of the same aggregate function on the square
//            of the same argument (that is, the argument multiplied by 
//            itself).
/
02139, 00000, "agg(expr) requires correspondng agg(expr+expr) function"
// *Cause:    The capability in question is not supported when the materialized
//            view uses certain aggregate functions but omits an invocation
//            of that same aggregate function on the same argument added
//            to the same argument.
// *Action:   Add the indicated aggregate function to the select list.
/
02140, 00000, "agg(expr) requires correspondng SUM(expr*expr) function"
// *Cause:    The capability in question is not supported when the materialized
//            view uses certain aggregate functions but omits an invocation
//            of the SUM function on the square of the same argument (the
//            argument multiplied by itself).
// *Action:   Add the SUM function on the square of the argument.
/
02141, 00000, "the reason why the capability is disabled has escaped analysis"
// *Cause:  The EXPLAIN_MV analysis engine has failed to capture the reason
//          why the given capability is not possible.
// *Action: Report the problem through your normal problem reporting channels.
/
02142, 0000, "COUNT(*) is not present in the select list"
// *Cause:  The materialized view query omits COUNT(*) from the select list.
// *Action: Add COUNT(*) to the select list.
/
02143, 00000, "SUM(expr) without COUNT(expr)"
// *Cause:  SUM(expr) occurs in the select list without a corresponding 
//          COUNT(expr).
// *Action: Add COUNT(expr) to the select list.
/
02144, 00000, "aggregate functions are present without a GROUP BY clause"
// *Cause:  One or more aggregate functions are present in the select list
//          but a GROUP BY clause is not used.
// *Action: Add a GROUP BY clause.
/
02145, 00000, "GROUP BY clause is present but no aggregate functions are used"
// *Cause:  A GROUP BY clause is used but no aggregate functions are present
//          in the select list.
// *Action: Add an aggregate function to the select list.
/
02146, 00000, "see the reason why REFRESH_FAST_AFTER_INSERT is disabled"
// *Cause:  REFRESH_FAST_AFTER_ONETAB_DML is disabled for the same reason that
//          REFRESH_FAST_AFTER_INSERT is disabled.
// *Action: Correct the problem with REFRESH_FAST_AFTER_INSERT.
/
02147, 00000, "default date format is sensitive to session settings"
// *Cause:  You have specified a date conversion operation using either
//          the default format or an incomplete format.  The default date 
//          format or an incomplete format is sensitive to session settings,
//          and therefore may not be reproducible across different 
//          environments.
// *Action: Specify a complete date format string.
/
02148, 00000, "many to many subquery joins require 9.0 compatibility or higher"
// *Cause:  You have specified a many to many join in your materialized view
//          while running in less than 9.0 compatibility mode.
// *Action: Set your compatibility mode to 9.0 or higher or restructure the
//          materialized view query.
/
02149, 00000, "ON COMMIT with this MV requires 9.0 compatibility or higher"
// *Cause:  You have specified a materialized view that uses some combination
//          of the following:
//             joins
//             aggregation
//             filter conditions in the WHERE clause
//             a remote relation in the FROM list
//             a SUM(x) function without a corresponding COUNT(x) function
//             an omitted COUNT(*) aggregate function
//             a MIN() or MAX() aggregate function 
//          in combination with the REFRESH ON COMMIT option while running in 
//          less than 9.0 compatibility mode.
// *Action: Set your compatibility mode to 9.0 or higher or restructure the
//          materialized view query.
/
02150, 00000, "select lists must be identical across the UNION operator"
// *Cause:  You have specified a materialized view using the UNION operator
//          and the respective queries on each side of the UNION operator do
//          not have the same select list.  The RELATED_NAME column shows
//          the alias of the first different select list item.  The RELATED_NUM
//          column shows the offset from the SELECT keyword to the start of
//          this select list item.
// *Action: Restructure the materialized view query such that the respective
//          sides of the UNION operator have identical select lists.
/
02151, 00000, "subquery or named view in FROM list and < 9.0 compatibility"
// *Cause:  You have specified a materialized view that references a
//          subquery or named view in its top level FROM list while running
//          in less than 9.0 compatibility mode.
// *Action: Set compatibility mode to 9.0 or higher or restructure the
//          materialized view query.
/
02152, 00000, "subquery or named view in FROM list even after view merging"
// *Cause:  You have specified a materialized view that references a
//          subquery ore named view in its top level FROM list that could
//          not be merged during the view merging process.
// *Action: Restructure the materialized view query.
/
02153, 00000, "inline view or subquery in FROM list not supported for this type MV"
// *Cause:  You have specified a materialized view that references an inline view
//          or a subquery. The indicated capability is not supported for this type 
//          of materialized view.
// *Action: Restructure the materialized view query.
/
02154, 00000, "MV is not fast refreshable even with view merging"
// *Cause:  You have a materialized view with view in the FROM clause, however
//          it does not meet the criteria for fast refresh after view merging.
// *Action: Restructure the materialized view query to remove the offending
//          view or the complex construct in the view.
/
02155, 00000, "top level query with GSETS does not contain a proper grouping_id"
// *Cause: 
// *Action: 
/
02156, 00000, "top level query with GSETS contains duplicates"
// *Cause: 
// *Action:
/
02157, 00000, "PCT is not possible on any of the detail tables in the materialized view"
// *Cause:
// *Action:
/
02158, 00000, "general rewrite is not possible or PCT is not possible on any of the detail tables"
// *Cause:
// *Action:
/
02159, 00000, "query rewrite is disabled on the materialized view"
// *Cause:
// *Action:
/
02160, 00000, "the materialized view is specified as NEVER REFRESH"
// *Cause:
// *Action:
/
02161, 00000, "see the reason why REFRESH_FAST_AFTER_ONETAB_DML is disabled"
// *Cause:  REFRESH_FAST_AFTER_ANY_DML is disabled for the same reason that
//          REFRESH_FAST_AFTER_ONETAB_DML is disabled.
// *Action: Correct the problem with REFRESH_FAST_AFTER_ONETAB_DML.
/
02162, 00000, "the detail table does not have a materialized view log"
// *Cause: The fast refresh cannot be performed because the master table
//         does not contain a materialized view log.
// *Action: Use the CREATE MATERIALIZED VIEW LOG command to create a
//          materialized view log on the master table.
/
02163, 0000, "cannot use object id columns from materialized view log"
// *Cause:  The materialized view log either does not have object id columns
//          logged, or the timestamp associated with the object id columns is
//          more recent than the last refresh time.
// *Action: A complete refresh is required before the next fast refresh.
//          Add object id columns to the materialized view log, if required.
/
02164, 00000, "the materialized view is BUILD DEFERRED"
// *Cause:
// *Action:
/
02165, 00000, "mv log does not have sequence #"
// *Cause:
// *Action:
/
02166, 00000, "problem with loader log"
// *Cause:   
// *Action:
/
02167, 00000, "the materialized view is upgraded from a previous version that does not support PCT"
// *Cause:
// *Action:
/
02168, 00000, "the materialized view has a WITH clause in the top level query"
// *Cause:
// *Action:
/
02169, 00000, "the materialized view contains partition extended table name"
// *Cause:  Fast refresh of materialized aggregate views and/or materialized
//          join views are not supported if they were defined using partition 
//          extended table names.
// *Action: Create the fast refreshable materialized view without using
//          partition extended table names or create the materialized view as
//          a complete refresh materialized view. 
/
02170, 00000, "tables must be identical across the UNION operator"
// *Cause:  You have specified a materialized view using the UNION operator
//          and the tables on each side of the UNION operator do not match.
//          Fast refresh is not supported in this context.
// *Action: Restructure the materialized view query such that the respective
//          sides of the UNION operator have the same table.
/
02171, 00000, "the materialized view has a join operation in the outer UNION block"
// *Cause:  Fast refresh is not supported if a materialized view having the 
//          UNION operator contains a join operation.
// *Action: Rewrite the materialized view query without the join.
/
02172, 00000, "the SELECT list does not have the rowids of all the detail tables"
// *Cause:
// *Action:
/
02173, 00000, "the unique constraints does not exist on the join columns of the inner table"
// *Cause: If there are outer joins, unique constraints must exist on the join columns
//         of the inner table. Othwerwise, the materialized view can not be fast
//         refreshable.
// *Action:
/
02174, 00000, "the materialized view does not have a UNION ALL marker column"
// *Cause: For a materialized view with UNION ALL to be fast refreshable, it 
//         must have a UNION ALL marker column. This is a constant column, 
//         at the same ordinal position in each query block and must have 
//         distinct values in each query block.
// *Action:  Add a UNION ALL marker column to each query block in the UNION
//           ALL query defining the materialized view.
/
02175, 00000, "some query block in UNION ALL MV is not fast refreshable"
// *Cause: For a materialized view with UNION ALL to be fast refreshable, 
//         each query block must conform to a fast refreshable materialized 
//         join view or materialized aggregate view.
// *Action: Check each query block in the UNION ALL to ensure it is either
//          a materialized view with joins or aggregates.
/
02176, 00000, "MV with UNION ALL in a view is too complex"
// *Cause: If a materialized view has a view whose definition involves a 
//         UNION ALL query, then the materialized view's defining query 
//         cannot have any clauses other than SELECT or FROM. Other clauses 
//         such as WHERE, HAVING, CONNECT BY, or GROUP BY are not allowed. 
//         Further more, the FROM clause should have only one item.
// *Action: Remove any clauses besides SELECT and FROM from the
//          materialized view's defining query.
/
02177, 00000, "MV with UNION ALL in a view must match the view's SELECT list"
// *Cause: If a materialized view has a view whose definition involves 
//         a UNION ALL query, then the materialized view's select list 
//         must match the underlying view's select list exactly. It must 
//         not have any expressions and must not have add/drop/reorder 
//         columns from the underlying view.
// *Action: Use select * when defining a materialized view with a 
//          UNION ALL in a view.
/
02178, 00000, "MV has a view with UNION ALL that is not fast refreshable"
// *Cause: The materialized view has a view whose definition involves 
//         a UNION ALL query that does not satisfy the requirements for 
//         fast refresh.
// *Action: Check that the defining query of the view being referenced in 
//          the materialized view satisfies conditions for fast refresh
//          of a UNION ALL materialized view.
/
02179, 00000, "MV with UNION ALL requires compatibility >= 9.2"
// *Cause: The setting of the COMPATIBLE initialization parameter is 
//         less than 9.2.0.
// *Action: Set COMPATIBLE to 9.2.0 or higher.
/
02180, 00000, "no primary key constraint in the master table"
// *Cause: The explain_mview assumes that the materialized view is going
//         to be created as the Primary Key materialized view. A Primary
//         Key materialized view can not be created if the base table does
//         not have a primary key constraint.
// *Action: Add a primary key constraint to the base table, or create the
//          materialized view as Rowid MV by specifying the WITH ROWID
//          option. If the materialized view is a Rowid MV, then it should
//          be able to do complete refresh and even fast refresh, given
//          that the materialized view log on the master table has a rowid.
/
02181, 00000, "a SPREADSHEET clause is present"
// *Cause:    The capability in question is not supported when the materialized
//            view uses a SPREADSHEET clause.
// *Action:   Remove the SPREADSHEET clause.
/
02182, 00000, "PCT is enabled through a join dependency"
// *Cause:    The capability in question is not supported when the materialized
//            view does not contain some expression join dependent on the 
//            partitioning key of relation in question in the select list.
//            For definition of join dependency, please look at Oracle
//            documentation.
// *Action:   Change the query to contain the partitioning key
/
02183, 00000, "Expression to enable PCT not in PARTITION BY of analytic function or SPREADSHEET"
// *Cause:    The capability in question is not supported when the expression is not 
//            in the PARTITION BY clause
// *Action:   Change the query so that the expression is in the PARTITION BY
/
02184, 00000, "Expression to enable PCT cannot be rolled up"
// *Cause:    The capability in question is not supported when the expression
//            is rolled up 
// *Action:   Change the query so that the expression is not rolled up
/
02185, 00000, "no partition key or PMARKER in select list"
// *Cause:    The capability in question is not supported when the materialized
//            view unless the select list (and group by list if a GROUP BY
//            clause is present) includes either the partition key of or a
//            PMARKER function reference to the table in question.
// *Action:   Add the partition key or a PMARKER function reference to the 
//            select list (and the GROUP BY clause, if present).
/
02186, 00000, "PARTITIONED OUTER JOIN is present"
// *Cause:    The capability in question is not supported when the materialized
//            view has PARTITIONED OUTER JOIN.
// *Action:   Remove PARTITIONED OUTER JOIN.
/
02187, 00000, "materialized view on external table"
// *Cause:    The capability in question is not supported when the materialized
//            view references an external table.
// *Action:   Re-phrase the query to avoid the use of the external tables.
/
02188, 00000, "named view in FROM list not supported for this type MV"
// *Cause:  You have specified a materialized view that references a named view
//          The indicated capability is not supported for this type of 
//          materialized view.
// *Action: Restructure the materialized view query.
/
02189, 00000, "materialized view definition changes"
// *Cause:  The definition of the materialized view has changed. Usually
//          redefining the synonym or table in the definition can cause this.
//          The materialized view can not be fast refreshed. 
// *Action: Complete refresh or recreate the materialized view. 
/
02190, 00000, "SQL PIVOT or UNPIVOT is present"
// *Cause:    The capability in question is not supported when the materialized
//            view has sql PIVOT or UNPIVOT operation.
// *Action:   Remove sql PIVOT or UNPIVOT.
/
02191, 00000, "types of MV logs are not compatible"
// *Cause:    The capability in question is not supported when the materialized
//            view is defined on detail tables which do not have a compatible
//            type of materialized view logs, either all timestamp based or
//            commit SCN based.
// *Action:   Complete refresh or recreate materialized view logs.
/
02192, 00000, "commit SCN based MV log is not in consistent state"
// *Cause:    The capability in question is not supported when the relevant 
//            materialized view log is not in consistent state due to the
//            failure when populating the mapping table of SYS.SNAP_XCMT$.
// *Action:   Perform a complete refresh of the materialized view. 
/
02193, 00000, "unsupported MV on commit SCN based MV logs"
// *Cause:    The capability in question is not supported when the relevant 
//            materialized view is not supported to be defined on detail tables
//            which have commit SCN based MV logs.
// *Action:   None.
/
02194, 00000, "CASE expressions present in materialized view"
// *Cause:    The capability in question is not supported when the materialized
//            view contain CASE expressions.
// *Action:   Re-phrase the query to avoid the use of CASE expressions.
/
02195, 00000, "PCT FAST REFRESH is not possible if query contains a named view"
// *Cause:    The capability in question was not supported because the 
//            materialized view query contained a named view.
// *Action:   Rephrase the query to avoid the use of named views.
/
02196, 00000, "PCT FAST REFRESH is not possible if query contains an inline view"
// *Cause:    The capability in question was not supported because the 
//            materialized view query contained an inline view.
// *Action:   Rephrase the query to avoid the use of an inline view.
/
02197, 00000, "PCT FAST REFRESH is not possible if query contains a remote table"
// *Cause:    The capability in question was not supported because the 
//            materialized view query contained a remote table.
// *Action:   Rephrase the query to avoid the use of a remote table.
/
02198, 00000, "PCT FAST REFRESH is not possible if HAVING clause includes a subquery"
// *Cause:    The capability in question was not supported because the 
//            materialized view query HAVING clause included a subquery.
// *Action:   Rephrase the query to avoid the use of a subquery in 
//            the HAVING clause.
/
02199, 00000, "PCT FAST REFRESH is not possible if WHERE clause includes a subquery"
// *Cause:    The capability in question was not supported because the 
//            materialized view query WHERE clause included a subquery.
// *Action:   Rephrase the query to avoid the use of a subquery in the 
//            WHERE clause.
/
02200, 00000, "PCT FAST REFRESH is not possible if query contains LEFT OUTER, RIGHT OUTER or FULL OUTER JOIN"
// *Cause:    The capability in question was not supported because the 
//            materialized view query contained  LEFT OUTER, RIGHT OUTER 
//            or FULL OUTER JOIN.
// *Action:   Rephrase the query to avoid the use of  LEFT OUTER, RIGHT OUTER 
//            or FULL OUTER JOIN.
/
02201, 00000, "PCT FAST REFRESH is not possible if there is a self join or self cartesian product in query"
// *Cause:    The capability in question was not supported because the 
//            materialized view query contained self join of self cartesian 
//            product in the query.
// *Action:   Rephrase the query to avoid the use of self joins or 
//            self cartesian product in the query.
/
02202, 00000, "PCT FAST REFRESH is not possible if query has ORDER BY clause"
// *Cause:    The capability in question was not supported because the 
//            materialized view query contained an ORDER BY clause.
// *Action:   Rephrase the query to avoid the use of the ORDER BY clause.
/
02203, 00000, "PCT FAST REFRESH is not possible if query has set operand query blocks"
// *Cause:    The capability in question was not supported because the 
//            materialized view query contained set operand query blocks.
// *Action:   Rephrase the query to avoid the use of set operand query blocks.
/
02204, 00000, "PCT FAST REFRESH is not possible if query has an inner query"
// *Cause:    The capability in question was not supported because the 
//            materialized view query contained an inner query.
// *Action:   Rephrase the query to avoid the use of the inner query.
/
02205, 00000, "PCT FAST REFRESH is not possible if there is a subquery inside select-list"
// *Cause:    The capability in question was not supported because the 
//            materialized view query contained a subquery inside a select-list.
// *Action:   Rephrase the query to avoid the use of a subquery inside 
//            a select-list.
/
02206, 00000, "PCT FAST REFRESH is not possible because this query join may produce extra duplicate rows"
// *Cause:    The capability in question was not supported because the 
//            materialized view contained a join condition that can result in duplicate
//            rows in the materialized view.
// *Action:   Rephrase the query to avoid the occurrence of duplicate rows
//            in the materialized view.
/ 
02207, 00000, "PCT FAST REFRESH is not possible for complex queries"
// *Cause:    The capability in question was not supported because 
//            the materialized view query was too complex.
// *Action:   No action is necessary.
/
02208, 00000, "subquery using the NOT IN clause in materialized view"
// *Cause:    The capability in question was not supported when the materialized
//            view uses NOT IN with a subquery.
// *Action:   Rephrase the query to avoid the use of the NOT IN clause. 
/
02209, 00000, "a MATCH_RECOGNIZE clause is present"
// *Cause:    The capability in question was not supported when the
//            materialized view used a MATCH_RECOGNIZE clause.
// *Action:   Remove the MATCH_RECOGNIZE clause.
/

03000, 00000, ""
// *Document: NO
//            Access Advisor text items 03000-03500

03001, 00000, "Specifies logging of messages to the advisor journal"
// *Document: NO
//            JOURNALING parameter description

03002, 00000, "Unused"
// *Document: NO
//            

03003, 00000, "When enabled, the SQL Access Advisor will weigh the cost of creation of the access structure against the frequency of the query and potential improvement in the query execution time"
// *Document: NO
//            CREATION_COST parameter description

03004, 00000, "The expiration time in days for the current SQL Access Advisor task"
// *Document: NO
//            DAYS_TO_EXPIRE parameter description

03005, 00000, "The default owner for the new index recommendations"
// *Document: NO
//            DEF_INDEX_OWNER parameter description

03006, 00000, "The default tablespace for new index recommendations"
// *Document: NO
//            DEF_INDEX_TABLESPACE parameter description

03007, 00000, "The default owner for the new materialized view recommendations"
// *Document: NO
//            DEF_MVIEW_OWNER parameter description

03008, 00000, "The default tablespace for new materialized view recommendations"
// *Document: NO
//            DEF_MVIEW_TABLESPACE parameter description

03009, 00000, "The default tablespace for new materialized view log recommendations"
// *Document: NO
//            DEF_MVLOG_TABLESPACE parameter description

03010, 00000, "When enabled, the SQL Access Advisor will consider the impact of index maintenance and materialized view refresh in determining the recommendations"
// *Document: NO
//            DML_VOLATILITY parameter description

03011, 00000, "The end time filter for selecting data"
// *Document: NO
//            END_TIME parameter description

03012, 00000, "Deprecated.  Please use ANALYSIS_SCOPE"
// *Document: NO
//            EVALUATION_ONLY parameter description

03013, 00000, "Deprecated.  Please use ANALYSIS_SCOPE"
// *Document: NO
//            EXECUTION_TYPE parameter description

03014, 00000, "The format SQL Access Advisor uses to construct new index names"
// *Document: NO
//            INDEX_NAME_TEMPLATE parameter description

03015, 00000, "Specifies either a limited or comprehensive analysis operation, where limited runs in less time but may produce slightly lower quality results"
// *Document: NO
//            MODE parameter description

03016, 00000, "Specifies the types of recommendations generated by SQL Access Advisor"
// *Document: NO
//            ANALYSIS_SCOPE parameter description

03017, 00000, "The format used to construct new materialized view names"
// *Document: NO
//            MVIEW_NAME_TEMPLATE parameter description

03018, 00000, "Deprecated.  Please use RANKING_MEASURE."
// *Document: NO
//            ORDER_LIST task parameter description

03019, 00000, "Specifies whether materialized views should be refreshed ON_DEMAND or ON_COMMIT"
// *Document: NO
//            REFRESH_MODE parameter description

03020, 00000, "The default date and time format when displayed in scripts and reports"
// *Document: NO
//            REPORT_DATE_FORMAT task parameter description

03021, 00000, "The maximum number of SQL statements to be analyzed"
// *Document: NO
//            SQL_LIMIT task parameter description

03022, 00000, "The start time filter for selecting data"
// *Document: NO
//            START_TIME parameter description

03023, 00000, "Contains the amount of space adjustment that can be consumed by SQL Access Advisor recommendations"
// *Document: NO
//            STORAGE_CHANGE parameter description

03024, 00000, "The database version under which the recommendations must be used"
// *Document: NO
//            COMPATIBILITY parameter description

03025, 00000, "Contains a fully qualified list of tables that are eligible for tuning"
// *Document: NO
//            VALID_TABLE_LIST parameter description

03026, 00000, "Contains a fully qualified list of tables that are NOT eligible for tuning"
// *Document: NO
//            INVALID_TABLE_LIST parameter description

03027, 00000, "Describes the level of application coverage the workload represents"
// *Document: NO
//            WORKLOAD_SCOPE parameter description

03028, 00000, "Contains a list of application actions that are eligible for tuning"
// *Document: NO
//            VALID_ACTION_LIST parameter description

03029, 00000, "Contains a list of application actions that are NOT eligible for tuning"
// *Document: NO
//            INVALID_ACTION_LIST parameter description

03030, 00000, "Contains a list of application modules that are eligible for tuning"
// *Document: NO
//            VALID_MODULE_LIST parameter description

03031, 00000, "Contains a list of application modules that are NOT eligible for tuning"
// *Document: NO
//            INVALID_MODULE_LIST parameter description

03032, 00000, "Contains a list of users who execute SQL statements that are eligible for tuning"
// *Document: NO
//            VALID_USERNAME_LIST parameter description

03033, 00000, "Contains a list of users who execute SQL statements that are NOT eligible for tuning"
// *Document: NO
//            INVALID_USERNAME_LIST parameter description

03034, 00000, "Contains a list of text items that can appear in SQL statements.  If a statement does not contain one the specified items, then it is not eligible for tuning"
// *Document: NO
//            VALID_SQLSTRING_LIST parameter description

03035, 00000, "Contains a list of text items that can appear in SQL statements.  If a statement contains one the specified items, then it is not eligible for tuning"
// *Document: NO
//            INVALID_SQLSTRING_LIST parameter description

03036, 00000, "Unused"
// *Document: NO
//            Unused

03037, 00000, "Deprecated.  Please use VALID_ACTION_LIST"
// *Document: NO
//            ACTION_LIST parameter description

03038, 00000, "The maximum time that an analysis can execute"
// *Document: NO
//            TIME_LIMIT parameter description

03039, 00000, "The default tablespace for new partition recommendations"
// *Document: NO
//            DEF_PARTITION_TABLESPACE parameter description

03040, 00000, "Unsupported"
// *Document: NO
//            General description

03041, 00000, "When enabled, an IMPLEMENT_TASK operation will stop processing on the first error"
// *Document: NO
//            IMPLEMENT_EXIT_ON_ERROR parameter description

03042, 00000, "The starting point for the Enterprise Manager SQL Access Advisor Wizard"
// *Document: NO
//            DEF_EM_TEMPLATE parameter description

03043, 00000, "The default workload source for the Enterprise Manager SQL Access Advisor Wizard"
// *Document: NO
//            DEF_DATA_SOURCE parameter description

03044, 00000, "Deprecated.  Please use VALID_MODULE_LIST"
// *Document: NO
//            MODULE_LIST parameter description

03045, 00000, "When enabled, all user-specified workload filtering will be disabled"
// *Document: NO
//            DISABLE_FILTERS parameter description

03046, 00000, "When enabled, RETAIN actions will be displayed in scripts and within the Enterprise Manager SQL Access Advisor Wizard task results"
// *Document: NO
//            SHOW_RETAINS parameter description

03047, 00000, "Specifies how the STORAGE_CHANGE parameter is interpreted"
// *Document: NO
//            STORAGE_MODE parameter description

03048, 00000, "When enabled, exact text match materialized views will be recommended"
// *Document: NO
//            RECOMMEND_MV_EXACT_TEXT_MATCH parameter description

03049, 00000, "Value used to indicate acceptable overall workload performance"
// *Document: NO
//            OVERALL_SCALEUP_GREEN_THRESH parameter description

03050, 00000, "Value used to indicate significant potential improvement of overall workload performance"
// *Document: NO
//            OVERALL_SCALEUP_RED_THRESH parameter description

03051, 00000, "Weighted value used to indicate acceptable overall workload performance"
// *Document: NO
//            ADJUSTED_SCALEUP_GREEN_THRESH parameter description

03052, 00000, "Weighted value used to indicate significant potential improvement of overall workload performance"
// *Document: NO
//            ADJUSTED_SCALEUP_RED_THRESH parameter description

03053, 00000, "Maximum number of partitioning schemes to investigate"
// *Document: NO
//            LIMIT_PARTITION_SCHEMES parameter description

03054, 00000, "Maximum number of partitions for any particular target object"
// *Document: NO
//            MAX_NUMBER_PARTITIONS parameter description

03055, 00000, "Format used to construct new partition names."
// *Document: NO
//            PARTITION_NAME_TEMPLATE parameter description

03056, 00000, "Approach used when recommending partitions."
// *Document: NO
//            PARTITION_GOAL parameter description

03057, 00000, "Permitted partition types for recommendations."
// *Document: NO
//            PARTITIONING_TYPES parameter description

03058, 00000, "Primary natural order in which the SQL Access Advisor processes workload elements during an analysis operation"
// *Document: NO
//            RANKING_MEASURE task parameter description

03059, 00000, "Recommend optimal tablespaces for partitioning recommendations"
// *Document: NO
//            RECOMMEND_TABLESPACES task parameter description

03060, 00000, "Derive secondary structures from existing base table partitions"
// *Document: NO
//            USE_BASE_TABLE_PARTITIONS task parameter description

03061, 00000, "Honor Information Lifecycle Management partitioning schemes"
// *Document: NO
//            USE_ILM task parameter description

03062, 00000, "Place new partitions into separate tablespaces"
// *Document: NO
//            USE_SEPARATE_TABLESPACES task parameter description

03063, 00000, "Use sampling to avoid scanning a very large workload"
// *Document: NO
//            USE_WORKLOAD_SAMPLING task parameter description

03064, 00000, "Use compression to reduce a large target workload."
// *Document: NO
//            WORKLOAD_COMPRESSION task parameter description

// 3100 - 3199 are Hypothetical Workload generator journal messages
03100, 00000, "Start of hypothetical workload generation"
// *Document: NO
// *Argument: None

03101, 00000, "Hypothetical workload generation completed succesfully."
// *Document: NO
// *Argument: None

03102, 00000, "Hypothetical workload generation completed with errors."
// *Document: NO
// *Argument: None

03103, 00000, "Dimension %s.%s is loaded."
// *Document: NO
// *Argument: None

03104, 00000, "Fact-key between table %s.%s and dimension-table %s.%s is discarded."
// *Document: NO
// *Argument: None

03105, 00000, "Fact-key between table %s.%s and dimension-table %s.%s is loaded."
// *Document: NO
// *Argument: None

03106, 00000, "Dimension %s.%s is defined on table %s.%s."
// *Document: NO
// *Argument: None

03107, 00000, "There are no valid dimensions present in the user-specified scope."
// *Document: NO
// *Argument: None

03108, 00000, "There are no valid fact-tables present in the user-specified scope."
// *Document: NO
// *Argument: None

03109, 00000, "The Hypothetical Workload Generator has run out of memory."
// *Document: NO
// *Argument: None

03110, 00000, "The Hypothetical Workload Generator encountered an OCI error: %s."
// *Document: NO
// *Argument: None

03111, 00000, "Dimension table %s.%s does not have a primary or unique-key level."
// *Document: NO
// *Action: Check definition of underlying dimension. The dimension does 
// * does not have a level corresponding to a primary or unique-key in 
// * the table.
// *Argument: None

03112, 00000, "Invalid CREATE MATERIALIZED VIEW statement\n%s"
// *Cause:  The CREATE MATERIALIZED VIEW statement that was passed into the
//          procedure was not a valid one.
// *Action: Check the reason(s) following the error or the statement and retry
//          the operation.
/

03113, 00000, "Cannot tune the MATERIALIZED VIEW statement\n%s"
// *Cause:  The MATERIALIZED VIEW statement could not be tuned.
// *Action: Check the reason(s) following the error or the statement and retry
//          the operation.
/

03114, 00000, "Cannot tune FOR UPDATE materialized view"
// *Cause:   The materialized view was created with the FOR UPDATE option.
// *Action:  Rephrase the statement to avoid the use of the FOR UPDATE option.
/

03115, 00000, "Cannot tune materialized view ON PREBUILT table"
// *Cause:   The materialized view was created on a prebuilt table.
// *Action:  Rephrase the statement to avoid the use of the ON PREBUILT option.
/

03116, 00000, "The materialized view is already optimal and cannot be tuned any further"
// *Cause:   The materialized view has the capabilities that are specified in
//           the statement.
// *Action:  none
/

03117, 00000, "Cannot tune the materialized view to be fast refreshable"
// *Cause:   The materialized view could not be tuned or decomposed to be fast 
//           refreshable.
// *Action:  Run the dbms_mview.explain_mview to find out the reason.
/

03118, 00000, "Cannot tune the materialized view for general rewrite"
// *Cause:   The materialized view could not be tuned for supporting general rewrite.
// *Action:  Run the dbms_mview.explain_mview to find out the reason.
/

03119, 00000, "The WHERE/HAVING clause is too complex for general query rewrite"
// *Cause:   The WHERE/HAVING was too complex for general rewrite.
// *Action:  Try to simplify the WHERE/HAVING clause in the materialized view
//           defining query.
/

03120, 00000, "Cannot create materialized view log on encrypted columns"
// *Cause:   There were encrypted columns in materialized view defining query.
// *Action:  Try to remove the encrypted columns in the materialized view defining
//           query.
/

//
// 03201 - 03240 Reserved for Synchronous Refresh
// These messages are used by DBMS_SYNC_REFRESH.CAN_SYNCREF_TABLE
//

03201, 00000, "The table %s.%s is classified as a fact table."
// *Cause:    This table has met the criteria of a fact table for the 
//            purposes of synchronous refresh.
// *Action:   None. This is an informational message.
/

03202, 00000, "The table %s.%s is classified as a dimension table."
// *Cause:    This table has met the criteria of a dimension table for the 
//            purposes of synchronous refresh.
// *Action:   None. This is an informational message.
/

03203, 00000, "The table %s.%s is classified as neither a fact nor a dimension table."
// *Cause:    This table has not met the necessary criteria of a fact table or a 
//            dimension table for the purposes of synchronous refresh.
//            Synchronous refresh requires that the defining query of 
//            a materialized view conform to either the star  or snowflake 
//            schema. A table can be either a fact  or dimension table.
// *Action:   Check the joins of the query to ensure they conform to the 
//            requirements.
/

03204, 00000, "The materialized view passes the join graph eligibility check for synchronous refresh."
// *Cause:    The defining query of the materialized view (MV) conformed to the  
//            star  or snowflake schema and, therefore, was eligible for synchronous
//            refresh.
// *Action:   None. This is an informational message.
/

03205, 00000, "The materialized view fails the join graph eligibility check for synchronous refresh."
// *Cause:    The defining query of the materialized view (MV) did not conform to 
//            the star  or snowflake schema and, therfore, was not eligible for synchronous
//            refresh.
// *Action:   Check the joins of the query to ensure they conform to the 
//            requirements.
/

03206, 00000, "The fact table is partitioned by %s and its partition key is %s."
// *Cause:    The fact table had the indicated partitioning method and key.
// *Action:   None. This is an informational message.
/
 
03207, 00000, "The materialized view is partitioned by %s and its partition key is %s."
// *Cause:    The materialized view (MV) had the indicated partitioning method 
//            and key.
// *Action:   None. This is an informational message.
/

03208, 00000, "The partition key of the fact table functionally determines the partition key of the materialized view."
// *Cause:    The analysis by synchronous refresh indicated that the partition key of
//            the fact table functionally determined the partition key of the
//            materialized view (MV), which is a requirement for synchronous refresh
//            eligibility.
// *Action:   None. This is an informational message.
/

03209, 00000, "The materialized view passes the partition key dependency eligibility check for synchronous refresh."
// *Cause:    The analysis by synchronous refresh indicated that the 
//            materialized view (MV) passed the partition key dependency 
//            eligibility check.
// *Action:   None. This is an informational message.
/

03210, 00000, "The materialized view does not pass the partition key functional dependency check and is not eligible for synchronous refresh."
// *Cause:    The analysis by synchronous refresh indicated that the 
//            materialized view (MV) did not pass the partition key dependency 
//            eligibility check.
// *Action:   Check the partition keys of both the fact table and 
//            materialized view and check the joins of the materialized view  to 
//            ensure the functional dependency check passes.
/

03211, 00000, "The partition key of the MV can be rolled up from the partition key of the fact table by a join between the fact table and the dimension table %s."
// *Cause:    The analysis by synchronous refresh indicated there was a rollup
//            relationship between the partition keys of the fact table 
//            and the materialized view (MV).
// *Action:   None. This is an informational message.
/

03212, 00000, "The partition key of the MV corresponds to %s column of the fact table and not to the partition key of the fact table."
// *Cause:    The analysis by synchronous refresh indicated that the 
//            the partition key of the materialized view (MV) was related 
//            to a column of the fact table and not to the partition key 
//            of the fact table.
// *Action:   Check the partition keys of both the fact table and 
//            materialized view and and check the joins of the materialized view to
//            ensure the functional dependency check passes.
/

03213, 00000, "The partition key of the MV corresponds to the partition key of the fact table."
// *Cause:    The analysis by synchronous refresh indicated that the
//            partition key of the materialized view (MV) is the same 
//            as the partition key of the fact table.
// *Action:   None. This is an informational message.
/

03214, 00000, "The partition key of the MV is derived from table %s whereas the partition key of the fact table is related by a join to dimension table %s."
// *Cause:    The analysis by synchronous refresh indicated that the partition key of the
//            materialized view (MV) was related to a column of a dimension table
//            that was not the dimension table to which the partition key of the
//            fact table was joined.
// *Action:   Check the partition keys of both the fact table and 
//            materialized view and check the joins of the materialized view to 
//            ensure the functional dependency check passes.
/

03215, 00000, "The partition key of the MV is not a column related to the partition key of the fact table."
// *Cause:    The analysis by synchronous refresh indicated that the
//            partition key  of the materialized view (MV) was not a column
//            related to the partition key of the fact table.
// *Action:   Check the partition keys of both the fact table and 
//            materialized view and check the  joins of the materialized view to 
//            ensure the functional dependency check passes.
/

03216, 00000, "The partition key of the MV is related to the partition key of the fact table by a join between the fact table and the dimension table %s."
// *Cause:    The analysis by synchronous refresh indicated that the 
//            partition key of the materialized view (MV) was related 
//            to the partition key of the fact table by a join.
// *Action:   None. This is an informational message.
/

03217, 00000, "The table %s.%s is classified as both a fact and a dimension table."
// *Cause:    This table has met the necessary criteria of both a fact table and a 
//            dimension table for the purposes of synchronous refresh.
//            Synchronous refresh requires that the defining query of 
//            a materialized view conform to either the star  or snowflake 
//            schema. A table can be either a fact  or dimension table.
// *Action:   Check the joins of the query to ensure they conform to the 
//            requirements.
/

03218, 00000, "More than one table is classified as a fact table."
// *Cause:    More than one of the base tables of the  materialized view 
//            was classified as a fact table for the purposes of
//            synchronous refresh, which requires exactly one fact table.
//            Synchronous refresh requires that the defining query of 
//            a materialized view conform to either the star  or snowflake 
//            schema. A table can be either a fact  or dimension table.
//            However, only one (and exactly one) can be fact table and 
//            the rest must be dimension tables.
// *Action:   Check the joins of the query to ensure they conform to the 
//            requirements.
/

03219, 00000, "The materialized view is not partitioned and therefore is not eligible for synchronous refresh."
// *Cause:    The materialized view was not partitioned and therefore was not eligible
//            for synchronous refresh.
// *Action:   Partition the materialized view so that it is eligible for synchronous refresh.
/

03220, 00000, "The partition key of the MV belongs to a table other than the fact table."
// *Cause:    The analysis by synchronous refresh indicated that the
//            partition key of the materialized view (MV) was related to a 
//            table other than the fact table.
// *Action:   Check the partition keys of both the fact table and 
//            materialized view and the check the joins of the materialized view to 
//            ensure the functional dependency check passes.
/

03221, 00000, "The partition key of the fact table does not appear in the joins of the MV."
// *Cause:    The analysis by synchronous refresh indicated that the 
//            partition key of the fact table did not appear in the joins 
//            of the materialized view (MV).
// *Action:   Check the partition keys of both the fact table and materialized
//            view and the joins.
/

03222, 00000, "The partition key of the fact table could not be related to the partition key of the MV."
// *Cause:    The analysis by synchronous refresh indicated that the
//            partition key of the fact table cannot be related to the 
//            partition key of the materialized view (MV). 
// *Action:   Check the partition keys of both the fact table and materialized
//            view and the joins.
/

03223, 00000, "The partition method used in the table or MV is not supported by MV synchronous refresh."
// *Cause:    An attempt was made to do synchronous refresh on a table or 
//            materialized view (MV) that used an unsupported partition method.
// *Action:   Check the partition method used in the table or MV definition to
//            make sure it is either range, range-range, range-list, or 
//            range-hash partition.
/

03224, 00000, "rows being deleted or updated not in the base table"
// *Cause:  The staging log rows to be updated or deleted were not in the base table.
// *Action: Change the staging log key in the staging log table.
/

03225, 00000, "rows being inserted in the base table"
// *Cause:  The staging log rows to be inserted were in the base table.
// *Action: Change the staging log key in the staging log table.
/

03226, 00000, "Rows being updated had exactly the same old and new values on all columns."
// *Cause:  The staging log rows to be updated had exactly the same old and new values
//          on all columns.
// *Action: Change some of the column values of the rows being updated or delete the 
//          problematic rows from the staging log.
/

03227, 00000, "The USING TRUSTED CONSTRAINTS clause is not specified in the materialized view definition."
// *Cause:    The USING TRUSTED CONSTRAINTS clause was not specified in the 
//            materialized view (MV) definition. Therefore, the MV was not 
//            eligible for synchronous refresh.
// *Action:   Alter the materialized view to use trusted constraints.
/

03228, 00000, "The refresh option specified in the materialized view definition is not supported."
// *Cause:    The refresh option specified in the materialized view (MV) 
//            definition was not supported for synchronous refresh. 
//            The only refresh option supported for synchronous refresh 
//            is REFRESH FORCE.
// *Action:   Alter the materialized view refresh option to REFRESH FORCE.
/

03229, 00000, "The ON COMMIT refresh option is not supported."
// *Cause:    The ON COMMIT refresh option specified in the materialized view 
//            definition was not supported for synchronous refresh. 
//            The only refresh option supported for synchronous refresh 
//            is ON DEMAND.
// *Action:   Alter the materialized view refresh option to ON DEMAND.
/

03230, 00000, "The materialized view is in an invalid state or not fresh."
// *Cause:    The materialized view was in an invalid state or not fresh.
//            Synchronous refresh requires the materialized view (MV) to be
//            in a valid and fresh state when it is registered or prepared. 
// *Action:   Recompile the MV and refresh it to esnure it is valid and fresh.
/

03231, 00000, "ROWID is not allowed in the materialized view registered for synchronous refresh."
// *Cause:  ROWID was used in the defining query of the materialized view.
// *Action: Remove the ROWID column from the defining query of the materialized view.
/

03232, 00000, "RAW data type is not allowed in the materialized view registered for synchronous refresh."
// *Cause:  RAW data type was used in the defining query of the materialized view.
// *Action: Remove the RAW data type column from the defining query of the materialized view.
/

03233, 00000, "MIN or MAX is not allowed in the materialized view registered for synchronous refresh."
// *Cause:  MIN or MAX was used in the defining query of the materialized view.
// *Action: Remove the MIN or MAX expression from the defining query of the materialized view.
/

03234, 00000, "Set operator is not allowed in the materialized view registered for synchronous refresh."
// *Cause:  The set operator was used in the defining query of the materialized view.
// *Action: Remove the set operator from the defining query of the materialized view.
/

03235, 00000, "OUTER JOIN is not allowed in the materialized view registered for synchronous refresh."
// *Cause:  OUTER JOIN was used in the defining query of the materialized view.
// *Action: Remove OUTER JOIN from the defining query of the materialized view.
/

03236, 00000, "Subquery is not allowed in the materialized view registered for synchronous refresh."
// *Cause:   A subquery was used in the defining query of the materialized view.
// *Action: Remove the subquery from the defining query of the materialized view.
/

03237, 00000, "Trigger is not allowed in the base table %s.%s for synchronous refresh."
// *Cause:  A trigger was used in the base table for synchronous refresh.
// *Action: Remove the trigger from the base table.
/

03238, 00000, "The materialized view was not defined on the base table %s.%s for synchronous refresh."
// *Cause:  There was no materialized view defined on the base table.
// *Action: Change the base table name.
/

03239, 00000, "Group by CUBE, ROLLUP, or grouping-sets was not allowed in the materialized view registered for synchronous refresh."
// *Cause:  A group by CUBE, ROLLUP, or grouping-sets was used in the defining query of the materialized view.
// *Action: Remove the group by CUBE, ROLLUP, or grouping-sets from the defining query of the materialized view.
/


03240, 00000, "The object %s.%s used in a materialized view definition was not a table."
// *Cause:  An object was used in the defining query of the materialized view, which was not a table type.
// *Action: Remove the object from the defining query of the materialized view.
/

//
// 03241 - 03280 Reserved for Synchronous Refresh
// These messages are used by Synchronous Refresh for general purposes
//

03241, 00000, "Currently there is no active operation on the specified synchronous refresh group."
// *Cause:    Either EXECUTE_REFRESH or ABORT_REFRESH returned an error
//            because there was no active operation on the specified synchronous
//            refresh group.
// *Action:   Check the catalog views to determine the status of the  
//            synchronous refresh group.
/

03242, 00000, "The synchronous refresh group is in an invalid state for the requested operation."
// *Cause:    Either PREPARE_REFRESH or EXECUTE_REFRESH returned an error
//            because the specified operation was not valid for the specified 
//            synchronous refresh group.
// *Action:   Check the catalog views to determine the status of the  
//            synchronous refresh group. Refer to the synchronous refresh 
//            documentation to find out which refresh operations are valid in the
//            various possible states of the group.
/

03243, 00000, "The synchronous refresh group cannot resume execution."
// *Cause:    EXECUTE_REFRESH returned an error because all possible 
//            refresh subgroups had been processed and had a status of 
//            either COMPLETE or ABORT.
// *Action:   Check the catalog views to determine the status of the  
//            synchronous refresh group and its objects. Refer to the  
//            synchronous refresh documentation to find out which refresh operations 
//            are valid in the various possible states of the group.
/

03244, 00000, "The partition operations registered on table %s.%s are not valid."
// *Cause:    Either an illegal partition operation was specified in the
//            register partition operation or the partition name was
//            incorrectly specified.
// *Action: Check that the partition_name belongs to a valid partition 
//          and that only one operation is registered for a partition.
/

03245, 00000, "The partition operations registered on partition %s of table %s.%s conflict with the data supplied in the staging logs."
// *Cause: The staging log contained changes to rows in the partition
//         that were being registered. These changes occur due to changes
//         specified in the staging log of the fact table or because of updates
//         to dimension tables.
// *Action: Resolve these conflicts by either unregistering the partition or deleting
//          the rows from the named partition in the staging log of the fact table.
//          If the conflicts are due to dimension updates, provide all changes
//          to the fact table in the staging log rather than attempting to 
//          register the partition operations directly.
/

03246, 00000, "The owner of outside partition %s is %s whereas it should be %s."
// *Cause: When registering the outside table, the user supplied the
//         incorrect owner for the outside table.
// *Action: Unregister the outside table and register it with the correct
//          owner, which should be the same as the owner of the base table.
/

03247, 00000, "The staging log on table %s.%s has not been prepared."
// *Cause: PREPARE_REFRESH failed because the staging log for the specified
//         table was not prepared with PREPARE_STAGING_LOG. All
//         staging logs of tables of the group must be prepared before
//         running PREPARE_REFRESH.
// *Action: Run PREPARE_STAGING_LOG on the specified table. Check that all other
//          tables in the group have been prepared.
/

03248, 00000, "The materialized view  %s.%s is already registered."
// *Cause: The specified materialized view (MV) has already been registered.
//         A MV can be registered only once.          
// *Action: No action is necessary if the MV is in a valid state. If the MV is 
//          in an invalid state, unregister the MV and re-register it with 
//          REGISTER_MVIEWS.
/

03249, 00000, "The table %s.%s does not have a staging log."
// *Cause: REGISTER_MVIEWS failed because the staging log for the specified
//         table belonging to the materialized view (MV) being registered did not
//         exist. All tables on a MV are required to have staging logs
//         created on them for the MV to be registered for synchronous refresh.
// *Action: Create the staging log with the CREATE MATERIALIZED VIEW LOG
//          statement with the FOR SYNCHRONOUS REFRESH clause. If the table
//          already has an ordinary MV log, use the ALTER MATERIALIZED VIEW
//          LOG instead.
/

03250, 00000, "The fact table %s.%s is not referenced by any MV in the group and the changes to dimension tables contain deletes or updates."
// *Cause: PREPARE_REFRESH found that there was no materialized view (MV) 
//         registered for synchronous refresh that contained the specified
//         fact table as one of its base tables and the changes to the
//         dimension tables contained updates or deletes.
//         This error will not occur if the changes to the dimension tables
//         contain only inserts.
// *Action: There are many ways to handle this situation. Refer to the 
//          documentation for details. 
//
//          One way is to unregister all MV's, drop staging logs on the tables
//          or alter them to ordinary logs and apply the changes to the tables.
//          Then the MV's can be refreshed using conventional methods instead
//          of synchronous refresh. If desired, the staging logs on the tables
//          can be re-created and the MV's can be registered for synchronous
//          refresh.
//
//          Another way is to register a MV which references the specified
//          fact table for synchronous refresh. If no such MV exists, the user can 
//          first create one before registering it.
/

03251, 00000, "The fact table %s.%s is not referenced by any MV in the group and its staging log is not empty."
// *Cause: PREPARE_REFRESH found that there is no materialized view (MV)
//         registered for synchronous refresh that contained the specified fact
//         table as one of its base tables and the staging log for that table
//         specified changes to it. PREPARE_REFRESH supports fact tables  
//         without MV's defined on them if they meet two conditions:
//         a) the staging log for the fact table is empty; b) the 
//         staging logs for the dimension tables in the group do not specify
//         deletes or updates.
//          
// *Action: There are many ways to handle this situation. Refer to the 
//          documentation for details. Briefly, the two main ways are: 
//          1. Register a MV which references the fact table for synchronous 
//             refresh. If no such MV exists, you can create one.
//          2. Unregister all the MVs in the group; drop staging log
//             on the table or alter it to an ordinary MV log. Re-register
//             the MVs which have been unregistered.
/

03252, 00000, "The synchronous refresh group of table %s.%s is locked by another operation."
// *Cause: Either REGISTER_PARTITION_OPERATION or UNREGISTER_PARTITION_OPERATION
//         detected that the synchronous refresh group to which the table
//         belonged had been locked by another synchronous refresh operation.
// *Action: Wait for the other operation to complete before attempting this
//          operation again.
/

03253, 00000, "The synchronous refresh group of table %s.%s has been unlocked by another operation."
// *Cause: Either REGISTER_PARTITION_OPERATION or UNREGISTER_PARTITION_OPERATION
//         detected that the synchronous refresh group to which the table
//         belonged had been unlocked by another synchronous refresh operation.
//         This is an internal error.
// *Action: Contact Oracle Support Services for assistance.
/

03254, 00000, "The lock operation on synchronous refresh group %s failed unexpectedly."
// *Cause: The lock operation on the specified synchronous refresh group
//         failed unexpectedly. This is an internal error.
// *Action: Contact Oracle Support Services for assistance.
/

03255, 00000, "The unlock operation on synchronous refresh group %s failed unexpectedly."
// *Cause: The unlock operation on the specified synchronous refresh group
//         failed unexpectedly. This is an internal error.
// *Action: Contact Oracle Support Services for assistance.
/

03256, 00000, "The synchronous refresh group %s is locked by another operation."
// *Cause: Either REGISTER_MVIEWS or PREPARE_REFRESH detected that the synchronous
//         refresh group to be processed by the requested operation had been
//         locked by another synchronous refresh operation.
// *Action: Wait for the other operation to complete before attempting this
//          operation again.
/

03257, 00000, "The synchronous refresh group %s has been unlocked by another operation."
// *Cause: Either EXECUTE_REFRESH or ABORT_REFRESH detected that the synchronous refresh
//         group to be processed by the requested operation had been unlocked by
//         another synchronous refresh operation. This is an unexpected condition
//         and may indicate an internal error.
// *Action: Contact Oracle Support Services for assistance.
/

03258, 00000, "The value supplied for the parameter %s is too long."
// *Cause: The value supplied for the specified parameter 
//         exceeded the maximum length allowed for that parameter.
// *Action: Supply a valid value for the specified parameter.
/

03259, 00000, "The value supplied for the parameter %s is malformed."
// *Cause: The value supplied for the specified parameter was invalid.
// *Action: Supply a valid value for the specified parameter.
/

03260, 00000, "The materialized views being registered are not defined on tables."
// *Cause: The materialized views being registered were not defined on tables,
//         but were defined on top of other types of objects such as views or 
//         materialized views. Synchronous refresh works only with 
//         materialized views defined on tables.
// *Action: Do not register such materialized views for synchronous refresh.
/

//
// Begin RPO Messages (3261 -3275)
//  This block is reserved for REGISTER_PARTITION_OPERATION and 
//  UNREGISTER_PARTITION_OPERATION)
// 

03261, 00000, "The partition operation name %s is not valid."
// *Cause: Either REGISTER_PARTITION_OPERATION or UNREGISTER_PARTITION_OPERATION
//         detected that the partition operation name did not belong to the DROP,
//         EXCHANGE or TRUNCATE value.
// *Action: Check the parameter partition operation carefully, and change it to DROP, 
//         EXCHANGE or TRUNCATE.
/

03262, 00000, "The object %s.%s is not registered for Synchronous Refresh."
// *Cause: REGISTER_PARTITION_OPERATION or UNREGISTER_PARTITION_OPERATION
//         detected that either:
//         - This object was not registered for synchronous refresh.
//         - The synchronous refresh group was not in the current run.
//         - The object was not a table type. 
// *Action: Make sure this object is registered for synchronous refresh,
//          the synchronous refresh group is in the current run, and the
//          object is a table type. 
/

03263, 00000, "There is already a partition operation registered on %s.%s partition %s."
// *Cause: REGISTER_PARTITION_OPERATION detected that there was already a
//         partition maintenance operation (for example, DROP, EXCHANGE or TRUNCATE)
//         registered on the specified partition of the base table.
// *Action: Use the UNREGISTER_PARTITION_OPERATION to unregister this
//          partition first, and then run REGISTER_PARTITION_OPERATION.
/

03264, 00000, "There is no partition named %s in base table %s.%s."
// *Cause: REGISTER_PARTITION_OPERATION detected that there was no partition
//         with the specified name in the base table.
// *Action: Check the parameter PARTITION_NAME, and make sure it is a valid
//          partition in the base table.
/

03265, 00000, "The outside table %s.%s does not exist."
// *Cause: REGISTER_PARTITION_OPERATION detected that the outside table schema
//         or table name did not exist or was not valid.
// *Action: Check the parameters OUTSIDE_PARTN_TABLE_SCHEMA or
//          OUTSIDE_PARTN_TABLE_NAME, and make sure the outside table exists.  
/

03266, 00000, "Tablespace of base table %s does not match the tablespace of outside partition table %s."
// *Cause: REGISTER_PARTITION_OPERATION detected that the tablespace of the base
//         table for any partition or subpartition did not match the tablespace
//         of the outside partition table.
// *Action: Alter the tablespace of outside partition table to match the tablespace of
//          the base table, or check if the outside partition table is 
//          eligible for REGISTER_PARTITION_OPERATION or not. 
/

03267, 00000, "The outside partition table %s contains at least one record that is not within the partition range of the base table %s."
// *Cause: REGISTER_PARTITION_OPERATION detected that the outside partition
//         table contained at least one record that was not within the partition
//         range of the base table.
// *Action: Check the records to see if the outside partition table is 
//          eligible for the REGISTER_PARTITION_OPERATION.  
/

03268, 00000, "Synchronous refresh can only support top partition by RANGE."
// *Cause: REGISTER_PARTITION_OPERATION detected the base table was not partitioned
//         by RANGE on top. 
// *Action: The base table is not eligible for REGISTER_PARTITION_OPERATION. 
/

03269, 00000, "The number of partitions of the base table %s and the outside table %s do not match."
// *Cause: The base table was composite-partitioned. The partition number of
//         the outside partition did not match the number of subpartitions
//         inside the specified partition of the base table.
// *Action: Check the partitions to see if the outside partition table is 
//          eligible for the REGISTER_PARTITION_OPERATION.  
/

03270, 00000, "There is no partition operation registered on %s.%s partition %s."
// *Cause: UNREGISTER_PARTITION_OPERATION detected that there was no
//         partition maintenance operation (for example, DROP, EXCHANGE and
//         TRUNCATE) registered on the specified partition of the base table. 
// *Action: Use the REGISTER_PARTITION_OPERATION to register this
//          partition first, and then run UNREGISTER_PARTITION_OPERATION.
/
  
03271, 00000, "The partition name of outside partition table %s does not match the subpartition name of base table %s."
// *Cause: REGISTER_PARTITION_OPERATION detected that the partition name of the
//         outside partition table did not match the subpartition name of base
//         table.
// *Action: Alter the partition name of outside partition table to match the partition name of
//          the base table, or check if the outside partition table is 
//          eligible for REGISTER_PARTITION_OPERATION or not. 
/

//
// End RPO Messages (3261 -3275)
//

//
// Staging Log Messages (3276)
//

03272, 00000, "There are no changes loaded for any tables in this group."
// *Cause:  There were no changes recorded for any tables in this group.  
//          The changes to a table can be provided in its staging log or
//          by specifying partition change operations with
//          REGISTER_PARTITION_OPERATION. 
// *Action: Provide the appropriate changes to the tables in the group.
/

03276, 00000, "The specified schema %s of the staging log is different from the owning schema %s of the base table."
// *Cause: The user-specified schema of the staging log was different from the owning schema
//         of the base table. They must be in the same schema if the schema of the staging
//         log is specified.
// *Action: Specify the owning schema of the base table as the schema of the staging log or
//          do not specify the schema for the staging log.
/

03277, 00000, "An internal error related to tracing messages to SYNCREF_MESG has occurred."
// *Cause: This is an internal error as noted in the message.
// *Action: Contact Oracle Support Services for assistance.
/

03278, 00000, "The table SYNCREF_MESG is not present in the SYS schema."
// *Cause: This is an internal error related to tracing messages to the table
//         SYNCREF_MESG. It occurs if the event 31904 is set to level 4 or 8
//         but the message table SYNCREF_MESG is not created in the SYS
//         schema. Oracle does not support levels 4 and 8 in event 31904.
// *Action: Execute the command again after unsetting levels 4 and 8 in 
//          event 31904.
/

03280, 00000, "One or more materialized views failed to refresh successfully."
// *Cause:  The base tables in the group refreshed successfully but one or
//          more materialized views in the group did not. The status of the
//          group for synchronous refresh operation was set to PARTIAL in this case.
// *Action: To find the materialized views which failed, query the
//          USER_SR_OBJ_STATUS catalog view. Take one of the following courses
//          of action:
//          *  Issue the EXECUTE_REFRESH command again to retry refreshing the
//             views. In this case EXECUTE_REFRESH will internally use the 
//             PCT refresh mode to refresh the materialized views.
//          *  Issue the ABORT_REFRESH command to abort the refresh of all
//             objects in the group, including the base tables, and restore
//             them to the original state.
/

03281, 00000, "The specified GROUP_ID is not valid." 
// *Cause:  The GROUP_ID specified as input to the refresh operation
//          was not valid and does not identify a valid synchronous refresh 
//          group.
// *Action: Provide the correct GROUP_ID. Use the 
//          DBMS_SYNC_REFRESH.GET_GROUP_ID to get the correct GROUP_ID.
/

03282, 00000, "A materialized view is registered on a table related to %s.%s." 
// *Cause:  The staging log creation on the specified table failed because
//          a table related to it by referential-integrity constraint
//          has a materialized view which was registered for synchronous 
//          refresh with the REGISTER_MVIEWS command. 
//          Oracle requires that you first register the tables 
//          before registering any materialized view defined on them.
// *Action: Unregister the materialized views defined on the related tables
//          with the UNREGISTER_MVIEWS command. Then, register the tables
//          with synchronous refresh by creating staging logs on them.
//          Finally, register any materialized views you wish to register 
//          for synchronous refresh with REGISTER_MVIEWS.
/


03283, 00000, "The materialized view %s.%s has not been registered."
// *Cause:  The specified materialized view was not registered for
//          synchronous refresh.
// *Action: Register the materialized view with
//          DBMS_SYNC_REFRESH.REGISTER_MVIEWS. Use the USER_SR_OBJ
//          catalog view to verify the materialized view has been
//          registered.
/ 

03284, 00000, "There is no foreign key constraint defined on %s referencing %s.%s."
// *Cause:  The table of REGISTER_PARTITION_OPERATION did not define a
//          foreign key constraint on its referred base table.
// *Action: Define a foreign key constraint on its referred base table 
//          and retry the operation.
/ 

03285, 00000, "There is no primary key constraint defined on %s.%s."
// *Cause:  The table of REGISTER_PARTITION_OPERATION did not define a
//          primary key constraint on it.
// *Action: Define a primary key constraint on the table and retry the
//          operation.
/ 

03286, 00000, "Complex materialized view was not allowed for synchronous refresh."
// *Cause:  There was a complex materialized view in the synchronous refresh group.
// *Action: Remove the complex materialized view in the synchronous refresh group.
/

03287, 00000, "synchronous refresh internal error: [%s]"
// *Cause: This was an internal error in synchronous refresh.
// *Action: Contact Oracle Support Services with the complete message.
/

03288, 00000, "Flashback is not allowed in the base table %s.%s for synchronous refresh."
// *Cause:  A staging log was created on a flashback-enabled base table.
// *Action: Disable flashback on the base table.
/

OHA YOOOO