Hi Sebastien, We've had problems with performance as well. When iBatis takes a long time to run builder.Configure() I have seen a lot of messages in the output window in Visual Studio.
I see this line in the output window: 'Diligent.Boardbooks.Clients.SmartClient.Shell.vshost.exe' (Managed): Loaded 'DynamicAssemblyProxyGen', No symbols loaded. About 40 or 50 times during the call to Configure. I'd be interested to know if you see the same? Cheers, Greg -----Original Message----- From: Sebastien Lucas [mailto:[EMAIL PROTECTED] Sent: Wednesday, 6 June 2007 2:32 a.m. To: [email protected] Subject: Loading slowdown when upgrading from 1.3.0 to 1.6.1 Hi, I'm planning to finally update to .Net 2.0 this summer and so I decided to update Ibatis on all our project. We previously had the Datamapper 1.3.0 and I deceided to upgrade to 1.6.1. The upgrade of the code went really good (SqlMapper -> ISqlMapper) and I can access now my Oracle Database. My only problem is that I have a huge slowdown during the loading of my application. With 1.3.0 : load time : 3~4 seconds and 30Mo of virtual memory With 1.6.1 : load time : 120s with 100% CPU and 50Mo of virtual memory A little background : my sqlmap.config is embedded and all my sqlmap are also embedded (130 xml file, almost 1Mo of data). My sqlmap.config looks like that : <?xml version="1.0" encoding="UTF-8" ?> <sqlMapConfig xmlns="http://ibatis.apache.org/dataMapper" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > <properties resource="CommunProperties.config"/> <settings> <setting useStatementNamespaces="false"/> <setting cacheModelsEnabled="true"/> </settings> <providers embedded="GB.Persistance.providers.config, Persistance" /> <database> <provider name="${provider}"/> <dataSource name="DB" connectionString="${connectionString}"/> </database> <sqlMaps> <sqlMap embedded="GB.Persistance.Maps.TSociete.xml, Persistance" /> ...... I load it that way : DomSqlMapBuilder builder = new DomSqlMapBuilder(); XmlDocument sqlMapConfig = Resources.GetEmbeddedResourceAsXmlDocument(_embeddedRessourceLocation); _qMapper = new QMapper (builder.Configure(sqlMapConfig)); I use Log4net and I can see in my log the sql used. I really have no clue on a way to properly debug it to check what takes so long. If you have any idea, please enlight me. Thanks in advance. Sebastien

