Select to view content in your preferred language

Release ST_GEOMETRY functions code?

405
2
05-24-2022 03:34 AM
Status: Open
Bud
by
Esteemed Contributor

Idea: 

Release ST_GEOMETRY functions code (on GitHub, or something like that)

Reasons:

  1. Esri seems to have stopped improving ST_GEOMETRY functions. Meanwhile, we still have issues and improvements that need addressing. If Esri isn’t going to address those needs, then it would make sense to let us do it ourselves. Currently, the code is locked down in the EXTPROC.DLL in Oracle. So we can’t see how the functions work or extend them. Why not let us see and use the code?
  2. I don’t think Esri would lose any money by doing this. It’s not as if customers buy ArcGIS Enterprise so that they can get SDE.ST_GEOMETRY (there are much bigger reasons than that). That might have partially been the case years ago, but these days, organizations tend to go with native spatial datatypes, since the functionality is broader, the DB vendors continue to improve the products, and performance is usually better. So Esri wouldn’t lose anything by opening up ST_GEOMETRY.
  3. One of the unspoken advantages of the ArcGIS platform is that users are empowered to build and manage their own stuff in the database. For example, as a data creator in Oracle, I can create tables, sequences, triggers, and views (and depending on the organization, functions too). Why not take it a step further and empower us to solve more advanced spatial database problems — by providing access to the ST_GEOMETRY code?

Worth considering?

Tags (1)
2 Comments
Bud
by

I wonder if it would be possible to view the ST_GEOMETRY function definition in a SQLite database where ST_GEOMETRY has been enabled? Load the SQLite ST_Geometry library


Edit:

It looks like the functions are stored in a .dll. So the answer is likely no.

--Load the ST_Geometry library on Windows.
SELECT load_extension(
 'c:\Program Files (x86)\ArcGIS\Desktop10.3\DatabaseSupport\SQLite\Windows32
\stgeometry_sqlite.dll', 'SDE_SQL_funcs_init' );

 

EricEagle

depends what language was used before compilation into a dll.  There are good options for some languages (VB, .NET, C#), others require dumping it as assembly - If I had to guess though I'd bet the stgeometry_sqlite.dll is written in VB or .NET.  Google ".NET Reflector"

 

note i'm not advising you to do anything.. only saying what's possible.