Страница 1 из 2

Размер БД имеет значение

Добавлено: 22 Январь 2013, 6:38
yuriy
Добрый день

Может кто-нибудь уже сталкивался с этим
Помогите пожалуйста советом, что можно сделать в данной ситуации

Файл базы данных в формате DAT имеет размер 2 147 357 245 байт
При попытки добавить еще одну запись возникает устойчивая ошибка GPF

Clarion 5.5 Проверялось на Windows XP, Windows 7, Windows server 2008 standart
База работает на Windows server 2008 standart в терминальном режиме



С Уважением Юрий

Re: Размер БД имеет значение

Добавлено: 22 Январь 2013, 11:22
Алексей- Софт-Центр
Добрый день!

Clarion:File Specifications/Maximums
File Size: limited only by disk space
Records per File : 4,294,967,295
Record Size: 65,520 bytes
Field Size : 65,520 bytes
Field Name: 12 characters
Fields per Record: 65,520
Keys/Indexes per File: 251
Key Size: 245 bytes
Memo fields per File : 1
Memo Field Size: 65,520 bytes
Open Data Files: Operating system dependent

Если ограничения не перебрали,то:
1. Запустить cscn.exe - пролистать весь файл - нет ли "битостей"
2. Запустить на файл csrt.exe - проверить все ли с ключами в порядке

Алексей

Re: Размер БД имеет значение

Добавлено: 22 Январь 2013, 12:27
yuriy
Добрый день

"битостей" нет, с ключами все в порядке.
Записей 5 млн.
Проблема именно в размере файла такое ощущение, что его не понимает ОС
Временное решение нашлось обрезание длинны одного из полей при этом сократился размер файла и появилась возможность добавлять новые записи

Юрий

Re: Размер БД имеет значение

Добавлено: 22 Январь 2013, 15:06
Дед Пахом
где-то мне попадалось, что "File Size: limited only by disk space" это враньё, на самом деле лимит 2Гб.

Re: Размер БД имеет значение

Добавлено: 22 Январь 2013, 17:58
yuriy
Похоже на правду
Провел эксперемент взял файл с архива размером меньше 2 Гб и стал в него в цикле добавлять новые записи пока размер не превысил 2 147 000 000 байт все было хорошо после превышения - GPF.

Re: Размер БД имеет значение

Добавлено: 23 Январь 2013, 12:26
kreator
Сразу ссылку из Википедии - http://ru.wikipedia.org/wiki/%D1%F0%E0% ... 1%F2%E5%EC.
Кому не досуг читать - ограничение в 2Gb в FAT16, в FAT32 - ограничение в 4GB, в NTFS - 16EB (ограничение накладывает ось, например в 32 битной - 2 с чем-то ТB).
А хелпу ИМХО верить нельзя. В 8-ке для драйвера Клариона стоит 4GB. Для других драйверов ISAM - где 2GB, где 4GB. Наверно, эти данные не менялись с 90-х годов, тогда и NTFS то не было.

Re: Размер БД имеет значение

Добавлено: 23 Январь 2013, 16:21
Алексей- Софт-Центр
Добрый день!
На самм деле надо посмотреть в описание заголовка dat - файла.
(у меня под рукой нету)
Сколько там отведено под размер.


Алексей

Re: Размер БД имеет значение

Добавлено: 25 Январь 2013, 21:48
Shur
Cоглашусь с версией Kreator'а. Надо проверить, как размечен диск, если FAT16, то не удивляйтесь.
Сам не так давно с вновь купленным хардом мучался, записывая на него киношку, пока не сообразил его переразметить с FAT32 на NTFS.

Re: Размер БД имеет значение

Добавлено: 29 Январь 2013, 19:51
AlexSmile
Я когда работал с ДАТ файлами ранее, сталкивался с такой проблемой.
В словаре драйвер стоял BTRIEVE.
Проблему тогда решил следующим образом:
т.к. Бтрив уже стотыщ лет уже не поддерживает, вместо него поставил pervasive sql(есть разные версии, можно ставить даже последнюю).
В консоле сервера Pervasive ставим типы файл больше 6-ого, тогда были версии 7/8.
Они запросто держут файлы большего размера, у меня были файлы более 4гб.
Сейчас точно не могу сказать где это менять, но поискать в консоле сервера вполне можно.
Уже забыл Бтрив как страшный сон, сейчас все на Sybase ASA.
Если мой пост помог, удачи.

Re: Размер БД имеет значение

Добавлено: 30 Январь 2013, 6:04
nik190994
Sybase ASA используете с Clarion ?

Re: Размер БД имеет значение

Добавлено: 30 Январь 2013, 15:03
kreator
AlexSmile'у:
Если операционка не поддерживает большие файлы, никакой Btrieve не поможет.
nik190994'у:
Я использую Sybase ASA в большом проекте. Сервер 7.0/8.1 (потому что бесплатно), правда коннект через ODBC. Была удачная попытка сконвертнуть в 12 версию, но денег на платную пока не выделили, есть версия для разработчиков (3 коннекта). Вообще, Sybase ASA - лучшее, что я видел для малых и средних предприятий (ИМХО).

Re: Размер БД имеет значение

Добавлено: 30 Январь 2013, 18:02
yuriy
Скорее всего ограничение накладывает сама среда Clarion 5.5. Ядро Clariona - 32 разрядное и файлы больше 4 ГБ не может правильно адресовать. Надо будет провести эксперемент с большим файлом и Clarion 8. Если все будет хорошо то придется переходить на восьмерку.

Re: Размер БД имеет значение

Добавлено: 30 Январь 2013, 22:52
seawolf
помнится мне что tps также имеет 2 гига лимит. Есть у меня программа - когда была отладка она падала при достижении этого лимита как на XP так и на Vista. Fat 16 там понятное дело уже не было.

Re: Размер БД имеет значение

Добавлено: 31 Январь 2013, 15:39
Губин Игорь
Там был 32х разрядный clarion.

Re: Размер БД имеет значение

Добавлено: 31 Январь 2013, 22:42
seawolf
то есть если это будет windows 7 64 бит + clarion 7/8/9 то мы получим лимит 4 гига ?