.ora-code.com

Links
Home
Oracle DBA Forum
Frequent Oracle Errors
TNS:could not resolve the connect identifier specified
Backtrace message unwound by exceptions
invalid identifier
PL/SQL compilation error
internal error
missing expression
table or view does not exist
end-of-file on communication channel
TNS:listener unknown in connect descriptor
insufficient privileges
PL/SQL: numeric or value error string
TNS:protocol adapter error
ORACLE not available
target host or object does not exist
invalid number
unable to allocate string bytes of shared memory
resource busy and acquire with NOWAIT specified
error occurred at recursive SQL level string
ORACLE initialization or shutdown in progress
archiver error. Connect internal only, until freed
snapshot too old
unable to extend temp segment by string in tablespace
Credential retrieval failed
missing or invalid option
invalid username/password; logon denied
unable to create INITIAL extent for segment
out of process memory when trying to allocate string bytes
shared memory realm does not exist
cannot insert NULL
TNS:unable to connect to destination
remote database not found'>ora-02019
exception encountered: core dump
inconsistent datatypes
no data found
TNS:operation timed out
PL/SQL: could not find program
existing state of packages has been discarded
maximum number of processes exceeded
error signaled in parallel query server
ORACLE instance terminated. Disconnection forced
TNS:packet writer failure
see ORA-12699
missing right parenthesis
name is already used by an existing object
cannot identify/lock data file
invalid file operation
quoted string not properly terminated
Parallel Query on a Partitioned IOT Issue

Parallel Query on a Partitioned IOT Issue

2005-09-10       - By Shivanischal A
Reply:     1     2  

Hi All,

A parallel query on a Range Partitioned IOT is exiting with the below
error:

ORA-12801 (See ORA-12801.ora-code.com): error signaled in parallel query server P024
ORA-00904 (See ORA-00904.ora-code.com): "A1"."rowid": invalid identifier

The oracle version is 9.2.0.5 on AIX 5.2

The query is like this:

-- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---
WITH
   usage AS
   (
       SELECT id1, SUM(v1) AS tv1
       FROM range_partitioned_iot
       WHERE date_field BETWEEN :StartDate AND :EndDate
       GROUP BY id1
   )
SELECT
   rpi.id1
   rpi.id2
   rpi.id1_type
   rpi.id2_type
   (rpi.v1/u.tv1) * 100
   rpi.v2
   rpi.v3
   ROUND(rpi.v1/60, 2)
FROM
   usage u,
   range_partitioned_iot rpi
WHERE
   rpi.flag= 1 AND
   rpi.id1 = u.id1
ORDER BY
   rpi.id1
-- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---

Please note that the query has pseudo column and table names, but the
query is real. range_partitioned_iot is the paritioned IOT. All columns
except v1, v2, v3 are part of the primary key. The table was created
with the PARALLEL option. I noticed PQ errors only on partitioned IOTs.
I noticed PQ errors on the partitioned IOTs only when the query includes
the WITH clause.

I came up 3 (unacceptable) ways to solve the problem:
1. alter table range_partitioned_iot NOPARALLEL ;
2. replace the WITH with SQL Analytic functions (I have more complex
queries where I use up to 4 WITH clauses, so SQL Analytics cannot help
me and I categorized this method as unacceptable)
3. Recreate all my partitioned IOTs as Heap tables. Something I would do
the last thing in the world.

Facing client pressure, I chose the first as an interim measure. Gurus,
please advise whats wrong here. I have been to asktom, metalink and
found nothing that was of use. Maybe I was not looking properly....

Thanks for your time,
Shiva





--
http://www.freelists.org/webpage/oracle-l