Select to view content in your preferred language

ST_SHAPELIB + Oracle 19c + ArcGIS Enterprise 10.8 = ORA-28575 error

8561
16
Jump to solution
08-07-2020 06:46 AM
João_PauloBraga
Emerging Contributor

I'm upgrading an environment from ArcGIS Enterprise 10.5 with Oracle 11.2.0.4 to ArcGIS Enteprise 10.8 with Oracle 19c (19.3.0.0) (SO: Windows) and I'm getting a problem when using the SHAPELIB library. I followed the steps to install it as the documentation below:

Configure the extproc to access ST_Geometry in Oracle—ArcMap | Documentation 

Resuming the steps I did:

  • modified the extproc.ora file to accept ANY DLL (initially just the specific DLL, because of the problem, until solve it I leave it with ANY value);
  • restarted the oracle listerner;
  • installed the "Microsoft Visual C++ Redistributable Package (x64)";
  • copied the Windows 64 DLL from the ArcGIS Server folder "Database Support" to the "oracle home\lib" folder;
  • ran the "create or replace library as 'oracle home\lib\st_geometry.dll';";
  • disconnected from database and connected again;\


But when I try to use the library like a simple query like this:

select sde.st_astext(sde.st_geometry('POINT (10 10)',0)) from dual;

I get this error:

ORA-28575: unable to open RPC connection to external procedure agent

Cause: Initialization of a network connection to the extproc agent did not succeed.

This problem can be caused by network problems, incorrect listener configuration, or incorrect transfer code.

Action: Check listener configuration in LISTENER.ORA and TNSNAMES.ORA, or check Oracle Names Server.

Does anyone knows how to solve this problem?

0 Kudos
1 Solution

Accepted Solutions
PhilippSimmler
New Contributor

Oracle 19c has a Bug when the database was installed using a virtual user. https://docs.oracle.com/cd/F19136_01/rnrdm/database-release-notes.pdf 

Bug 29426320 ORA-28575 "Unable to open RPC connection to external procedure agent" error occurs when running external procedures or Oracle Database Extensions for .NET procedures with a virtual user account. Workaround#1 Restart the Oracle listener service and the OracleClrAgent service using a non-virtual user account.
Workaround#2 Reinstall Oracle Database 19c and select a non-virtual user account.
Workaround#3 If you require a virtual user account, then set sqlnet.authentication_services to NONE in SQLNET.ORA.

Therefore the above mentioned tipp by @Serguei Sokolov about setting the sqlnet.authentication_services = (NONE) helps and solved the issue for us.

View solution in original post

16 Replies
George_Thompson
Esri Notable Contributor

When you ran the update library command who were you connected as, i.e. SDE, SYS, etc.?

What does this SQL return?

SELECT file_spec FROM user_libraries WHERE library_name = 'ST_SHAPELIB';

--- George T.
João_PauloBraga
Emerging Contributor

Hi, George!

I was connected as SDE when I ran the create library.

Connected as SDE the query you asked returns the DLL path correctly.

0 Kudos
KathrynBrowning
Esri Contributor

Did you recompile  the package? 

ALTER PACKAGE sde.st_geometry_shapelib_pkg COMPILE REUSE SETTINGS;

João_PauloBraga
Emerging Contributor

Yes, Kathryn.. the ESRI documentation says it`s necessary when changing... But I'm trying it by so many different ways that now, every time I create the library I use this command to recompile and then I reconnect to test if it works 😕

George_Thompson
Esri Notable Contributor

Did you by chance make any changes to the listener or TNS files for this?

--- George T.
João_PauloBraga
Emerging Contributor

Yes, but only to test configuring the listener to spawn extproc, reverting after failure.

0 Kudos
SergueiSokolov
Regular Contributor

I run into the exact same issue/error. I was configuring Windows 64bit + ArcGIS Enterprise 10.8.1 + Oracle 19.3 Standard (all supported by the product versions). I have configured extproc.ora file to point to the ST_Geometry library that was installed with the ArcGIS Server. I fixed the issue by updating both tnsnames.ora and listener.ora files . I replaced "localhost" references (HOST=localhost) with the fully qualified name of the server. I hope this helps

João_PauloBraga
Emerging Contributor

Thank you for your reply.

My DBA consultant told me that the configuration files you mentioned are already with FQN, and even if not, he tells me that oracle are using IPC protocol not a network one, so this configuration isn't relevant in our case... 

0 Kudos
George_Thompson
Esri Notable Contributor

At this point, I would recommend working Esri technical support on this issue. They have Geodata specialist who can dig in a little deeper.

--- George T.
0 Kudos