Ограничения строк данных в cfspreadsheet

Я загружаю около 20 000 строк в файл <cfspreadsheet>. Выдает ошибку:

введите здесь описание изображения

Когда я ограничиваю количество строк до 15 000, я не получаю сообщения об ошибке.

Есть ли жесткое ограничение на количество строк, которые поддерживает <cfspreadsheet>?


person James A Mohler    schedule 06.10.2013    source источник
comment
Старый Excel имел ограничение в 16384 строки. Убедитесь, что вы используете новый формат файла? (Понятия не имею, как это сделать, но POI поддерживает и то, и другое, так что должен быть способ.)   -  person Peter Boughton    schedule 07.10.2013
comment
(Изменить) IIRC, просто укажите расширение .xlsx для выходного файла. Тем не менее, насколько я знаю, единственные ограничения на количество строк — это ограничения, установленные Excel, около ~65 КБ для старого двоичного формата, что не имеет значения, если вы экспортируете только 20 КБ строк. Но эта ошибка звучит смутно знакомо. Сколько столбцов вы экспортируете? Кроме того, какова полная трассировка стека сообщения об ошибке?   -  person Leigh    schedule 07.10.2013
comment
Хм, только что проверил, и предел 16 КБ был Excel 95 (тоже ошибка Access 97). Excel 97 и выше увеличил его до 65536. (Кстати, это 2 ^ 14 и 2 ^ 16)   -  person Peter Boughton    schedule 07.10.2013
comment
В дополнение к ограничениям на количество строк также важны ограничения по памяти. Ваше сообщение об ошибке будет выглядеть примерно так: превышено пространство кучи Java.   -  person Dan Bracuk    schedule 07.10.2013
comment
Я следил за использованием памяти, и свободного места было много. Я использовал Java 7 с G1GC, и он сообщил, что свободно более 2 ГБ.   -  person James A Mohler    schedule 07.10.2013
comment
Было бы полезно увидеть полное сообщение трассировки стека.   -  person Leigh    schedule 07.10.2013


Ответы (1)


Это звучит похоже на проблему, с которой я столкнулся здесь: ">Как исправить сбой функции SpreadSheetAddRows при добавлении большого запроса?. Если у вас есть CF10, вам может повезти, потому что это должно быть исправлено сейчас (по крайней мере, с обновлением 10).

person Alex    schedule 24.10.2013
comment
В краткосрочной перспективе CF 10 не вариант. - person James A Mohler; 26.10.2013
comment
Так и думал, поэтому я прямо указал CF10. Мне потребовалось некоторое время, чтобы выяснить, какая сборка была 284725 (где они это исправили), поэтому решил избавить всех от хлопот. На самом деле единственный другой вариант, который я знаю, - это переписать код, чтобы избежать использования cfspreadsheet, о котором никто не хочет слышать. - person Alex; 28.10.2013