|Home » Technical Support » DBISAM Technical Support » Support Forums » DBISAM General » View Thread|
|Messages 1 to 3 of 3 total|
|Memory limits on blob reading?|
|Tue, Mar 9 2010 4:09 AM||Permanent Link|
Are there any memory limits on blob reading, particularly that would give trouble
when multiple threads are reading the same record?
There is plenty of memory available, and little in use, so it is likely to be
something other than actual memory limits.
exception class : EOutOfMemory
005a92dc +020 MyApp.exe dbisamlb ResizeBuffer
00583902 +012 MyApp.exe dbisamen TBlobBuffer.SetSize
0057839f +0df MyApp.exe dbisamen TDataCursor.ReadBlob
00577fb8 +3a4 MyApp.exe dbisamen TDataCursor.OpenBlob
005e57bd +12d MyApp.exe dbisamtb TDBISAMBlobStream.Create
005d9b41 +01d MyApp.exe dbisamtb TDBISAMDataSet.CreateBlobStream
004ff83a +012 MyApp.exe DB TBlobField.GetAsString
00960a22 +082 MyApp.exe dFileStore TdmFileStore.GetFileContents
The app overall is using 155187360 bytes on a 3Gb PC.
|Tue, Mar 9 2010 1:13 PM||Permanent Link|
Tim Young [Elevate Software]
Elevate Software, Inc.
<< Are there any memory limits on blob reading, particularly that would give
trouble when multiple threads are reading the same record? >>
No. The problem could be related to several things:
1) Severe memory fragmentation (possible with older Delphi memory managers,
but unlikely with FastMM4).
2) Corruption - the BLOB size in the table record is invalid, causing the
memory manager to try and allocate a block of memory that is very large or a
Does the table check out using VerifyTable ?
|Wed, Mar 10 2010 4:29 AM||Permanent Link|
> Does the table check out using VerifyTable ?
I will find out. The service verifies on startup, so should be logged.