BITMAP INDEXES 생성 시 ORA-439 ERROR
제품 : ORACLE SERVER
작성날짜 : 2004-08-16
이것은 option 이 인스톨되지 않아서 발생한 것이다.
반드시 Oracle 8 Enterprise Edition 에서만 사용이 가능하다.
Oracle 8i 에서도 동일하게 적용된다.
SQL> select * from v$option where parameter like 'Bit%';
PARAMETER VALUE
Bit-mapped indexes FALSE
We're exphriencing exactly the same problem under Oracle 8.1.7 + RedHat 7.1.
Found any workarounds meanwhile, Mr G. Pike ?
Thanks
GP
Similar Messages
-
Hi,
I'm running the following query:
SELECT
FLOW.PRODUCT_CODE,
FLOW.CUSTOMER_SK,
FLOW.BRAND_SK,
26,
FLOW.MPR_SK
FROM
RSB_FACT_FLOW_SD FLOW,
RSB_DIM_FLOW DIM
WHERE
FLOW.FLOW_SK = DIM.FLOW_SK
AND DIM.FLOW_ID = 'CFRD'
AND FLOW.PRODUCT_CODE = 'G'
AND FLOW.FLOW_DATE >= '01 JAN 2006'
AND FLOW.FLOW_DATE <= '31 JAN 2006'
AND EXISTS
( SELECT 1
FROM RSB_FACT_FLOW_SD A,
RSB_DIM_FLOW B
WHERE
A.MPR_SK = FLOW.MPR_SK
AND A.RECEIVED_DATE >= FLOW.RECEIVED_DATE
AND B.FLOW_SK= A.FLOW_SK
AND B.FLOW_ID= 'WAO2'
AND A.REASON= '02CRO'
I get ORA-00904: "FLOW"."RECEIVED_DATE": invalid identifier
This is the defintion of the table:
CREATE TABLE RSB_FACT_FLOW_SD
PRODUCT_CODE CHAR(1) NOT NULL,
WEEK_END_DATE DATE NOT NULL,
CUSTOMER_SK NUMBER(10) NOT NULL,
CUSTOMER_ATTRIBUTE_SK NUMBER(10) NOT NULL,
MPR_SK NUMBER(10) NOT NULL,
MPR_PROFILE_SK NUMBER(10) NOT NULL,
SPECCOND_PROFILE_SK NUMBER(10) NOT NULL,
BRAND_SK NUMBER(10) NOT NULL,
FLOW_SK NUMBER(10) NOT NULL,
FLOW_DATE DATE,
RECEIVED_DATE DATE,
VALIDATION_STATUS CHAR(1),
FLOW_TYPE CHAR(1),
RECEIVED_FROM_SENT_TO VARCHAR2(4),
REASON VARCHAR2(255),
FLOW_SEQUENCE NUMBER,
CUSTOMER_SEGMENT_SK NUMBER(10),
BRAND_PARTNER_SK NUMBER
TABLESPACE DW_DATA
PCTUSED 90
PCTFREE 0
PARALLEL
LOGGING;
CREATE BITMAP INDEX RSB_FACT_FLOW_SD_IX01 ON RSB_FACT_FLOW_SD
(PRODUCT_CODE) TABLESPACE DW_INDEXES PARALLEL PCTFREE 0 NOLOGGING COMPUTE STATISTICS;
CREATE BITMAP INDEX RSB_FACT_FLOW_SD_IX02 ON RSB_FACT_FLOW_SD
(WEEK_END_DATE) TABLESPACE DW_INDEXES PARALLEL PCTFREE 0 NOLOGGING COMPUTE STATISTICS;
CREATE BITMAP INDEX RSB_FACT_FLOW_SD_IX03 ON RSB_FACT_FLOW_SD
(CUSTOMER_SK) TABLESPACE DW_INDEXES PARALLEL PCTFREE 0 NOLOGGING COMPUTE STATISTICS;
CREATE BITMAP INDEX RSB_FACT_FLOW_SD_IX04 ON RSB_FACT_FLOW_SD
(CUSTOMER_ATTRIBUTE_SK) TABLESPACE DW_INDEXES PARALLEL PCTFREE 0 NOLOGGING COMPUTE STATISTICS;
CREATE BITMAP INDEX RSB_FACT_FLOW_SD_IX05 ON RSB_FACT_FLOW_SD
(MPR_SK) TABLESPACE DW_INDEXES PARALLEL PCTFREE 0 NOLOGGING COMPUTE STATISTICS;
CREATE BITMAP INDEX RSB_FACT_FLOW_SD_IX06 ON RSB_FACT_FLOW_SD
(MPR_PROFILE_SK) TABLESPACE DW_INDEXES PARALLEL PCTFREE 0 NOLOGGING COMPUTE STATISTICS;
CREATE BITMAP INDEX RSB_FACT_FLOW_SD_IX07 ON RSB_FACT_FLOW_SD
(SPECCOND_PROFILE_SK) TABLESPACE DW_INDEXES PARALLEL PCTFREE 0 NOLOGGING COMPUTE STATISTICS;
CREATE BITMAP INDEX RSB_FACT_FLOW_SD_IX08 ON RSB_FACT_FLOW_SD
(BRAND_SK) TABLESPACE DW_INDEXES PARALLEL PCTFREE 0 NOLOGGING COMPUTE STATISTICS;
CREATE BITMAP INDEX RSB_FACT_FLOW_SD_IX09 ON RSB_FACT_FLOW_SD
(FLOW_SK) TABLESPACE DW_INDEXES PARALLEL PCTFREE 0 NOLOGGING COMPUTE STATISTICS;
CREATE BITMAP INDEX RSB_FACT_FLOW_SD_IX10 ON RSB_FACT_FLOW_SD
(RECEIVED_DATE) TABLESPACE DW_INDEXES PARALLEL PCTFREE 0 NOLOGGING COMPUTE STATISTICS;
CREATE BITMAP INDEX RSB_FACT_FLOW_SD_IX11 ON RSB_FACT_FLOW_SD
(FLOW_DATE) TABLESPACE DW_INDEXES PARALLEL PCTFREE 0 NOLOGGING COMPUTE STATISTICS;
CREATE BITMAP INDEX RSB_FACT_FLOW_SD_IX12 ON RSB_FACT_FLOW_SD
(CUSTOMER_SEGMENT_SK) TABLESPACE DW_INDEXES PARALLEL PCTFREE 0 NOLOGGING COMPUTE STATISTICS;
CREATE BITMAP INDEX RSB_FACT_FLOW_SD_IX13 ON RSB_FACT_FLOW_SD
(BRAND_PARTNER_SK) TABLESPACE DW_INDEXES PARALLEL PCTFREE 0 NOLOGGING COMPUTE STATISTICS;
If I drop the indexes on the table then the error goes away.
Any ideas??
Sheena( SELECT 1
FROM RSB_FACT_FLOW_SD A,
RSB_DIM_FLOW B
WHERE
A.MPR_SK = FLOW.MPR_SK
AND A.RECEIVED_DATE >= FLOW.RECEIVED_DATE =====>>>>
AND B.FLOW_SK= A.FLOW_SK
AND B.FLOW_ID= 'WAO2'
AND A.REASON= '02CRO'
Your sub query has the problem.
You didn't list flow table in the subquery, therefore, you subquery, dont understand about the column.
specify flow table in the subquery.
Your outquery tables doesn't recognized in the sub query.
Jaffar -
Error while attempting to create bitmap index
I get the error below while creating a bitmap index on a table in SQL Developer.
How do a go about enabling this feature? I looked on Tools | Preferences menu and didn't see anything.
Using Version 1.0.0.14.67
>>>
Error starting at line 1 in command:
CREATE BITMAP INDEX "SYSTEM"."PUB_SRC_INDX_0197_US4" ON "SYSTEM"."PUB_SRC_TBL_0197_US" ("STATUS_ID")
Error report:
SQL Error: ORA-00439: feature not enabled: Bit-mapped indexes
>>>
ThanksNevermind.. I found it on google. You must have an SE version of Oracle which does not support Bitmapped Indexes. You will have to use another index type.
-
ORA-30966: error detected in the XML Index layer
Dear all,
after upgrading from 9.2.0.8 to 11.2.0.1, Autoconfig ended with error:
Alert log file shows :
Mon Jul 04 21:33:50 2011
Errors in file /ebiz/oracle/diag/rdbms/vision/VISION/trace/VISION_ora_31642.trc (incident=16196):
+ORA-00600: internal error code, arguments: [kzxcInitLoadLocal-7], [64131], [ORA-64131: XMLIndex Metadata: failure during the looking up of the dictionary+
+ORA-30966: error detected in the XML Index layer+
+ORA-31011: XML parsing failed+
+ORA-01403: no data found+
+], [], [], [], [], [], [], [], [], []+
ORA-01403: no data found
Incident details in: /ebiz/oracle/diag/rdbms/vision/VISION/incident/incdir_16196/VISION_ora_31642_i16196.trc
Mon Jul 04 21:48:25 2011
Incremental checkpoint up to RBA [0x3b2.a445.0], current log tail at RBA [0x3b2.a447.0]
Mon Jul 04 21:49:25 2011
Errors in file /ebiz/oracle/diag/rdbms/vision/VISION/trace/VISION_ora_330.trc (incident=16206):
+ORA-00600: internal error code, arguments: [kzxcInitLoadLocal-7], [64131], [ORA-64131: XMLIndex Metadata: failure during the looking up of the dictionary+
+ORA-30966: error detected in the XML Index layer+
+ORA-31011: XML parsing failed+
for ORA-30966 i found one metalink document
Bug 9496480: XDB VIEWS INVALIDATED AFTER RUNNING CATUPGRD.SQL UPGRADING 9.2.0.8.0 TO 11.2.0.1I am not able to understand this bug detail, can some one help me to understand this BUG 9496480. Is it possible to run autoconfig ?RegardsHAMEEDThis the result shows that ORACLE REAL APPLICATION CLUSTERS status is "INVALID" but we dont have any RAC configuration.!!!
SQL> select COMP_NAME,VERSION,STATUS from dba_registry;
COMP_NAME VERSION STATUS
Oracle Database Catalog Views 11.2.0.1.0 VALID
Oracle Database Packages and Types 11.2.0.1.0 VALID
Oracle Real Application Clusters 11.2.0.1.0 INVALID
JServer JAVA Virtual Machine 11.2.0.1.0 VALID
Oracle XDK 11.2.0.1.0 VALID
Oracle Database Java Packages 11.2.0.1.0 VALID
Oracle Multimedia 11.2.0.1.0 VALID
Spatial 11.2.0.1.0 VALID
Oracle Text 11.2.0.1.0 VALID
OLAP Analytic Workspace 11.2.0.1.0 VALID
Oracle OLAP API 11.2.0.1.0 VALID
OLAP Catalog 11.2.0.1.0 VALID
Oracle Data Mining 11.2.0.1.0 VALID
Oracle XML Database 11.2.0.1.0 VALID
14 rows selected.Kindly let me know what is the otherway !
Regards
HAMEED -
ORA-29855 - Error creating Spatial Index using a Stored Procedure
Hi
I am using Oracle 10gR2 database and I have written a stored procedure to create spatial index. But when i execute this function i get the following error message.
ORA-29855: error occurred in the execution of ODCIINDEXCREATE routine
ORA-13249: internal error in Spatial index: [mdidxrbd]
ORA-13249: Error in Spatial index: index build failed
ORA-13249: Error in R-tree: [mdrcrtscrt]
ORA-13231: failed to create index table [MDRT_217C1$] during R-tree creation
ORA-13249: Stmt-Execute Failure: CREATE TABLE FGDABZ40.MDRT_217C1$ (NODE_ID NUMBER, NODE_LEVEL NUMBER, INFO BLOB) LOB (INFO) STORE AS (CACHE) NOLOGGING PCTFREE 2
ORA-29400: data cartridge error
ORA-01031: insufficient privileges
ORA-06512: at "MDSYS.SDO_INDEX_METHOD_10I", line 10
ORA-06512: at line 1
ORA-06512: at "FGDABZ40.PKG_PSSDBE_APPLICATION", line 298
ORA-06512: at line 17
The tables that i am passing are registered in metadata and I am able to create indexes directly in sql plus. But when i try to create using this stored procedure, it fails.
it should be possible to create indexes using a generic function. Has any faced a similar problem?
regards
samHi,
I am having a same error on Oracle 10gR2 database. When I execute the same statement in sqlplus, it works. But it gives this error when I call the procedure which has this create spatial index statement.
ORA-29855: error occurred in the execution of ODCIINDEXCREATE routine
ORA-13249: internal error in Spatial index: [mdidxrbd]
ORA-13249: Error in Spatial index: index build failed
ORA-13249: Error in R-tree: [mdrcrtscrt]
ORA-13231: failed to create index table [MDRT_20CDA$] during R-tree creation
ORA-13249: Stmt-Execute Failure: CREATE TABLE "SDOMGR".MDRT_20CDA$ (NODE_ID NUMBER, NODE_LEVEL NUMBER, INFO BLOB) LOB (INFO) STORE AS (CACHE) NOLOGGING PCTFREE 2
ORA-29400: data cartridge error
ORA-01031: i
Any help will be appreciated.
Thanks,
Sri -
Error creating Spatial Index - ORA-29855
I have a DB in 11g that I used SQL Developer to copy to my local machine, 10g installation. I copied the same kind of databases around a lot but this is the first time I'm getting this error, when creating the spatial index.
For this table I only copy the DDL and then run a .sql file with lot's of inserts and now I'm trying to create the spatial index.
So I tried:
CREATE INDEX location_spatial_idx ON location(locationcoordinates) INDEXTYPE IS MDSYS.SPATIAL_INDEX;
And got:
ORA-29855: error occurred in the execution of ODCIINDEXCREATE routine
ORA-13203: failed to read USER_SDO_GEOM_METADATA view
ORA-13203: failed to read USER_SDO_GEOM_METADATA view
ORA-06512: at "MDSYS.SDO_INDEX_METHOD_10I", line 10
My DB is:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Prod
I tried running the create index as SYSDBA with no luck.
select * from mdsys.sdo_index_metadata_table -> empty for this user owner
select sdo_index_name from user_sdo_index_metadata -> empty
SELECT * FROM SDO_INDEX_METADATA -> empty
So... any clue on what I'm doing wrong?user10768987 wrote:
ORA-29855: error occurred in the execution of ODCIINDEXCREATE routine
ORA-13203: failed to read USER_SDO_GEOM_METADATA view
So... any clue on what I'm doing wrong?I would think that Oracle is quite clearly telling you what is wrong here: Your table is not in the metadata.
If you simply create the DDL for the table and create the insert statements from SQL Developer, it won't create the insert into user_sdo_geom_metadata....
And in order to create a spatial index, the table MUST be in the user_sdo_geom_metadata, whether you try to create the index as SYSDBA or as the owner of the table.
Regards,
Stefan
Edited by: Stefan Jager on Jun 4, 2013 9:14 AM -
ORA-01502 error in case of unusable unique index and bulk dml
Hi, all.
The db is 11.2.0.3 on a linux machine.
I made a unique index unusable, and issued a dml on the table.
Howerver, oracle gave me ORA-01502 error.
In order to avoid ORA-01502 error, do I have to drop the unique index ,and do bulk dml, and recreate the index?
Or Is there any other solution without re-creating the unique index?
create table hoho.abcde as
select level col1 from dual connect by level <=1000
10:09:55 HOHO@PD1MGD>create unique index hoho.abcde_dx1 on hoho.abcde (col1);
Index created.
10:10:23 HOHO@PD1MGD>alter index hoho.abcde_dx1 unusable;
Index altered.
Elapsed: 00:00:00.03
10:11:27 HOHO@PD1MGD>delete from hoho.abcde where rownum < 11;
delete from hoho.abcde where rownum < 11
ERROR at line 1:
ORA-01502: index 'HOHO.ABCDE_DX1' or partition of such index is in unusable stateThanks in advance.
Best Regards.Hi. all.
The following is from "http://docs.oracle.com/cd/E14072_01/server.112/e10595/indexes002.htm#CIHJIDJG".
Is there anyone who can show me a tip to avoid the following without dropping and re-creating an unique index?
•DML statements terminate with an error if there are any unusable indexes that are used to enforce the UNIQUE constraint.
Unusable indexes
An unusable index is ignored by the optimizer and is not maintained by DML. One reason to make an index unusable is if you want to improve the performance of bulk loads. (Bulk loads go more quickly if the database does not need to maintain indexes when inserting rows.) Instead of dropping the index and later recreating it, which requires you to recall the exact parameters of the CREATE INDEX statement, you can make the index unusable, and then just rebuild it. You can create an index in the unusable state, or you can mark an existing index or index partition unusable. The database may mark an index unusable under certain circumstances, such as when there is a failure while building the index. When one partition of a partitioned index is marked unusable, the other partitions of the index remain valid.
An unusable index or index partition must be rebuilt, or dropped and re-created, before it can be used. Truncating a table makes an unusable index valid.
Beginning with Oracle Database 11g Release 2, when you make an existing index unusable, its index segment is dropped.
The functionality of unusable indexes depends on the setting of the SKIP_UNUSABLE_INDEXES initialization parameter.
When SKIP_UNUSABLE_INDEXES is TRUE (the default), then:
•DML statements against the table proceed, but unusable indexes are not maintained.
•DML statements terminate with an error if there are any unusable indexes that are used to enforce the UNIQUE constraint.
•For non-partitioned indexes, the optimizer does not consider any unusable indexes when creating an access plan for SELECT statements. The only exception is when an index is explicitly specified with the INDEX() hint.
•For a partitioned index where one or more of the partitions are unusable, the optimizer does not consider the index if it cannot determine at query compilation time if any of the index partitions can be pruned. This is true for both partitioned and non-partitioned tables. The only exception is when an index is explicitly specified with the INDEX() hint.
When SKIP_UNUSABLE_INDEXES is FALSE, then:
•If any unusable indexes or index partitions are present, any DML statements that would cause those indexes or index partitions to be updated are terminated with an error.
•For SELECT statements, if an unusable index or unusable index partition is present but the optimizer does not choose to use it for the access plan, the statement proceeds. However, if the optimizer does choose to use the unusable index or unusable index partition, the statement terminates with an error.Thanks in advance.
Best Regards. -
We have a table with spatial data (polygon), containing 2.4 million rows. SRID=8307. Creating spatial index fails on this table. Spatial version 10.2.0.3.0 and it is valid in dba_registry. Please help. Thanks in advance. Error message is
Error starting at line 3 in command:
CREATE INDEX SST_BASEDATA.SIDX_ISPSPATIALTEMP ON SST_BASEDATA.ISP_SPATIALTEMP (GEOMETRY)
INDEXTYPE IS MDSYS.SPATIAL_INDEX
PARAMETERS ('tablespace=tdx_basedata_isp layer_gtype=POLYGON') PARALLEL
Error report:
SQL Error: ORA-29855: error occurred in the execution of ODCIINDEXCREATE routine
ORA-13249: Error in Rtree: [mdrcrrdmddata, select /*+ PARALLEL(a, 32767) */ rid, cen from M8_1CC99$$ a where cen >= :1 and cen <= :2], 83243 83244
ORA-06512: at "MDSYS.SDO_INDEX_METHOD_10I", line 10We have a similar problem with ORACLE 10.2.0.3, SRID 31297, 2-dimensional data, points, lines polygon.
We installed a new Computer (WINDOWS 2003 Server, Oracle 10.2.0.3) and transfered an application from an existing Oracle 10.2.0.2 instance.
We transferred the data by exp/imp utility.
The creation of the index failed (during import or creating the index by a sql command)
for all tables with more than 2 mill rows with the following message:
SQL Error: ORA-29855: error occurred in the execution of ODCIINDEXCREATE routine
ORA-06512: at "MDSYS.SDO_INDEX_METHOD_10I", line 10
We did not get the ORA-13249 error.
For tables with less than 1 mill rows the index was created.
We decided to go back to Oracle 10.2.0.2 and all works fine.
We will upgrade the database to 10.2.0.3 when a patch will be available. -
ORA-28606: block too fragmented to build bitmap index
I'm getting a spurious error on 9.2.0.2.0 running on a HP-UX machine. I running a PL/SQL package produced by OWB. The package works successfully on other environments. The package falls over at a multi-table insert command.
I call the error message spurious as it refers to bitmap indexes and there are no bit map indexes on the target tables, and now none in the DB at all.
Any suggestions ?There may not be any Bitmap indexes on the target tables but the same might be created due to the table having Primary Key fields. Check for the same if such primary key fields are getting violated.
-
Creating database problem with ORA-01519: error while processing file '' ne
Dear all,
I am having rough time with creating database manually. can anyone help me with the following errors.
ALERT LOGFILE:-
Sun May 31 12:00:39 2009
Errors in file d:\oracle\product\10.1.0\admin\oracle5\udump\oracle5_ora_3444.trc:
ORA-01501: CREATE DATABASE failed
ORA-01519: error while processing file '%ORACLE_HOME%\RDBMS\ADMIN\SQL.BSQ' near line 5744
ORA-00604: error occurred at recursive SQL level 1
ORA-01119: error in creating database file 'D:\oracle\product\10.1.0\oradata\ORACLE5 \datafile\undotbs1.dbf'
ORA-27040: file create error, unable to create file
OSD-04002: unable to open file
O/S-Error: (OS 3) The system cannot find the path specified.
Error 1519 happened during db open, shutting down database
USER: terminating instance due to error 1519
Sun May 31 12:00:39 2009
Errors in file d:\oracle\product\10.1.0\admin\oracle5\bdump\oracle5_reco_3416.trc:
ORA-01519: error while processing file '' near line
CREATE DATABASE SCRIPT:-
create database ORACLE5
user sys identified by bala
user system identified by bala
logfile
group 1 ('D:\oracle\product\10.1.0\oradata\ORACLE5\logfile\redo01.log') SIZE 50M,
group 2 ('D:\oracle\product\10.1.0\oradata\ORACLE5\logfile\redo02.log') SIZE 50M,
group 3 ('D:\oracle\product\10.1.0\oradata\ORACLE5\logfile\redo03.log') SIZE 50M
maxlogfiles 5
maxlogmembers 5
maxloghistory 1
maxdatafiles 50
maxinstances 1
datafile 'D:\oracle\product\10.1.0\oradata\ORACLE5\datafile\system01.dbf' size 200m autoextend on maxsize unlimited extent management local
undo tablespace UNDOTBS1 datafile 'D:\oracle\product\10.1.0\oradata\ORACLE5 \datafile\undotbs1.dbf' size 10m autoextend on maxsize unlimited
sysaux datafile 'D:\oracle\product\10.1.0\oradata\ORACLE5\datafile\sysaux01.dbf' size 100m autoextend on maxsize unlimited
default temporary tablespace temp tempfile 'D:\oracle\product\10.1.0\oradata\ORACLE5 \datafile\temp01.dbf' size 10m autoextend on maxsize unlimited
character set US7ASCII
NATIONAL CHARACTER SET AL16UTF16
INIT.ORA FILE:-
# Copyright (c) 1991, 2001, 2002 by Oracle Corporation
# Archive
log_archive_format=ARC%S_%R.%T
# Cache and I/O
db_block_size=8192
db_cache_size=25165824
db_file_multiblock_read_count=16
# Cursors and Library Cache
open_cursors=300
# Database Identification
db_domain=""
db_name=oracle5
# Diagnostics and Statistics
background_dump_dest=D:\oracle\product\10.1.0\admin\oracle5\bdump
core_dump_dest=D:\oracle\product\10.1.0\admin\oracle5\cdump
user_dump_dest=D:\oracle\product\10.1.0\admin\oracle5\udump
# File Configuration
#db_create_file_dest=D:\oracle\product\10.1.0\oradata
db_recovery_file_dest=D:\oracle\product\10.1.0\flash_recovery_area
db_recovery_file_dest_size=2147483648
# Job Queues
job_queue_processes=10
# Miscellaneous
compatible=10.1.0.2.0
# Pools
java_pool_size=50331648
large_pool_size=8388608
shared_pool_size=83886080
# Processes and Sessions
processes=150
# Security and Auditing
remote_login_passwordfile=EXCLUSIVE
# Shared Server
dispatchers="(PROTOCOL=TCP) (SERVICE=oracle5XDB)"
# Sort, Hash Joins, Bitmap Indexes
pga_aggregate_target=25165824
sort_area_size=65536
# System Managed Undo and Rollback Segments
undo_management=AUTO
undo_tablespace=UNDOTBS1
control_files=("D:\ORACLE\PRODUCT\10.1.0\ORADATA\ORACLE5\CONTROLFILE\control01.CTL", "D:\ORACLE\PRODUCT\10.1.0\FLASH_RECOVERY_AREA\ORACLE5\CONTROLFILE\control02.CTL")Hi,
undo tablespace UNDOTBS1 datafile 'D:\oracle\product\10.1.0\oradata\ORACLE5 \datafile\undotbs1.dbf' size 10m autoextend on maxsize unlimited
After ORACLE5 there is a space character. Typo? Create proper directory or delete this character.
Bartek -
Unable to create a bitmap index
Hi,
I want to create a bitmap index on one of the colums on a table. I fired following query and it failed.
SQL> CREATE BITMAP INDEX TRANS_N_BITMAPIDX_VEH_PLATFORM ON TRANSACTION_NEW(VEH_PLATFORM) LOCAL;
Error starting at line 2 in command:
CREATE BITMAP INDEX TRANS_N_BITMAPIDX_VEH_PLATFORM ON TRANSACTION_NEW(VEH_PLATFORM) LOCAL
Error at Command Line:2 Column:70
Error report:
SQL Error: ORA-01408: such column list already indexed
01408. 00000 - "such column list already indexed"
*Cause:
*Action:I found there is a combined NORMAL index with VEH_PLATFORM column called ‘IDX$$_30AA00021’. It has following columns
• VEH_PLATFORM
• VEH_MODEL
• MODL_YR_NBR
• VEH_MAKE
• TXN_PROCS_DT
But I was able to create bitmap index on VEH_MODEL,MODL_YR_NBR and VEH_MAKE columns without any error.
Why does it error out for VEH_PLATFORM column?
Regards,
SamHi,
I am sure that BITMAP index is only created for
VEH_MAKE
VEH_MODEL
MODL_YR_NBR
BUILD_REGION
VEH_LINE_SERIES
TRANS_CTG_ID
and not for VEH_PLATFORM.
SQL> SELECT * FROM USER_INDEXES WHERE INDEX_TYPE='BITMAP' AND TABLE_NAME='TRANSACTION_NEW';
INDEX_NAME INDEX_TYPE TABLE_OWNER TABLE_NAME TABLE_TYPE UNIQUENESS COMPRESSION PREFIX_LENGTH TABLESPACE_NAME INI_TRANS MAX_TRANS INITIAL_EXTENT NEXT_EXTENT MIN_EXTENTS MAX_EXTENTS PCT_INCREASE PCT_THRESHOLD INCLUDE_COLUMN FREELISTS FREELIST_GROUPS PCT_FREE LOGGING BLEVEL LEAF_BLOCKS DISTINCT_KEYS AVG_LEAF_BLOCKS_PER_KEY AVG_DATA_BLOCKS_PER_KEY CLUSTERING_FACTOR STATUS NUM_ROWS SAMPLE_SIZE LAST_ANALYZED DEGREE INSTANCES PARTITIONED TEMPORARY GENERATED SECONDARY BUFFER_POOL FLASH_CACHE CELL_FLASH_CACHE USER_STATS DURATION PCT_DIRECT_ACCESS ITYP_OWNER ITYP_NAME PARAMETERS GLOBAL_STATS DOMIDX_STATUS DOMIDX_OPSTATUS FUNCIDX_STATUS JOIN_INDEX IOT_REDUNDANT_PKEY_ELIM DROPPED VISIBILITY DOMIDX_MANAGEMENT SEGMENT_CREATED
TRANS_N_BITMAPIDX_MAKE BITMAP VISUAL TRANSACTION_NEW TABLE NONUNIQUE DISABLED 2 6102 20 305 611 12226 N/A 12226 2208 11-MAY-11 1 1 YES N N N DEFAULT DEFAULT DEFAULT NO YES NO NO NO VISIBLE N/A
TRANS_N_BITMAPIDX_MODEL BITMAP VISUAL TRANSACTION_NEW TABLE NONUNIQUE DISABLED 2 11284 158 71 144 22813 N/A 22813 2321 11-MAY-11 1 1 YES N N N DEFAULT DEFAULT DEFAULT NO YES NO NO NO VISIBLE N/A
TRANS_N_BITMAPIDX_BUILD_REGION BITMAP VISUAL TRANSACTION_NEW TABLE NONUNIQUE DISABLED 2 2911 5 582 1161 5808 N/A 5808 5808 11-MAY-11 1 1 YES N N N DEFAULT DEFAULT DEFAULT NO YES NO NO NO VISIBLE N/A
TRANS_N_BITMAPIDX_MODL_YR_NBR BITMAP VISUAL TRANSACTION_NEW TABLE NONUNIQUE DISABLED 2 2911 5 582 1161 5808 N/A 5808 5808 11-MAY-11 1 1 YES N N N DEFAULT DEFAULT DEFAULT NO YES NO NO NO VISIBLE N/A
TRANS_N_BITMAPIDX_TRANS_CTG_ID BITMAP VISUAL TRANSACTION_NEW TABLE NONUNIQUE DISABLED 2 7547 43 175 359 15457 N/A 15457 2345 11-MAY-11 1 1 YES N N N DEFAULT DEFAULT DEFAULT NO YES NO NO NO VISIBLE N/A
TRANS_N_BITMAPIDX_VEH_LINE_S BITMAP VISUAL TRANSACTION_NEW TABLE NONUNIQUE DISABLED 2 10581 253 41 84 21477 N/A 21477 2247 11-MAY-11 1 1 YES N N N DEFAULT DEFAULT DEFAULT NO YES NO NO NO VISIBLE N/A
6 rows selectedRegards,
Sam -
Partitioned IOT of Object Type - mapping table not allowed for bitmap index
Hi,
looks like a feature available for standard Partitioned IOTs is not supported for object based tables, namely the MAPPING TABLE construct to support secondary local bitmap indexes.
Can you confirm behaviour is as expected/documented?
If so, is a fix/enhancement to support mapping table for object-based Partitioned IOTs in the pipeline?
Results for partition-wise load using pipelined table function are very good, look-ups across tens of millions of rows are excellent.
Environment = Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
OS = Oracle Enterprise Linux Server release 5.2 (Carthage) 2.6.18 92.el5 (32-bit)
Here's the potted test-case...
1) First the non object based Partitioned IOT - data is range-partitioned across the alphabet
CREATE TABLE IOT_Table (
textData VARCHAR2(10),
numberData NUMBER(10,0),
CONSTRAINT IOT_Table_PK PRIMARY KEY(textData))
ORGANIZATION INDEX MAPPING TABLE PCTFREE 0 TABLESPACE Firewire
PARTITION BY RANGE (textData)
(PARTITION Text_Part_A VALUES LESS THAN ('B') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_B VALUES LESS THAN ('C') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_C VALUES LESS THAN ('D') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_D VALUES LESS THAN ('E') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_E VALUES LESS THAN ('F') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_F VALUES LESS THAN ('G') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_G VALUES LESS THAN ('H') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_H VALUES LESS THAN ('I') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_I VALUES LESS THAN ('J') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_J VALUES LESS THAN ('K') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_K VALUES LESS THAN ('L') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_L VALUES LESS THAN ('M') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_M VALUES LESS THAN ('N') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_N VALUES LESS THAN ('O') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_O VALUES LESS THAN ('P') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_P VALUES LESS THAN ('Q') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_Q VALUES LESS THAN ('R') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_R VALUES LESS THAN ('S') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_S VALUES LESS THAN ('T') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_T VALUES LESS THAN ('U') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_U VALUES LESS THAN ('V') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_V VALUES LESS THAN ('W') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_W VALUES LESS THAN ('X') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_X VALUES LESS THAN ('Y') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_Y VALUES LESS THAN ('Z') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_Z VALUES LESS THAN (MAXVALUE) PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0))
NOLOGGING PARALLEL -- FLASHBACK ARCHIVE IOT_Flashback_Data
SQL> table IOT_TABLE created.
2) Create the local secondary bitmap index utilising the underlying mapping table
CREATE BITMAP INDEX IOT_Table_BMI1 ON IOT_Table (numberData)
LOCAL STORAGE (INITIAL 1M PCTINCREASE 0 NEXT 512K) NOLOGGING PARALLEL;
SQL> bitmap index IOT_TABLE_BMI1 created.
3) Quick test to confirm all ok
SQL> INSERT INTO IOT_Table VALUES ('ABC123',100);
SQL> 1 rows inserted.
SQL> SELECT * FROM IOT_Table;
TEXTDATA NUMBERDATA
ABC123 100
4) Now create a minimal object type to use as the template for object table
CREATE TYPE IOT_type AS OBJECT
textData VARCHAR2(10 CHAR),
numberData NUMBER(10,0)
) FINAL
SQL> TYPE IOT_type compiled
5) Attempt to create an object-based range partitioned IOT, including MAPPING TABLE clause as per step (1)
CREATE TABLE IOTObj_Table OF IOT_type (textData PRIMARY KEY)
OBJECT IDENTIFIER IS PRIMARY KEY ORGANIZATION INDEX
MAPPING TABLE -- we'd like to use this feature to enable use of Bitmap Indexes...
PCTFREE 0 TABLESPACE Firewire
PARTITION BY RANGE (textData)
(PARTITION Text_Part_A VALUES LESS THAN ('B') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_B VALUES LESS THAN ('C') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_C VALUES LESS THAN ('D') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_D VALUES LESS THAN ('E') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_E VALUES LESS THAN ('F') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_F VALUES LESS THAN ('G') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_G VALUES LESS THAN ('H') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_H VALUES LESS THAN ('I') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_I VALUES LESS THAN ('J') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_J VALUES LESS THAN ('K') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_K VALUES LESS THAN ('L') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_L VALUES LESS THAN ('M') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_M VALUES LESS THAN ('N') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_N VALUES LESS THAN ('O') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_O VALUES LESS THAN ('P') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_P VALUES LESS THAN ('Q') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_Q VALUES LESS THAN ('R') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_R VALUES LESS THAN ('S') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_S VALUES LESS THAN ('T') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_T VALUES LESS THAN ('U') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_U VALUES LESS THAN ('V') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_V VALUES LESS THAN ('W') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_W VALUES LESS THAN ('X') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_X VALUES LESS THAN ('Y') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_Y VALUES LESS THAN ('Z') PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0),
PARTITION Text_Part_Z VALUES LESS THAN (MAXVALUE) PCTFREE 0 TABLESPACE Firewire Storage (Initial 10M Next 1M PCTIncrease 0))
NOLOGGING PARALLEL -- FLASHBACK ARCHIVE IOT_Flashback_Data
This errors out with the following...
SQL Error: ORA-25182: feature not currently available for index-organized tables
25182. 00000 - "feature not currently available for index-organized tables"
*Cause: An attempt was made to use one or more of the following feature(s) not
currently supported for index-organized tables:
CREATE TABLE with LOB/BFILE/VARRAY columns,
partitioning/PARALLEL/CREATE TABLE AS SELECT options,
ALTER TABLE with ADD/MODIFY column options, CREATE INDEX
*Action: Do not use the disallowed feature(s) in this release.
6) Re-running the create table statement in step 5 without the MAPPING TABLE clause works fine. Not surprisingly an attempt to create a secondary local bitmap index on this table fails as there's no mapping table, like so...
CREATE BITMAP INDEX IOTObj_Table_BMI1 ON IOTObj_Table (numberData)
LOCAL STORAGE (INITIAL 1M PCTINCREASE 0 NEXT 512K) NOLOGGING PARALLEL;
CREATE TABLE with LOB/BFILE/VARRAY columns,
partitioning/PARALLEL/CREATE TABLE AS SELECT options,
ALTER TABLE with ADD/MODIFY column options, CREATE INDEX
*Action: Do not use the disallowed feature(s) in this release.
CREATE BITMAP INDEX IOTObj_Table_BMI1 ON IOTObj_Table (numberData)
LOCAL STORAGE (INITIAL 1M PCTINCREASE 0 NEXT 512K) NOLOGGING PARALLEL
Error at Command Line:99 Column:13
Error report:
SQL Error: ORA-00903: invalid table name
00903. 00000 - "invalid table name"
7) Creating a secondary local b-tree index is fine, like so...
SQL> CREATE INDEX IOTObj_Table_I1 ON IOTObj_Table (numberData)
LOCAL STORAGE (INITIAL 1M PCTINCREASE 0 NEXT 512K) NOLOGGING PARALLEL;
index IOTOBJ_TABLE_I1 created.
8) A quick test to ensure object table ok...
SQL> INSERT INTO IOTObj_Table VALUES (IOT_Type('DEF456',500));
SQL> 1 rows inserted.
SQL> SELECT * FROM IOTObj_Table;
TEXTDATA NUMBERDATA
DEF456 500Thanks Dan,
the intention is to range partition based on the initial character, so A* -> Text_Part_A, B* -> Text_Part_B, and so on.
Here's an example, using an empty IOTObj_Table as created previously.
1) Set up & confirm some test data (two 'D's, one 'N', and two 'Z's)
SQL> INSERT INTO IOTObj_Table VALUES (IOT_Type('DEF456',500));
SQL> INSERT INTO IOTObj_Table VALUES (IOT_Type('DDD111',510));
SQL> INSERT INTO IOTObj_Table VALUES (IOT_Type('N3000',515));
SQL> INSERT INTO IOTObj_Table VALUES (IOT_Type('ZZ1212',520));
SQL> INSERT INTO IOTObj_Table VALUES (IOT_Type('Z111X',530));
SQL> COMMIT;
SQL> SELECT * FROM IOTObj_Table;
TEXTDATA NUMBERDATA
DDD111 510
DEF456 500
N3000 515
Z111X 530
ZZ1212 520
2) Just to prove our IOT is enforcing the Primary Key based on the TextData attribute, try to insert a duplicate
SQL> INSERT INTO IOTObj_Table VALUES (IOT_Type('Z111X',530));
Error starting at line 141 in command:
INSERT INTO IOTObj_Table VALUES (IOT_Type('Z111X',530))
Error report:
SQL Error: ORA-00001: unique constraint (OCDataSystems.SYS_IOT_TOP_84235) violated
00001. 00000 - "unique constraint (%s.%s) violated"
*Cause: An UPDATE or INSERT statement attempted to insert a duplicate key.
For Trusted Oracle configured in DBMS MAC mode, you may see
this message if a duplicate entry exists at a different level.
*Action: Either remove the unique restriction or do not insert the key.
3) Now confirm that our data has been slotted into the range-based partition we expect using the PARTITION clause of SELECT...
- The two 'D's...
SQL> SELECT * FROM IOTObj_Table PARTITION (Text_Part_D);
TEXTDATA NUMBERDATA
DDD111 510
DEF456 500
- The single 'N'...
SQL> SELECT * FROM IOTObj_Table PARTITION (Text_Part_N);
TEXTDATA NUMBERDATA
N3000 515
- The two 'Z's...
SQL> SELECT * FROM IOTObj_Table PARTITION (Text_Part_Z);
TEXTDATA NUMBERDATA
Z111X 530
ZZ1212 520
4) And to wrap up confirm an empty partition
SELECT * FROM IOTObj_Table PARTITION (Text_Part_W); -
Does XE support Bitmap Indexes?
Hi,
I am trying to create a bitmap index in XE and getting the following error:
ORA-00439: feature not enabled: Bit-mapped indexes
I am guessing this is only available in the enterprise editions of the database or is there some way i can enable this option?
thanks,
BrendenI am guessing this is only available in the enterprise editions of the databaseBitmap indexes are enterprise only. You can find a full list of included and excluded functionality in the XE documentation.
Cheers, APC -
Solution for ora-28604 error?
CREATE BITMAP INDEX IDX_NAME ON TABLE1(CODE);
This creation is giving the following error:
ORA-28604: table too fragmented to build bitmap index (39548144,72,72)
How to resolve this issue?HI...
U can resolve using two methods:-
1. Export the table, drop the table and import it and then create the index.
2. move the table into another tablespace.
ALETR TABLE <TABLE_NAME> MOVE TABLESPACE <TBS_NAME>;
the user whose table u are moving, should have privileges on that tablespace.
Go through METALINK Doc ID: Note:119674.1 -
ORA-00604: error occurred at recursive SQL level 1 and ORA-30036:
Hi Gurus,
I am trying to shrink the table segment along with indexes.
I am using
alter table OWNER.TABLE shrink space cascade; syntax but after 1 hr i got the following error.
ERROR at line 1:
ORA-00604: error occurred at recursive SQL level 1
ORA-30036: unable to extend segment by 4 in undo tablespace 'UNDOTBS01'
UNDO tablespace has sufficient space and undo_retention is 6Hrs. What could be the problem ?
Or do i need to use
alter table OWNER.TABLE shrink space; only ?
Thanks & RegardsHi,
I am doing this in testing enviornment and before this activity added 4g space to existing 50GB undo tablespace.
No jobs are running in testing environment and the shrinking on table is of 12GB. I cann't import/export and truncate or move to different tablespaces as this has oracle advanced queue and chances are more to corrupt queues.
Thanks
Maybe you are looking for
-
I chatted online yesterday with Adobe and I have domain problem
I bought Photoshop 10 and have not been able to login yesterday I chatted online with Adobe and because i used an e-mail address when I upgraded to 10, when I left the company that e-mail address was dead it now causes a problem Adobe tells me becaus
-
CS2 automatically fit row height to content in table?
Hi guys, I'm using CS2 and I have a table with lots of pages. I need to be able to have the height automatically fit to the content of the tables. Unfortunately data is not consistent therefore some cells have 2 rows of content, others 8. Automatical
-
Calls in queue drop when first call is answered
When all agents are busy and there are multiple calls in queue, at the point a call gets routed to an agent and answered from queue, the other calls in queue hear the disconnect prompt. This is CME 9.1 on Version 15.0(1r)M16 application service qu
-
How to replac the BIOS battery on notebook MSI GE70
I need to replace the BIOS battery to time but I cannot see any guide how to find it ? Do you have any pointers ? Thanks!
-
Combining Datagrid Dataprovider with form fields
I am sorry I have know where else to go. I have a datagrid that gets filled in with an ArrayCollection. One column is a check box called "Include" So I would check a few records (rows) and then I have some formfields. I want the form fields to get ap