I have a big database :
- size = 3Mo
- tables c4gis_param, c4gis_geo, c4gis_id
- c4gis_geo has 60rows, one field is a subview of 5 to 60 rows, in the subview one field is a subview of 10/50 rows
In my code I simply create a storage and extract some piece of data from c4gis_param (small table):
if (vxg->is_file())
{
c4_Storage sto(vxg->get_nativesys_(),false);
if (ok)
{
c4_GisSpace space;
space.loadParams(sto); //this loads information
}
}
art_delete(vxg);the destructor of "sto" is VERY slow (several minutes), here is the call stack when I break the app during process :
kernel32.dll!77e4c75a()
cartomatique.exe!_heapchk() Line 104 + 0x10 C
cartomatique.exe!_CrtCheckMemory() Line 1500 + 0x5 C
cartomatique.exe!_heap_alloc_dbg(unsigned int nSize=48, int nBlockUse=1, const char * szFileName=0x00c85d84, int nLine=674) Line 346 + 0x5 C
cartomatique.exe!_nh_malloc_dbg(unsigned int nSize=48, int nhFlag=1, int nBlockUse=1, const char * szFileName=0x00c85d84, int nLine=674) Line 260 + 0x15 C
cartomatique.exe!operator new(unsigned int cb=48, int nBlockUse=1, const char * szFileName=0x00c85d84, int nLine=674) Line 48 + 0x17 C++
> cartomatique.exe!operator new(unsigned int s=48) Line 674 + 0x1f C++
cartomatique.exe!c4_FormatV::SetupAllSubviews() + 0x89 C++
cartomatique.exe!c4_FormatV::HasSubview() + 0xf C++
cartomatique.exe!c4_HandlerSeq::Restructure() + 0x49 C++
cartomatique.exe!c4_HandlerSeq::Restructure() + 0x1fb C++
cartomatique.exe!c4_HandlerSeq::DetachFromParent() + 0x33 C++
cartomatique.exe!c4_HandlerSeq::~c4_HandlerSeq() + 0x2e C++
cartomatique.exe!c4_HandlerSeq::`scalar deleting destructor'() + 0x8 C++
cartomatique.exe!c4_Sequence::DecRef() + 0xc C++
Before making a separate test, does anybody have an idea of what's happening ? Thanks
-- Riccardo Cohen
Articque Les Roches 37230 Fondettes France web = http://www.articque.com tel: +33 02 47 49 90 49 fax: +33 02 47 49 91 49 _____________________________________________ Metakit mailing list - [EMAIL PROTECTED] http://www.equi4.com/mailman/listinfo/metakit
