Автор: LancelotDnepr
Дата сообщения: 30.01.2013 17:40
Имеется в наличии банк данных (CronosPlus; большая модель; данные: шифровать и сжимать; индексы: шифровать и сжимать). Банк данных содержит базу базу размером порядка 35 млн. записей. База данных имеет текстовое поле длинной 250 символов. Во время индексации банка данных без ошибок строятся индексы по всем необходимым полям, за исключением вышеуказанного. Во время индексации указанного поля вываливается окно с заголовком "CroSortFile::SetMap - 5" и с сообщением "Отказано в доступе". После нажатия кнопки "Ok" в этом окне индексация по остальным полям проходит без сбоев, но поиск по указанному полю не возможен, т.е. индекс по указанному полю не построен. Ревизия и оптимизация банка данных не помогла. Сначала я предполагал, что какая-то запись в указанном поле содержит недопустимые символы. Был создан банк данных аналогичной структуры и в него, предварительно очищая перед каждой новой загрузкой, выгружались данные из рабочего банка данных по-частям. Если объем данных был относительно не большой, то выгрузка происходила успешно и индексация тоже, в противном случае вываливалось окно с той же ошибкой. После этого я обратил внимание на то, что ошибка происходит тогда, когда временный файл, который создавался во время индексации cro***.tmp достигал размера больше 4Gb, а именно 4290772992 байт. Данная проблема имеет место в CronosPlus как версии 3.04.72 так и в 3.04.1061. Существует ли возможность избежать данной ошибки, а то уж очень не хочется делить банк данных на несколько частей. Заранее благодарен за помощь.