Eugene Zhilkin дата публикации 19-10-2004 15:24 Методы лечения некоторых ошибок BDEДумаю многие сталкивались с непонятными ошибками БДЕ, которые возникали
эпизодически и далеко не на любом компьютере.
Ниже приведено несколько ошибок с известными мне методами лечения. А для справки -
TI2751 стащенный с Борланда (Ограничения БДЕ).
Получаем ошибку BDE $2501 "Insufficient memory for this operation"
А также для случаев
- BDE Error $210D "Shared memory conflict"
- BDE Error $2104 "Cannot find engine configuration file"
- "Insufficient memory to complete operation"
- Попробуйте увеличить параметр SHAREDMEMSIZE в BDE Admin (SYSTEM | INIT).
-
См. также ограничения BDE (TI2751) и FAQ (FAQ329B.txt, BDE FAQ # 664) на
сайте borland.com:
Источники:
- Попробуйте изменить параметр SHAREDMEMLOCATION в BDE Admin в зависимости от используемой операционной системы.
-
Подробности настройки параметра см. в BDEADMIN.HLP
Источник:
- Попробуйте увеличить параметры MEMSIZE и SHAREDMEMSIZE.
-
См. BDE FAQ # 669
Источник:
Далее - только одна из возможных причин, причем очень редкая, но интересная.
Причина до конца не исследована. Возможно, что необходимым условием для
появления ошибки является указание в параметре NET DIR (в параметрах
драйвера Парадокса) сетевого каталога на файл-сервере (см. далее).
Скорее всего, вызвано совместной ошибкой БДЕ и Microsoft, связанной с
внедрением новых технологий блокировок файлов в новых ОС Microsoft.
Проявляется тогда, когда на клиентских машинах установлены новые операционки
(напр, Windows 2000), а в качестве файл-сервера (где лежит запускаемый
модуль, использующий БДЕ) - старая (NT 4) либо Samba/Linux. Рекомендация -
перенести файл-сервер на MS Windows 2000 Server.
См. http://support.microsoft.com/default.aspx?scid=kb;en-us;224992
Увеличить параметр BLOBS TO CACHE и/или BLOB SIZE в соответствующем алиасе
(или драйвере) в BDE
Ошибка BDE 000F обычно сигнализирует о том, что для менеджеру памяти не
хватило этой самой памяти для выделения под буфер (при получении записей от
сервера), хотя могут быть и иные причины.
Увеличение параметра SHAREDMEMSIZE в BDE может помочь решить данную
проблему.
Источник см. http://community.borland.com/article/0,1410,10307,00.html
См. также п.1
И опять же - см. SHAREDMEMSIZE и SHAREDMEMLOCATION (см. в п.1).
Кроме того, могут проявиться ограничения BDE (см. ниже)
источник -
http://codecentral.borland.com/codecentral/ccweb.exe/listing?id=12538
Technical Information Document (TI2751) Some current internal limits of BDE
Product: BDE Version: All Platform: Windows 3.1, Windows 95, Windows NT
Below are the maximum limits for some common BDE objects. If you find you cannot reach these limits or are getting an out of memory error, increasing your SHAREDMEMSIZE in BDE Config to 4096 or more should allow you to reach these limits. If available, also set the MEMSIZE setting to 24 in all cases.
48 Clients in system
32 Sessions per client (3.5 and earlier, 16 Bit, 32 Bit)
256 Session per client (4.0, 32 Bit)
32 Open databases per session (3.5 and earlier, 16 Bit, 32 Bit)
2048 Open databases per session (4.0, 32 Bit)
32 Loaded drivers
64 Sessions in system (3.5 and earlier, 16 Bit, 32 Bit)
12288 Sessions in system (4.0, 32 Bit)
4000 Cursors per session
16 Entries in error stack
8 Table types per driver
16 Field types per driver
8 Index types per driver
48K Size of configuration (IDAPI.CFG) file
64K Max size of SQL statement (RequestLive=False)
4K Max size of SQL statement (RequestLive=True)
6K Max size of SQL statement (RequestLive=True) (BDE 4.01 and greater)
16K Record buffer size (SQL and ODBC)
31 Table and field name size in characters
64 Stored procedure name size in characters
16 Fields in key
3 File extension size in characters
260 Table name length in characters (some servers might have other limits)
260 Path and file name length in characters
260 Index name length (including pseudo-indexes)
204 Setting for MEMSIZE in BDE Administrator | |
127 Tables open per system
254 Tables open per system (BDE 4.01 and greater)
64 Record locks on one table (16Bit) per session
255 Record locks on one table (32Bit) per session
255 Records in transactions on a table (32 Bit)
512 Open physical files (DB, PX, MB, X??, Y??, VAL, TV)
1024 Open physical files (DB, PX, MB, X??, Y??, VAL, TV) (BDE 4.01 and greater)
300 Users in one PDOXUSRS.NET file
255 Number of fields per table
255 Size of character fields
2 Billion records in a table
2 Billion bytes in .DB (Table) file
10800 Bytes per record for indexed tables
32750 Bytes per record for non-indexed tables
127 Number of secondary indexes per table
16 Number of fields in an index
255 Concurrent users per table
256 Megabytes of data per BLOb field
100 Passwords per session
15 Password length
63 Passwords per table
159 Fields with validity checks (32 Bit)
63 Fields with validity checks (16 Bit) | |
32 Sessions containing a cursor to a table
256 Open dBASE tables per system (16 Bit)
350 Open dBASE tables per system (BDE 3.0 - 4.0, 32 Bit)
512 Open dBASE tables per system (BDE 4.01, 32 Bit) (BDE 4.01 and greater)
100 Record locks on one dBASE table (16 and 32 Bit)
100 Records in transactions on a dBASE table (32 Bit)
1 Billion records in a table
2 Billion bytes in .DBF (Table) file
4000 Size in bytes per record (dBASE 4)
32767 Size in bytes per record (dBASE for Windows)
255 Number of fields per table (dBASE 4)
1024 Number of fields per table (dBASE for Windows)
47 Number of index tags per .MDX file
254 Size of character fields
10 Open master indexes (.MDX) per table
220 Key expression length in characters | |
[BDE] [Исключения (exceptions)]
Обсуждение материала [ 30-10-2006 04:28 ] 4 сообщения |