ArcSDE / OWM / WKBF / Index
Hello
I've some questions about ArcSDE :
1- When you stored data using the WKBF (well known binary format) you don't need spatial to store data? It's just BLOB on Oracle Table? (... and you don't have any 'geoSQL functions' to use data from Oracle)
2- Could we use multigeometry table (ie more than one MDSYS.SDO_GEOMETRY column in one table) with ArcSDE?
3- Is ArcSDE creating index on Oracle Spatial Table? ... R-Tree is supported?
4- OWM (Workspace manager) seems to do the same things as SDE versionning and register. Could we use OWM for GIS like mapinfo and SDE versionning for ESRI GIS on the same dataset?... What do exactly SDE versionning to table structure?
5- In Oracle 9 OWM is no longer in beta... do you know if GIS company will use OWM to implement versionning from the GIS interface?
Thanks for all
Francois
1. You are correct. You do not need Spatial, but then you do not get spatial SQL functions. You have to use ArcSDE and ArcObjects for that functionality.
2. No. Only one MDSYS.GDO_GEOMETRY column is supported in ArcSDE.
<BLOCKQUOTE><font size="1" face="Verdana, Arial">quote:</font><HR>Originally posted by Francois ([email protected]):
Hello
I've some questions about ArcSDE :
1- When you stored data using the WKBF (well known binary format) you don't need spatial to store data? It's just BLOB on Oracle Table? (... and you don't have any 'geoSQL functions' to use data from Oracle)
2- Could we use multigeometry table (ie more than one MDSYS.SDO_GEOMETRY column in one table) with ArcSDE?
3- Is ArcSDE creating index on Oracle Spatial Table? ... R-Tree is supported?
4- OWM (Workspace manager) seems to do the same things as SDE versionning and register. Could we use OWM for GIS like mapinfo and SDE versionning for ESRI GIS on the same dataset?... What do exactly SDE versionning to table structure?
5- In Oracle 9 OWM is no longer in beta... do you know if GIS company will use OWM to implement versionning from the GIS interface?
Thanks for all
Francois<HR></BLOCKQUOTE>
null
Similar Messages
-
Error while importing data into Oracle 11gr2 with arcsde 9.3.1
I am getting error while importing the data into oracle 11g r2. We are using arcsde 9.3.1
It seems to be having some problem with spatial index creation.
kindly help
IMP-00017: following statement failed with ORACLE error 29855:
"CREATE INDEX "A3032_IX1" ON "DGN_POLYLINE_2D" ("SHAPE" ) INDEXTYPE IS "MDS"
"YS"."SPATIAL_INDEX""
IMP-00003: ORACLE error 29855 encountered
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 spatial index: [mdrcrtxfergm]
ORA-13249: Error in spatial index: [mdpridxtxfergm]
ORA-13200: internal error [ROWID:AAAT5pAA9AACIy5AAQ] in spatial indexing.
ORA-13206: internal error [] while creating the spatial index
ORA-13033: Invalid data in the SDO_ELEM_INFO_ARRAY in SDO_GEOMETRY object
ORA-06512: at "MDSYSGuys,
I am also getting the same error and also my issue is like I am not even to analyze for which indexes I am getting error. It does not hve any indx name before error.
Processing object type DATABASE_EXPORT/SCHEMA/TABLE/INDEX/DOMAIN_INDEX/INDEX
ORA-39083: Object type INDEX failed to create with error:
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 spatial index: [mdrcrtxfergm]
ORA-13249: Error in spatial index: [mdpridxtxfer]
ORA-29400: data cartridge error
ORA-12801: error signaled in parallel query server P000
ORA-13249: Error in spatial index: [mdpridxtxfergm]
ORA-13200: internal error [ROWID:AA
ORA-39083: Object type INDEX failed to create with error:
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 spatial index: [mdrcrtxfergm]
ORA-13249: Error in spatial index: [mdpridxtxfer]
ORA-29400: data cartridge error
ORA-12801: error signaled in parallel query server P002
ORA-13249: Error in spatial index: [mdpridxtxfergm]
ORA-13200: internal error [ROWID:AA
ORA-39083: Object type INDEX failed to create with error:
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 spatial index: [mdrcrtxfergm]
ORA-13249: Error in spatial index: [mdpridxtxfer]
ORA-29400: data cartridge error
stack cnt....
How can I find for which indexes it is failing?
Thank you,
Myra -
Data Retrieval Speed in Oracle Spatial vs. ESRI ArcSDE
I would appreciate any opinions regarding data retrieval
performance between Oracle Spatial and ESRI ArcSDE. Would an end-
user (using ESRI software) experience significant differences in
data retrieval speed depending on how the data were stored in
Oracle (MDSYS.SDO_GEOMETRY verses ESRI Binary/Blob formats).
Knowing that the ESRI binary formats are tailored to their
software front-end apps (ArcGIS, ArcMap, ArcCatalog, and
ArcInfo), wouldn't this be a "non-issue" until the spatial
dataset gets "large", and even then, wouldn't performance be
(almost) equal if the spatial indexes were created properly?
Thanks for your inputs,
BruceJohn,
You can't do that type of query in sql from sql*plus using
SDEBINARY. HOwever, you can perform spatial queries in ArcMap
if you are using SDEBINARY.
You can use the query builder to perform point-in-polygon type
queries.
Hope that helps.
For my two cents, I think SDO_GEOMETRY gives you a more robust
database to work with, because you have the added power of
Oracle Spatial functions. If you are using SDEBINARY you are
limited to only what you can do thru ArcGIS.
If you are concerned more about performance than accessibility,
especially with a large number of users, then SDEBINARY might
be the better choice.
I love Oracle Spatial and am hoping that the performance issue
will not be a serious one when we start putting ArcIMS developed
apps into production.
Dave -
Spatial index creation fails in oracle9i but works in 8i
Hi--
i'm using oracle9.0.1.2.0 and arcSDE on solaris 8
when i create a spatial feature table and index oracle gives me the foloowing error:
Extended error code(29855): 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-13236: internal error in R-tree processing: [failed to cluster in memory]
ORA-13249: Internal error in Spatial index: [mdrcrclmem]
ORA-13232: failed to allocate memory during R-tree creation
ORA-13249: Error in Rtree: [mdrcrrdtbl, select /*+ PARALLEL 4 */ rid , min_d1, max_d1 , min_d2, max_d2 from (select rownum rnum, rid , m(MDSYS.SPATIAL_INDEX)
this occurs whether i use cov2sde at the command line or Create Index in sqlplus:
SQL> create index COUNTY_IDX on COUNTY_SDO(shape)
2 indextype is mdsys.spatial_index
3 parameters ('SDO_INDX_DIMS=2 tablespace=sde2_idx');
create index COUNTY_IDX on COUNTY_SDO(shape)
ERROR at line 1:
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: Stmt-Execute Failure: SELECT count(*) from SDE.COUNTY_SDO
ORA-29400: data cartridge error
ORA-01116: error in opening database file 14
ORA-01110: data file 14: '/u04/oradata/GIS2/sde3_idx01.dbf'
ORA-27041: unable to open file
SVR4 Error: 24: Too many open files
Additional information: 3
ORA-06512: at "MDSYS.SDO_INDEX_METHOD_9I", line 7
ORA-06512: at line 1
the bizarre thing is that everything works tickety-boo in oracle 8i *8.1.7.3)
has anyone run across this?
cheers
--kassimthanks for the suggestion, but that didnt work either
i increased the file descriptor limit from 256 to 2048 (my sysadmin sez that could break lots of things in solaris and had another go:
elvis{1}% ulimit -a
time(seconds) unlimited
file(blocks) unlimited
data(kbytes) unlimited
stack(kbytes) 8192
coredump(blocks) unlimited
nofiles(descriptors) 2048
vmemory(kbytes) unlimited
lvis{2}% cov2sde -o create -l plstrfill_sdo,shape -f $GISDATA/survey.ws/plstr_fill,poly -e a -R 1 -k spatial -a file=$GISDATA/survey.ws/plstr_fields.txt -g SPIDX_RTREE
ArcSDE 8.2 Build 115 Wed Mar 6 09:48:27 PST 2002
Coverage to Layer Loading Administration Utility
Reading column selection file "/data/jack02/in_put/survey.ws/plstr_fields.txt"
Library /data/jack02/in_put/survey not found.
Unable to open library "/data/jack02/in_put/survey"
Loading feature class/subclass "poly"
from Coverage "/data/jack02/in_put/survey.ws/plstr_fill"
sde_layer_plstrfill_sdo: plstrfill_sdo is in LOADONLY mode
Imported 158399 features into SDE plstrfill_sdo,shape from coverage /data/jack02/in_put/survey.ws/plstr_fill,poly
SDE Error(-51) Underlying DBMS error
Extended error code(29855): 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-13230: failed to create temporary table [M2_8496$$] during R-tree creation
ORA-13249: Error in stmt: CREATE TABLE M2_8496$$ NOLOGGING tablespace SDE_IDX STORAGE (initial 4096K next 4096K pctincrease 0 maxextents unlimited) as (select rid , min_d1, max_d1 , min_d2, max_d2 from M0_8496$$ a, (select (min_d2+max_d2) value fro(MDSYS.SPATIAL_INDEX)
Not able to set layer into Normal-IO mode.
Cov2SDE completed.
No libraries currently set.
SQL> create index plstrfill_idx on plstrfill_sdo(shape)
2 indextype is mdsys.spatial_index
3 parameters ('SDO_INDX_DIMS=2 tablespace=sde4_idx');
create index plstrfill_idx on plstrfill_sdo(shape)
ERROR at line 1:
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-13230: failed to create temporary table [M2_84A5$$] during R-tree creation
ORA-13249: Error in stmt: CREATE TABLE M2_84A5$$ NOLOGGING tablespace SDE4_IDX
STORAGE (initial 4096K next 4096K pctincrease 0 maxextents unlimited) as
(select rid , min_d1, max_d1 , min_d2, max_d2 from M0_84A5$$ a, (select
(min_d2+max_d2) value from M0_84A5$$ where rowid='AAAISqAAPAAACCYABK') b where
(((a.min_d2+a.max_d2) < b.value) or (((a.min_d2+a.max_d2) = b.value) and (a.rid
<= 'AAAISeAAJAAAnvnAASZ'))))
ORA-13230: failed to create temporary table [M2_84A5$$] during R-tree creation
ORA-29400: data cartridge error
ORA-00210: cannot open the specified controlfile
ORA-00202: controlfile: '/u01/oradata/GIS2/control01.ctl'
ORA-27041: unable to open file
SVR4 Error: 24: Too many open files
Additional information: 3
ORA-06512: at "MDSYS.SDO_INDEX_METH
this is really killing me
my oracle is setup following the esri and oracle guidelines:
all our tablespaces are with UNLIMITED extent and maxsize on
any files. All the tablespaces follow Oracle9i best practices
such as OFA, SAFE, and SAME including Temporary Tablespace.
any suggestions would be realy helpful
--kassim -
Is it possible to create a spatial index on a view?
Hi
Is it possible to create a spatial index on a view?
We would like to link our spatial tables to each other (using only one of the SDO_GEOMETRY fields) in a view & make it very easy so that anybody can work with the data.
Thanks Caroline.Simon,
In order for autoregistration to work, you first need to make sure that all entries in mdsys.sdo_geom_metadata_table are registered with SDE. All tables not just one schema. None of our spatial tables or views exist in the SDE schema.
Also make sure all Oracle Spatial tables in sde.table_registry are held in mdsys.sdo_geom_metadata_table.
When a user makes a database connection in ArcCatalog, all Oracle Spatial tables will be registered with SDE automatically. Also, entries will be inserted into mdsys.sdo_geom_metadata_table and indexes will be created. If you do not have primary key fields, you will have to Register with Geodatabase and it will create the OBJECTID field.
This did not work for us originally. but after cleaning up metadata and installing SP1, it is working now and it is very convenient.
VIEWS:
You have to create the view thru SDE. You cannot register foreign views. There are bugs in support of views containing SDO_GEOMETRY objects. I have been told some problems will be fixed in SP2 and there may be a patch out to address some others.
Here are the incidents I have filed in reference to views:
1.
I created a view consisting of a geometry column from a "foreign" Oracle
Spatial table (SDO_GEOMETRY) and corresponding attribution in another table.
I used the following command to create the view through SDE:
C:\arcgis\arcexe81\BIN>sdetable -o create_view -T gis_v_traffic -t
"trims_traffi c_geom,traffic" -c
"trims_traffic_geom.geometry,trims_traffic_geom.fid,traffic.i
d_number,traffic.aadt" -w "trims_traffic_geom.mslink = traffic.mslink" -u
gis -p spatial -i esri_sde -s JJ0DN10
ArcSDE 8.1 Build 832 Thu Mar 22 14:08:07 PST 2001 Attribute Administration
Utility ----------------------------------------------------- Successfully
created view gis_v_traffic.
I can preview the geometries in ArcCatalog without error.
However, when I try to select a feature in ArcMap I get the following error:
The instruction at "0x125222dd" referenced memory at "0x00000000". The
memory could not be "read".
I click ok.
Then I get this error:
The insruction at "0x5f8012d3" referenced memory at "0x00000004". the memory
could not be "read".
I click ok and ArcMap terminates.
I can select features from the spatial table the view is pointing to, but
not from the view itself.
2.
I need to create views utilizing database links to tie attribution in other
databases to geometries created for that data in a spatial database.
I issued the following command from command prompt and got this error:
C:\arcgis\arcexe81\BIN>sdetable -o create_view -T link_v_traffic -t
"trims_traff ic_geom,[email protected]" -c
"trims_traffic_geom.geometry,trims_traffic_ge
om.fid,[email protected],[email protected]" -w
"trims_t raffic_geom.mslink = [email protected]" -u gis -p
spatial -i esri_sd e -s JJ0DN10
ArcSDE 8.1 Build 832 Thu Mar 22 14:08:07 PST 2001 Attribute Administration
Utility ----------------------------------------------------- Error:
Underlying DBMS error (-51). Error: Unable to create view link_v_traffic
ORA-00957: duplicate column name (link_v_traffic)
3.
Spatial Views created on Oracle Spatial LRS layers containing SDO_GEOMETRY
objects are not recognized as feature classes unless they are created with
the sdetable -o create_view command.
Here is typical SQL for the view creation:
create or replace view trims_v_traffic as select a.geometry,
b.nbr_tenn_cnty, b.nbr_rte, b.spcl_cse, b.cnty_seq, b.tr_beg_log_mle,
b.tr_end_log_mle, b.yr_trfc, b.aadt, b.pct_peak_hr, b.dhv_pct, b.drct_distr,
b.vhcl_pass_pickups, b.vhcl_su_trk, b.vhcl_mu_trk, b.actl_cnt, b.updt_by,
b.updt_on, b.mslink, b.mapid, b.id_number, b.sta_nbr from
gis.trims_traffic_geom a, gis.traffic b where a.mslink = b.mslink;
The table containing the SDO_GEOMETRY object is registered with SDE in the
following manner:
C:\arcgis\arcexe81\BIN>sdelayer -o register -l trims_traffic_geom,geometry
-e slM -k SDO_GEOME
TRY -s JJ0DN10 -i esri_sde -u gis -p spatial -c fid -C SDE
A feature class is successfully created for this layer and the data can be
added successfully to a map.
However, there is no way of adding data to a map from a spatial database
view containing an SDO_GEOMETRY object which was created externally from
SDE.
We are using Oracle Spatial 8.1.7 on NT 4.0. We are also using ArcGIS 8.1
and ArcSDE 8.1.1.
4.
SDE does not support spatial database views which reference snapshot
objects.
I was unable to create a view using sdetable -o create_view which referenced
a snapshot object.
The snapshot was created using the following sql syntax:
CREATE SNAPSHOT SNP_TEST
BUILD IMMEDIATE
REFRESH FAST
ON DEMAND
AS
SELECT * FROM [email protected]
We are using ArcSDE 8.1.1 with Oracle 8.1.7 on NT 4.0.
Here are the permissions I granted, they need to be the same for every schema:
for sde (these are all the permissions that might be needed for any type of
activity - new install or upgrade)..lets just step through and go ahead and
grant them all...
grant create session to sde;
grant create table to sde;
grant create procedure to sde;
grant create sequence to sde;
grant create trigger to sde;
grant unlimited tablespace to sde;
grant select any table to sde;
grant create any sequence to sde;
grant create any procedure to sde;
grant execute any procedure to sde;
grant drop any procedure to sde;
grant select any sequence to sde;
grant create any view to sde;
grant drop any view to sde;
grant create any trigger to sde;
grant drop any sequence to sde;
each Oracle user will also need the following privileges...
grant create session to gis;
grant create table to gis;
grant create procedure to gis;
grant create sequence to gis;
grant create trigger to gis;
grant unlimited tablespace to gis;
Viewer
The viewer is allowed to connect to an ArcSDE database. Other users grant
select privileges on their tables and feature classes to the viewer or to
the public role. The DBA can create a role that can be granted select
privileges on data objects owned by other users. The role can be granted to
the viewer.
create session
select on other user's data objects
Editor
The editor is allowed to connect to an ArcSDE database. Other users grant
select and insert, update, or delete on data objects they own to editor. The
DBA may create a role that can be granted select, insert, update, and delete
privileges on data objects owned by other users. The role can be granted to
the editor.
create session
select, insert, update, or delete on other user's data objects
Creator
The creator is allowed to connect to an ArcSDE database and create data
objects. The creator may grant privileges on their
objects to other users or roles. Other users can grant select and insert,
update, or delete on data objects they own to creator. The DBA may create a
role that can be granted select, insert, update, and delete privileges on
data objects
owned by other users. The role can be granted to the creator:
create session
create table
create procedure
create sequence
create trigger
unlimited tablespace
select, insert, update, or delete on other user's objects
It might be worthwhile to rebuild your SDE metadata. I can walk you thru that if you need help.
Hope this helps.
Dave
null -
ArcSDE SHAPE to SDO_GEOMETRY conversion
Hello, savvy folks out there -
I have a huge ArcSDE database that I want to query using Oracle Spatial's SQL API. I imagine that I need to add an SDO_GEOMETRY column to each feature class (a spatial table, really) and replicate into it the geometry data serialized in the SHAPE column of the feature class. Then, I would basically have regular spatial tables the Oracle way and play from there (spatial indexes, metadata, SQL, etc. good stuff).
Is this the right general idea? If anyone has gone thru a similar excercise, please share.
Thanks!
IlyaHello Ilya:
Your approach looks sound, although I have never tried to do this conversion using the same source and destination tables. I would watch for mutating table errors. There are PL/SQL methods for avoiding this error.
How do you plan to convert the LONG RAW (SDEBINARY) to SDO_GEOMETRY?. In our office, we use FME (www.safe.com) to get this sort of thing done. You would need their highest level of licence (costliest) to read and write the ESRI Geodatabase and SDO_GEOMETRY. If you cannot afford this, I would recommend contracting this task to a data conversion house.
Another alternative is to use ArcCatalog to export the data into new tables, and set your geometry type parameter in the SDE.DBTUNE table to SDO_GEOMETRY using a keyword other than DEFAULT. See the "ArcSDE Configuration and Tuning Guide for Oracle" (ESRI publication) for details.
Good Luck -
Richard Clement
Alaska Department of Natural Resources -
Spatial Index Creation Error on 9.2.0.1
Hi,
I can´t create a spatial index on an Oracle 9.2.0.1, Windows 2000 Server. I create the table, register metadata and when I try to create the index the folowing error is returned (some messages in Portuguese):
ORA-29855: ocorreu um erro na execução da rotina ODCIINDEXCREATE
ORA-13249: Error executing stmt: begin mdsys.prvt_idx.execute_insert(NULL, NULL, ' VALUES (''TESTUSER'',''MDIDX_INIT'', 0, 0, 64, -1, NLS_UPPER(''MDRT_7844$''), ''I_SDOTEST'', 1, ''TESTUSER'', ''"GEOM"'', 0, 0, 2, 0, ''DEFAULT'', ''DEFAULT'', NULL,NULL, NULL, NULL, NULL, NULL, NULL, 2, ''DEFAULT'', 10, NULL, NULL, NULL, NULL, ''FALSE'', ''VALID'', NULL)', NULL); end;
ORA-13249: Error in Spatial index: insert to metadata failed
ORA-29400: erro no cartucho de dados
ORA-00913: valores demais
ORA-06512: em "MDSYS.PRVT_IDX", line 5
ORA-06512: em line 1
ORA-06512: em "MDSYS.SDO_INDEX_METHOD_9I", line 7
ORA-06512: em line 1
The same error occurs with other database users.
On my notebook (Windows XP) with the same Oracle version installed the index is created succesfully.
What can be wrong on the server ?
Thanks.When I connect through sqlplus it shows:
SQL*Plus: Release 9.2.0.1.0 - Production on Mon Jun 14 17:14:33 2004
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
Connected to:
Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production
With the OLAP and Oracle Data Mining options
JServer Release 9.2.0.1.0 - Production
SQL>
The select on dba_registry returns:
COMP_ID COMP_NAME VERSION STATUS MODIFIED CONTROL SCHEMA PROCEDURE STARTUP PARENT_ID
CATALOG Oracle9i Catalog Views 9.2.0.1.0 VALID 14-JUN-2004 15:59:45 SYS SYS DBMS_REGISTRY_SYS.VALIDATE_CATALOG
CATPROC Oracle9i Packages and Types 9.2.0.1.0 VALID 14-JUN-2004 15:59:45 SYS SYS DBMS_REGISTRY_SYS.VALIDATE_CATPROC
OWM Oracle Workspace Manager 9.2.0.1.0 VALID 14-JUN-2004 15:59:45 SYS WMSYS OWM_VALIDATE
JAVAVM JServer JAVA Virtual Machine 9.2.0.1.0 VALID 12-MAI-2002 16:55:28 SYS SYS
XML Oracle XDK for Java 9.2.0.2.0 VALID 14-JUN-2004 15:59:45 SYS SYS XMLVALIDATE
CATJAVA Oracle9i Java Packages 9.2.0.1.0 VALID 14-JUN-2004 15:59:45 SYS SYS DBMS_REGISTRY_SYS.VALIDATE_CATJAVA
ORDIM Oracle interMedia 9.2.0.1.0 LOADED 12-MAI-2002 17:27:10 SYS ORDSYS
SDO Spatial 9.2.0.1.0 LOADED 12-MAI-2002 17:40:16 SYS MDSYS
CONTEXT Oracle Text 9.2.0.1.0 VALID 12-MAI-2002 17:32:11 CTXSYS CTXSYS
XDB Oracle XML Database 9.2.0.1.0 VALID 14-JUN-2004 15:59:55 SYS XDB DBMS_REGXDB.VALIDATEXDB
WK Oracle Ultra Search 9.2.0.1.0 VALID 12-MAI-2002 17:44:01 WKSYS WKSYS WK_UTIL.VALID
ODM Oracle Data Mining 9.2.0.1.0 LOADED 12-MAI-2002 17:49:36 SYS ODM
APS OLAP Analytic Workspace 9.2.0.1.0 LOADED 12-MAI-2002 17:58:32 SYS SYS
XOQ Oracle OLAP API 9.2.0.1.0 LOADED 12-MAI-2002 17:59:07 SYS SYS
AMD OLAP Catalog 9.2.0.1.0 INVALID 14-JUN-2004 15:59:57 SYS OLAPSYS CWM2_OLAP_INSTALLER.VALIDATE_CWM2_INSTALL
Any ideas ? -
Problem with capturing Primary Key Index
Hi
I am capturing certain tables and in the mean process i observed that all the indexes are getting captured except the primary key index.
Any Suggestions on this?
Thanx,
SujiHi,
I was unable to reproduce this behavior on OWM 10.1.0.8. It appears that you have a SR open for this issue, so I would suggest to continue with that process.
Regards,
Ben -
Which to use - Sy-index or sy-tabix ??
This is what i found out about SY-INDEX and SY-TABIX but which one to use when i want to delete a line of data from an internal table ? I tried both sy-index and sy-tabix and both works fine and returning the expected output for me but which one is better of to use ?
SY-TABIX :- For Internal Table, Current Line Index
SY-INDEX :- For Loops, Current Loop Pass
The below code is where i uses the Delete ..
LOOP AT dmg.
CONCATENATE
dmg-dmg00
dmg-dmg01
dmg-dmg02
dmg-dmg03
dmg-dmg04
dmg-dmg07
dmg-dmg08
dmg-dmg09 INTO tli_down1 SEPARATED BY '*'.
APPEND tli_down1. CLEAR tli_down1.
DELETE dmg INDEX sy-index.
EXIT.
ENDLOOP.Right. Just like what they said upstairs, sy-babix is the best choice.
One more thing is, if you want to concatenate fields of table dmg and append to tli_down1 on by one. You should not use EXIT after delete dmg.
In that case ,only one line can be appended into tli_down1 table.
> The below code is where i uses the Delete ..
>
> LOOP AT dmg.
> CONCATENATE
> dmg-dmg00
> dmg-dmg01
> dmg-dmg02
> dmg-dmg03
> dmg-dmg04
> dmg-dmg07
> dmg-dmg08
> dmg-dmg09 INTO tli_down1 SEPARATED BY '*'.
> APPEND tli_down1. CLEAR tli_down1.
> DELETE dmg INDEX sy-index.
> EXIT.
> ENDLOOP. -
Index's on cubes or Aggregates on infoobjects
Hello,
Please tell me if it is possible to put index's on cubes; are they automatically added or is this something I put on them?
I do not understand index's are they like aggregates?
Need to find info that explains this.
Thanks for the hlep.
NewbieIndexes are quite different from aggregates.
An Aggregate is a slice of a cube which helps the data retrival on a faster note when a query is executed on a cube. Basically it is kind of a snapshot of KPI's and Business Indicators (Chars) which will be displayed as the initial query run result.
Index is a process which is inturn will reduce the query response time. While an object gets activated, the system automatically create primary indexes. Optionaly, you can create additional index called secondary indexes.Before loading data, it is advisable to delete the indexes and insert them back after the loading.
Indexes act like pointers for quickly geting the Data.When u delete it will delete indexes and when u create it will create the indexes.
When loading we delete Bcs during loading it has to look for existing Indexes and try to update so it will effect the Data load performence so we delete and create it will take less time when compared to updating the existing ones.
There is one more issue we have to take care if u r having more than 50 million records this is not a good practice insteah we can delete and create during week end when they r no users. -
LIKE, LIKEC and Index usage
I've table that contains about 20 million rows, and I've created index for varchar2(100) column. It works well if I do
SELECT * FROM MY_TABLE WHERE MY_COL LIKE 'FOO%';
But if I change query to use LIKEC (to make unicode escaped strings work):
SELECT * FROM MY_TABLE WHERE MY_COL LIKEC 'FOO%';
I always get full table scan in explain plan.
I tried to use NVARCHAR, or index created by TO_NCHAR but I always end up hitting full table scan.
Should I create index some special way or do something else before I get index working?Just a gut feeling : is the database using character semantics or byte semantics?
My gut feeling, after looking up the documentation, is it should be character semantics.
BTW: Not posting version info decreases the chance you get an adequate reply.
Sybrand Bakker
Senior Oracle DBA -
Index with "or" clause (BUG still exists?)
The change log for 2.3.10 mentions "Fixed a bug that caused incorrect query plans to be generated for predicates that used the "or" operator in conjunction with indexes [#15328]."
But looks like the Bug still exists.
I am listing the steps to-repro. Let me know if i have missed something (or if the bug needs to be fixed)
DATA
dbxml> openContainer test.dbxml
dbxml> getDocuments
2 documents found
dbxml> print
<node><value>a</value></node>
<node><value>b</value></node>
INDEX (just one string equality index on node "value")
dbxml> listIndexes
Index: unique-node-metadata-equality-string for node {http://www.sleepycat.com/2002/dbxml}:name
Index: node-element-equality-string for node {}:value
2 indexes found.
QUERY
setVerbose 2 2
preload test.dbxml
query 'let $temp := fn:compare("test", "test") = 0
let $results := for $i in collection("test.dbxml")
where ($temp or $i/node[value = ("a")])
return $i
return <out>{$temp}{$results}</out>'
When $temp is true i expected the result set to contain both the records, but that was not the case with the index. It works well when there is no index!
Result WITH INDEX
dbxml> print
<out>true<node><value>a</value></node></out>
Result WITHOUT INDEX
dbxml> print
<out>true<node><value>a</value></node><node><value>b</value></node></out>Hi Vijay,
This is a completely different bug, relating to predicate expressions that do not examine nodes. Please try the following patch, to see if it fixes this bug for you:
--- dbxml-2.3.10-original/dbxml/src/dbxml/optimizer/QueryPlanGenerator.cpp 2007-04-18 10:05:24.000000000 +0100
+++ dbxml-2.3.10/dbxml/src/dbxml/optimizer/QueryPlanGenerator.cpp 2007-08-08 11:32:10.000000000 +0100
@@ -1566,11 +1572,12 @@
else if(name == Or::name) {
UnionQP *unionOp = new (&memMgr_) UnionQP(&memMgr_);
+ result.operation = unionOp;
for(VectorOfASTNodes::iterator i = args.begin(); i != args.end(); ++i) {
PathResult ret = generate(*i, ids);
unionOp->addArg(ret.operation);
+ if(ret.operation == 0) result.operation = 0;
- result.operation = unionOp;
// These operators use the presence of the node arguments, not their valueJohn -
Hi,
Can some body explain the CLEAR difference between Sy-index and Sy-tabix. And one or two small examples. I am little bit confused.
Thanx.Hi,
SY-INDEX
In a DO or WHILE loop, SY-INDEX contains the number of loop passes including the current pass.
SY-TABIX
Current line of an internal table. SY-TABIX is set by the statements below, but only for index tables. The field is either not set or is set to 0 for hashed tables.
APPEND sets SY-TABIX to the index of the last line of the table, that is, it contains the overall number of entries in the table.
COLLECT sets SY-TABIX to the index of the existing or inserted line in the table. If the table has the type HASHED TABLE, SY-TABIX is set to 0.
LOOP AT sets SY-TABIX to the index of the current line at the beginning of each loop lass. At the end of the loop, SY-TABIX is reset to the value that it had before entering the loop. It is set to 0 if the table has the type HASHED TABLE.
READ TABLE sets SY-TABIX to the index of the table line read. If you use a binary search, and the system does not find a line, SY-TABIX contains the total number of lines, or one more than the total number of lines. SY-INDEX is undefined if a linear search fails to return an entry.
SEARCH <itab> FOR sets SY-TABIX to the index of the table line in which the search string is found.
regards,
madhu -
What is" LINE-COL2 = SY-INDEX ** 2."
can u explain what is '' ** "
FIELD-SYMBOLS <FS> LIKE LINE OF ITAB.
DO 4 TIMES.
LINE-COL1 = SY-INDEX.
LINE-COL2 = SY-INDEX ** 2. "what this will do
APPEND LINE TO ITAB.
ENDDO.Hi sunil,
1 ** means "To the power of"
2. eg. 5 ** 2 = 25
(5 To the power of 2 = 25)
regards,
amit m. -
Hi all,
I am trying to get loop count by using sy-index.
But I am not able get exact expected out put.
I am gettig all zeros instead of loop number.
I am sending my code here.
DATA: lv_diff(10) TYPE c,
lv_erdat1 LIKE sy-datum,
lv_erdat2 LIKE sy-datum,
i(15) TYPE c VALUE '1'.
SORT t_ordno BY aufnr.
LOOP AT t_ordno INTO st_ordno.
READ TABLE t_ordno INTO st_ordno INDEX i.
lv_erdat1 = st_ordno-erdat.
i = i + 1.
READ TABLE t_ordno INTO st_ordno INDEX i.
lv_erdat2 = st_ordno-erdat.
i = i + 1.
CALL FUNCTION 'DAYS_BETWEEN_TWO_DATES'
EXPORTING
i_datum_bis = lv_erdat2
i_datum_von = lv_erdat1
IMPORTING
e_tage = lv_diff.
WRITE:/ lv_diff,
50 <u><b>sy-index.</b></u>
CLEAR: lv_erdat1,lv_erdat2,lv_diff.use this code
DATA: lv_diff(10) TYPE c ,
lv_erdat1 LIKE sy-datum ,
lv_erdat2 LIKE sy-datum ,
i(15) TYPE c VALUE '1' ,
l_tabix type syst-tabix .
SORT t_ordno BY aufnr.
LOOP AT t_ordno INTO st_ordno.
l_tabix = sy-tabix .
READ TABLE t_ordno INTO st_ordno INDEX i.
lv_erdat1 = st_ordno-erdat.
i = i + 1.
READ TABLE t_ordno INTO st_ordno INDEX i.
lv_erdat2 = st_ordno-erdat.
i = i + 1.
CALL FUNCTION 'DAYS_BETWEEN_TWO_DATES'
EXPORTING
i_datum_bis = lv_erdat2
i_datum_von = lv_erdat1
IMPORTING
e_tage = lv_diff.
WRITE:/ lv_diff,
50 l_tabix.
CLEAR: lv_erdat1,lv_erdat2,lv_diff.
Maybe you are looking for
-
Error in opening zip file after Patch 4 HF6 install
Hello, Just upgraded to EP 6 SP 2 Patch 4 HF 6 on a Windows 2000/MSSQL instance. In the cluster\server\managers\console_logs the error.log now contains the following; error during parse of jar file D:\usr\sap\XXXA\j2ee\j2ee_00\cluster\server\service
-
Query only works on the first word of the managed property
I have several managed properties that are not returning query results as expected, they are returning results only if the term queried matches the first word in the property, any other query returns no results. Scenario: filename = "Sample Excel Fil
-
Trouble compiling servlets with J2SE 5
Hello, I've been using Sun 1 Studio CE, and more recently, Netbeans 3.6, with J2SE 1.4.2. I have some basic swing applets and servlets that I wrote for my business' web site. I recently downloaded and installed the new software bundle containing Netb
-
iOS 7 for iPod Touch, iPhone and iPad . . . free? I was reading on Wikipedia (in spanish) about iOS version history, I read that "iPhone Users have all free updates, while iPod Touch users payed for iOS 2.0 and iOS 3.0 updates. For 4.0 version, Apple
-
Software update error 12017 (Nokia N97mini)
Hi there I'm using nokia ovi suite v3.1.0.92 which was the latest version on nokia website I had some software errors on my phone so I wish to re-install its software when i start the re-installation process i always had the error 12017 when it start