laptop and a wrench

漏洞

The sdelayer -o normal_io does not recreate spatial index on ST_GEOMETRY feature class when base table is empty and all edits are in A and D tables.

上次发布: August 25, 2014 ArcSDE/Enterprise Geodatabase
漏洞 ID 编号 NIM055449
已提交March 17, 2010
上次修改时间April 2, 2025
适用范围ArcSDE/Enterprise Geodatabase
找到的版本9.3.1
操作系统Windows OS
操作系统版本2003 64 Bit
修正版本N/A
状态Fixed

解决办法

1) Put the feature class in load only mode:sdelayer -o load_only_io -l test,shape -i sde_orcl -u user -p passwordArcSDE 9.3 for Oracle10g Build 2784 Tue Oct 27 10:51:14 2009Layer Administration Utility-----------------------------------------------------Layer is now in LOAD-ONLY I/O mode.2) Set grid to automatic. sdelayer -o alter -g automatic -l test,shape -i sde_orcl -u user -p password -NArcSDE 9.3 for Oracle10g Build 2784 Tue Oct 27 10:51:14 2009Layer Administration Utility-----------------------------------------------------Successfully Modified the LayerSuccessfully changed spatial index parametersLayer is in LOAD-ONLY mode3) Put the feature class in Normal IO:sdelayer -o normal_io -l test,shape -i sde_orcl -u user -p passwordArcSDE 9.3 for Oracle10g Build 2784 Tue Oct 27 10:51:14 2009Layer Administration Utility-----------------------------------------------------Layer is now in NORMAL I/O mode.4) Below is an example of a python script that will recalculate and rebuild the spatial indexes. For some reason, when the AddSpatialIndex GP tool is first called, it will only create a spatial index on the base table. If the same toolis called a second time, it will build the index on the Adds table.# ---------------------------------------------------------------------------# <a href="http://CreateSpatialIndex2.py" target="_blank">CreateSpatialIndex2.py</a># Created on: Fri Mar 12 2010 09:50:44 AM# (generated by ArcGIS/ModelBuilder)# ---------------------------------------------------------------------------# Import system modulesimport sys, string, os, arcgisscripting# Create the Geoprocessor objectgp = arcgisscripting.create()# Load required toolboxes...gp.AddToolbox("D:/Program Files (x86)/ArcGIS/ArcToolbox/Toolboxes/Data Management Tools.tbx")# Local variables...TESTFC = "Database Connections<a href="file://sde_orcl.sde//USER.TEST" target="_blank">\\sde_orcl.sde\\USER.TEST</a>"# Process: Calculate Default Spatial Grid Index....indexgrids=gp.CalculateDefaultGridIndex_management(TESTFC)indexgrid1 = indexgrids.split(";")[0] print indexgrid1# Process: Add Spatial Index...# First call rebuilds the spatial index for base table...gp.AddSpatialIndex_management(TESTFC, indexgrid1) # Second call rebuilds the spatial index for Adds table...gp.AddSpatialIndex_management(TESTFC, indexgrid1)5) In Oracle SQL*Plus:SQL> select index_name,index_type from user_indexes where table_name='TEST';INDEX_NAME INDEX_TYPE------------------------------ ---------------------------A52_IX1 DOMAINR130_SDE_ROWID_UK NORMALSYS_IL0000055501C00017$$ LOBSQL> select index_name,index_type from user_indexes where table_name='A130';INDEX_NAME INDEX_TYPE------------------------------ ---------------------------A52_IX1_A DOMAINSYS_IL0000055506C00017$$ LOBA130_STATEID_IX1 NORMALA130_PK NORMAL

重现步骤

漏洞 ID: NIM055449

软件:

  • ArcSDE/Enterprise Geodatabase

当漏洞状态发生变化时获得通知

下载 Esri 支持应用程序

发现关于本主题的更多内容

获取来自 ArcGIS 专家的帮助

联系技术支持部门

下载 Esri 支持应用程序

转至下载选项