<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=us-ascii">
<META content="MSHTML 6.00.2900.2963" name=GENERATOR></HEAD>
<BODY>
<DIV dir=ltr align=left><SPAN class=421135220-19092006><FONT face=Arial 
color=#0000ff size=2>What I was trying to say is that MapGuide server itself 
(server feature service) is calling many times this command in 
fdo.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=421135220-19092006><FONT face=Arial 
color=#0000ff size=2>And also after getting it is doing a lot of "copying and.." 
and it takes a lot of time MapGuide itself..</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=421135220-19092006><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=421135220-19092006><FONT face=Arial 
color=#0000ff size=2>So If I cache it inside FDO provider it is little better, 
but not sure also is it "right" to cache. </FONT></SPAN><SPAN 
class=421135220-19092006><FONT face=Arial color=#0000ff size=2>In multithreaded 
enviroment I could imagine some problems if schema is 
changing.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=421135220-19092006><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=421135220-19092006><FONT face=Arial 
color=#0000ff size=2>I am&nbsp;using 1.0.1 version.</FONT></SPAN></DIV>
<DIV><FONT face=Arial color=#0000ff size=2></FONT>&nbsp;</DIV>
<DIV><SPAN class=421135220-19092006></SPAN><FONT face=Arial><FONT 
color=#0000ff><FONT size=2>H<SPAN 
class=421135220-19092006>aris</SPAN></FONT></FONT></FONT><BR></DIV>
<DIV class=OutlookMessageHeader lang=en-us dir=ltr align=left>
<HR tabIndex=-1>
<FONT face=Tahoma size=2><B>From:</B> Traian Stanev 
[mailto:traian.stanev@autodesk.com] <BR><B>Sent:</B> Tuesday, September 19, 2006 
10:52 PM<BR><B>To:</B> dev@mapguide.osgeo.org<BR><B>Subject:</B> RE: 
[mapguide-dev] DescribeSchema<BR></FONT><BR></DIV>
<DIV></DIV>
<DIV dir=ltr align=left><FONT face=Arial color=#0000ff 
size=2></FONT>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=578463220-19092006><FONT face=Arial 
color=#0000ff size=2>You are right. DescribeSchema is a major choke point for 
any code that calls it a lot. It should be cached whenever possible. That said, 
MapGuide is going to (or already has) some caching of the schemas, so it's not 
that critical for the provider to have a fast DescribeSchema, unless you are 
worried about&nbsp;code other than MapGuide. However, I would argue&nbsp;that 
competently written FDO code already avoids&nbsp;repeated calls&nbsp;to things 
like:</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=578463220-19092006><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=578463220-19092006><FONT face=Arial 
color=#0000ff size=2>&nbsp; * DescribeSchema</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=578463220-19092006><FONT face=Arial 
color=#0000ff size=2>&nbsp; * GetSpatialContexts</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=578463220-19092006><FONT face=Arial 
color=#0000ff size=2>&nbsp; * 
FdoIFeatureReader::GetClassDefinition</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=578463220-19092006><FONT face=Arial 
color=#0000ff size=2>&nbsp;&nbsp;* anything that converts FDO stuff to 
XML.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=578463220-19092006><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=578463220-19092006><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=578463220-19092006><FONT face=Arial 
color=#0000ff size=2>Traian</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=578463220-19092006><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><FONT face=Arial color=#0000ff 
size=2></FONT>&nbsp;</DIV><FONT face=Arial color=#0000ff size=2></FONT><BR>
<DIV class=OutlookMessageHeader lang=en-us dir=ltr align=left>
<HR tabIndex=-1>
<FONT face=Tahoma size=2><B>From:</B> Haris Kurtagic [mailto:haris@sl-king.com] 
<BR><B>Sent:</B> Tuesday, September 19, 2006 4:25 PM<BR><B>To:</B> 
dev@mapguide.osgeo.org<BR><B>Subject:</B> [mapguide-dev] 
DescribeSchema<BR></FONT><BR></DIV>
<DIV></DIV>
<DIV><FONT face=Arial size=2><SPAN 
class=625541520-19092006>Hi,</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN 
class=625541520-19092006></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2><SPAN class=625541520-19092006>Right now FDO 
command <FONT size=2>DescribeSchema is called many times while describing Data 
Store and in another cases.</FONT></SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN 
class=625541520-19092006></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2><SPAN class=625541520-19092006>I have a question 
how should fdo provider react to this requests.</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN 
class=625541520-19092006></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2><SPAN class=625541520-19092006>Is it supposed that 
provider will cach schema or is it supposed to allow dinamicaly changing of 
schema (in underlaying RDBMS for example) or .. ?</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN 
class=625541520-19092006></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2><SPAN class=625541520-19092006>Also as I see it, 
there is a lot of coping of fdo schema returned from provider inside server, so 
it is very time consuming.</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN class=625541520-19092006>Not sure if I am 
looking right but it doesn't look good :)</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN 
class=625541520-19092006></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2><SPAN 
class=625541520-19092006>Haris</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN 
class=625541520-19092006></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2><SPAN 
class=625541520-19092006></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2><SPAN 
class=625541520-19092006></SPAN></FONT>&nbsp;</DIV></BODY></HTML>