Select to view content in your preferred language

SDO_GEORASTER BUG on Oracle 11g R2

4182
16
Jump to solution
11-23-2012 08:29 AM
Jean-BernardGariépy
Occasional Contributor
Hi!

Is there anyone that was able to reproduce the following bug ?

http://support.esri.com/en/knowledgebase/techarticles/detail/38940

I tried using a 10.0 ArcGIS Desktop Client and a 10.1 ArcGIS Desktop Client on a Oracle 11g R2 with all the appropriate keywords set in DBTUNE.

A simple copy/paste of a raster stored as a BLOB into an SDO_GeoRaster type make ArcCatalogue to freeze indefinitely (more than 1h) doing nothing. No error message.

Also, I haven't found any post on the web regarding this bug.

We don't mind calling Oracle for this bug... if we can manage to reproduce it.
Any clue on how to reproduce this bug would be greatly apprciated.
0 Kudos
16 Replies
MarcoBoeringa
MVP Regular Contributor
Good to hear you made some head way solving the problems. These issues can be tire-some to the point of wanting to give up when debugging / solving (which isn't an option in a professional working environment...).
0 Kudos
Jean-BernardGariépy
Occasional Contributor
Thank 😉

Now the issue is the accuracy of article #38940.
http://support.esri.com/en/knowledgebase/techarticles/detail/38940

We never experienced the bug mentionned in that article!

Also, in the "Known limits of using SDO_GEORASTER with a geodatabase" section of the following ArcGIS resources page http://resources.arcgis.com/en/help/main/10.1/index.html#//002n0000006z000000

I am not sure if it is appropriate to say that "You cannot use SDO_GEORASTER storage in an Oracle 11g R2 database as a result of Oracle bug 12537431."

Sure enough oracle bug #12537431 - XMLLOADDOM FAILS WITH LPX-00019 WHEN SESSION IS CREATED WITH OCIENVNLSCREATE is still active on Oracle's Metalink website, but on our side it does not prevent us from using SDO_GEORASTER.

My original post was asking if anyone ever experienced the problem mentionned in Article 38940.
On the web it looks like I'm the only one that tried to reprocude the bug which we where not to do in ArcGIS 10.1.

Does anyone on the Internet ever experience that bug with SDO_GEORASTER in Oracle 11g R2 ??
0 Kudos
MarcoBoeringa
MVP Regular Contributor


Second, the regional settings of my ArcGIS Desktop computer was French Canadian. So ArcGIS was inserting comas as decimal separators in the raster metadata.
I've found this by using the following to SQL commands:

SDO_GEOR.validateGeoRaster()
SDO_GEOR.schemaValidate()

We are now able to insert data into SDO_GEORASTER using the following geoprocessing tool:
Data Management Tools => Raster => Raster Dataset => Copy Raster


Sounds like an issue / bug that may be worth reporting to ESRI, if you haven't done so, nor some ESRI folks have read this. That is, assuming SDO_GEORASTER always need decimal point. (IDK)

I am sure you read it all, but this Oracle link may be useful to some concerning SDO_GEORASTER:

GeoRaster Overview and Concepts

And this link concerning the georeferencing and SRID (Oracle speaks of SRS):

Georeferencing GeoRaster Objects

Now we're having other issues bulding the pyramids using the SQL statement SDO_GEOR.generatePyramid() because ArcGIS doesn't assign any SRID to the raster 😕 I will start a new thread for this bug soon as I trouble shoot a bit more.


Seems you should be able to read in a simple ESRI worldfile to correct the issue you describe of a non-defined SRID/SRS using the "SDO_GEOR.importFrom" command in combination with setting the SRID via the "SDO_GEOR.setModelSRID" command, see link above.
0 Kudos
Jean-BernardGariépy
Occasional Contributor
ESRI has been assisting me with this bug and I just got an answer from ESRI.

I looks like I've put the finger on the problem with my regional setting bug... The work around would be to change the regional settings to English!


Regarding the Oracle bug, it actually looks like Oracle has not adequately updated their bug database. Upon further investigation on our bug (NIM069549) that references the Oracle bug, there is an activity logged by one of the Esri Inc support staff. He mentions that he spoke to Oracle in May 2012, and that Oracle has actually closed this  Oracle incident (12537431) as NOT a bug. This analyst says that the reason given is because OCIEnvNlsCreate uses the national language setting of the computer (Nls = National Language Setting). OCIEnvNlsCreate is used when creating an sdo_georaster and the failure occurs when the Oracle xml document is created.

Basically ??? the reason that users can experience this Oracle bug is because of regional language settings in either the O/S or Oracle.

We have spoken to Esri Inc and have requested that the following be updated to reflect this finding from Oracle:

NIM069549 -
http://support.esri.com/en/bugs/nimbus/TklNMDY5NTQ5
NOTE: have requested that the alternate solution be changed to state that it can be caused by regional language settings. Also, reason for rejection needs to be changed accordingly

Error:  An Oracle LPX-0019 error occurs when inserting data into an SDO_GEORASTER field -http://support.esri.com/en/knowledgebase/techarticles/detail/38940
NOTE: have requested that the solution/workaround be changed to state that it can be caused by regional language settings. Suggested to try changing to English language setting.

ArcGIS and the Oracle Spatial raster type - http://resources.arcgis.com/en/help/main/10.1/index.html#//002n0000006z000000
NOTE: this is the article with the known limitations at the bottom.


Since metadata is in XML format, it is quite possible that the commas you were getting with the French language setting were directly related to this issue. The Oracle XmlLoadDom function returns the erorr, so you will see this error in Oracle, not in ArcMap.
0 Kudos
MarcoBoeringa
MVP Regular Contributor
This still leaves the question where the language "bug" is. Either ESRI or Oracle is not taking into account regional language settings during the insertion of the XML SDO_GEORASTER "metadata", it's starting to look like ESRI, but the call is still out... Interestingly, the OCI referred in the function call name causing the issues, relates to the Oracle Call Interface (OCI), as stated here:

http://www.oracle.com/technetwork/database/features/oci/index.html

As Oracle writes:

"Oracle Call Interface (OCI) is the most comprehensive, high performance, native 'C' language based interface to the Oracle Database that exposes the full power of the Oracle Database. OCI provides the foundation on which various language specific interfaces such as Oracle JDBC-OCI, ODP.Net, Oracle Precompilers, Oracle ODBC and Oracle C++ Call Interface (OCCI) drivers are built."

Reading that page, it seems almost certain that ESRI is using the OCI to support all of ArcSDE's functions related to storage in Oracle. Ah, well, Vince Angelo will chime in I guess... and beat me to death with the true technical details if I have it wrong 😉
0 Kudos
MarcoBoeringa
MVP Regular Contributor
A few addition to this thread:

I noticed the old 9.x ArcSDE Configuration and Tuning Guide for Oracle has chapter 5 dedicated to National Language Support and possible settings needed to be made on server/client:

ArcSDE Configuration and Tuning Guide for Oracle

Don't know how relevant it still is for the latest 10.x editions. Here is a 10.1 Help page though also referring to language setting in case of XML columns in Oracle:

Language settings for ArcSDE XML columns in geodatabases in Oracle
0 Kudos
Joeysmith
Emerging Contributor
you can look at your CPU activity and it clearly tells you that ArcCatalog is working on it.
0 Kudos