I wouldn&#39;t like to go to much into discussion about generic rdbms stuff. I think that priority should be having good PostGIS provider which we can get with current resources.<div><br></div><div>Just in short, when I started looking how to make provider for Oracle, Generic RDBMS was first place to start looking. For me Generic RDBMS was to complex , hard to work with and extend . Performance was also bad.</div>
<div>That was few years ago, I would assume that it has improved since but still I am afraid that Autodesk would be only maintaner of that code. That would be main reason why I would like to have current PostGIS available, which has not only Autodesk developers which could work on it.</div>
<div><br></div><div>Haris</div><div><div><br></div><div><br><br><div class="gmail_quote">On Mon, Nov 30, 2009 at 2:36 PM, Zac Spitzer <span dir="ltr">&lt;<a href="mailto:zac.spitzer@gmail.com">zac.spitzer@gmail.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">2009/12/1 Haris Kurtagic &lt;<a href="mailto:haris@sl-king.com">haris@sl-king.com</a>&gt;:<br>
<div class="im">&gt; Is it necessary to replace current version, can&#39;t that be another version of<br>
&gt; provider ?<br>
&gt; I was never able to get comfortable with generic rdbms stuff. In my opinion<br>
&gt; there are minuses too.<br>
<br>
</div>like?<br>
<div><div></div><div class="h5"><br>
&gt; I would like to have option of current code base to be continued if there<br>
&gt; would be option at least for some time.<br>
&gt; Haris<br>
&gt;<br>
&gt; On Mon, Nov 30, 2009 at 2:14 AM, Orest Halustchak<br>
&gt; &lt;<a href="mailto:orest.halustchak@autodesk.com">orest.halustchak@autodesk.com</a>&gt; wrote:<br>
&gt;&gt;<br>
&gt;&gt; Hi,<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; Autodesk has had interest from Map3D customers who want to use the FDO<br>
&gt;&gt; PostGIS provider to access and edit data using Map3D and other products.<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; These customers have not been able to use this provider reliably with<br>
&gt;&gt; Map3D. We had a close look at the provider code to determine what work would<br>
&gt;&gt; be needed to complete the implementation of schema and edit support and fix<br>
&gt;&gt; other issues. Unfortunately, we found that the provider as it stands today<br>
&gt;&gt; requires a lot of work to complete the implementation of required FDO<br>
&gt;&gt; interfaces and to add good unit test coverage. Things that still need a fair<br>
&gt;&gt; bit of work include:<br>
&gt;&gt;<br>
&gt;&gt; ·         Creating new schema and new datastore<br>
&gt;&gt;<br>
&gt;&gt; ·         Spatial filter handling<br>
&gt;&gt;<br>
&gt;&gt; ·         Huge memory leaks on insert.<br>
&gt;&gt;<br>
&gt;&gt; ·         Not all schema commands are implemented.<br>
&gt;&gt;<br>
&gt;&gt; ·         Enable and fix transaction support.<br>
&gt;&gt;<br>
&gt;&gt; ·         Constraint and default values support.<br>
&gt;&gt;<br>
&gt;&gt; ·         Lots of TODOs spread all over the code<br>
&gt;&gt;<br>
&gt;&gt; ·         Virtually no unit tests exist.<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; We looked at the level of effort needed to complete that work. It was<br>
&gt;&gt; quite high. So, we looked at an alternative. There exists an earlier open<br>
&gt;&gt; source community code base for a PostGIS provider that was started a couple<br>
&gt;&gt; of years ago but not finished. That code base used the generic rdbms<br>
&gt;&gt; framework that is shared with the SQL Server Spatial, MySQL, and ODBC<br>
&gt;&gt; providers. Most of the schema processing is handled with that shared code.<br>
&gt;&gt; We spent some time working with the current provider and the other code base<br>
&gt;&gt; to determine the most efficient way to get to a completed provider that<br>
&gt;&gt; would be robust, perform well, and be maintainable.<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; In the end, we determined that taking the earlier code base, adding<br>
&gt;&gt; support for the recent fdo interface changes, and completing other parts<br>
&gt;&gt; that weren’t finished would take much less time. Also, based on performance<br>
&gt;&gt; comparisons, we would get something that was much faster on inserts and<br>
&gt;&gt; selects, e.g. the select performance is about six times faster and schema<br>
&gt;&gt; describe is about three times faster. We couldn’t compare insert times very<br>
&gt;&gt; well because the current provider kept crashing after a certain point and we<br>
&gt;&gt; couldn’t insert a large number of features.<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; So, what we would like to do is complete our work to get a working PostGIS<br>
&gt;&gt; provider and then replace the current open source code with our new copy.<br>
&gt;&gt; Note that we plan to use native PostGIS schema without adding additional<br>
&gt;&gt; metadata tables just as the current provider does. It will be able to read<br>
&gt;&gt; any schemas created by the current version of the provider and itself will<br>
&gt;&gt; generate generic PostGIS schemas.<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; We’ll need to submit an RFC for this, but we wanted to get this<br>
&gt;&gt; information out to you ahead of time.<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; At the same time, we are planning to change the connection parameters to<br>
&gt;&gt; separate out the database name from the service name. This will make it<br>
&gt;&gt; easier for users. They can identify the service (e.g. localhost:5432), and<br>
&gt;&gt; then see the available datastores from which they can choose in a UI. Then,<br>
&gt;&gt; PostGIS schema simply will map to FDO schema. The main drawback to this is<br>
&gt;&gt; that any users with existing MapGuide feature sources and layer definitions<br>
&gt;&gt; will have to update them.<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; In the end, we will end up with a good functioning provider that performs<br>
&gt;&gt; well.<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; Regards,<br>
&gt;&gt;<br>
&gt;&gt; Orest.<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; _______________________________________________<br>
&gt;&gt; fdo-internals mailing list<br>
&gt;&gt; <a href="mailto:fdo-internals@lists.osgeo.org">fdo-internals@lists.osgeo.org</a><br>
&gt;&gt; <a href="http://lists.osgeo.org/mailman/listinfo/fdo-internals" target="_blank">http://lists.osgeo.org/mailman/listinfo/fdo-internals</a><br>
&gt;&gt;<br>
&gt;<br>
&gt;<br>
&gt; _______________________________________________<br>
&gt; fdo-internals mailing list<br>
&gt; <a href="mailto:fdo-internals@lists.osgeo.org">fdo-internals@lists.osgeo.org</a><br>
&gt; <a href="http://lists.osgeo.org/mailman/listinfo/fdo-internals" target="_blank">http://lists.osgeo.org/mailman/listinfo/fdo-internals</a><br>
&gt;<br>
&gt;<br>
<br>
<br>
<br>
</div></div><font color="#888888">--<br>
Zac Spitzer<br>
Solution Architect / Director<br>
Ennoble Consultancy Australia<br>
<a href="http://www.ennoble.com.au" target="_blank">http://www.ennoble.com.au</a><br>
<a href="http://zacster.blogspot.com" target="_blank">http://zacster.blogspot.com</a><br>
+61 405 847 168<br>
</font><div><div></div><div class="h5">_______________________________________________<br>
fdo-internals mailing list<br>
<a href="mailto:fdo-internals@lists.osgeo.org">fdo-internals@lists.osgeo.org</a><br>
<a href="http://lists.osgeo.org/mailman/listinfo/fdo-internals" target="_blank">http://lists.osgeo.org/mailman/listinfo/fdo-internals</a><br>
</div></div></blockquote></div><br></div></div>