оригинал: http://www.ibphoenix.com/ibp_rc2_faq.html
перевод: КДВ (http://www.ibase.ru/)
абсолютный url: http://www.ibase.ru/v6/fbrcfaq.htm
дата
перевода: 04.02.2002
дата последнего обновления: 04.02.2002
Обнаружены проблемы с обновляемыми view, имеющими before update триггеры. Когда одна (1) запись обновляется, сообщается что три (3) записи было обновлено.
см. код примера в оригинале — http://www.ibphoenix.com/ibp_rc2_faq.html.
Статус — исправлено, Firebird 1.0 не будет содержать этой ошибки
Статус — исправление ошибки тестируется, будет включено в Firebird 1.0
Статус — исправление ошибки тестируется, будет включено в Firebird 1.0
Следующий запрос:
SELECT FIRST(?Param1) Field1, Field2, ... , FROM TABLE1
выдает ошибку
message :
"Dynamic SQL error.
SQL error code = -804
Data type
unknown.
Client SQL dialect 1 does not support reference
to 64-bit numeric
datatype."
Статус — исправлено, будет включено в Firebird 1.0
Статус — исправление ожидается в Firebird 1.0
При restore имена объектов, имеющие длину 32 символа, обрезаются до 31 символа.
Статус — исправлено в RC2
Статус — исправлено в RC2, такие сообщения выводятся только в отладочной версии.
Если Вы загрузили snapshot RC1 для Windows, рекомендуем Вам загрузить самую последнюю версию.
FILEVERSION это скрытый ресурс, хранимый как integer. Он не виден в File | Properties для ibserver.exe. Однако он используется инсталляционными скриптами для определения номера версии исполняемых и dll файлов. Оригинальный релиз Win32 RC1 содержит FILEVERSION равный 7.2. Если эти файлы оставить на диске, то инсталляторы новых версий Firebird или Interbase могут сработать неправильно (т.е. не переписать ibserver.exe и другие файлы).
Если вы используете старый RC1 (дата правильного snapshot должна быть 19-NOV-01 01:00:00. У неправильных файлов дата равна или меньше 13-NOV-01.), то рекомендуется вручную удалить файлы *.exe, *.dll и gds32.dll перед установкой новой версии, или не удаляя переписать их файлами из более свежего snapshot.
Дистрибутив с инсталлятором для Win32 использует самые последние версии исполняемых файлов, и не имеет подобной проблемы.
Если вы устанавливаете файлы из snapshot, то поставте RC1a snapshot. В нем
находятся правильные файлы.
RC1a выпущен 26 ноября, и содержит файлы билда
612.
Статус — исправлено в RC2
Статус — исправлено в RC2. Т.е. вновь создаваемые БД имеют FW = ON.
SQL error code = -204
Ambiguous field name between table/view TOKEN
and table/view
Firebird теперь не выполняет запросы, которые ссылаются на имена столбцов, которые повторяются в выбираемых таблицах. Прежнее поведение всех версий Interbase и Firebird могли дать (и часто давали) неверный результат выборки, зависящий в том числе от порядка выбираемых таблиц.
Это один из основных пунктов при миграции на новые версии Firebird.
КДВ: привожу пример неоднозначной выборки над employee.gdb:
select po_number, customer, department, last_name, phone_no from customer c, employee e, sales s, department d where c.cust_no = s.cust_no and d.dept_no = e.dept_no and e.emp_no = s.sales_rep
поле phone_no есть как в delartment, так и в sales. Поэтому Firebird на такой запрос будет "ругаться", требуя указать алиасы полей явно. Не ленитесь, поскольку такое требование указано и в стандарте (т.е. подобное поведение Firebird — это не самодеятельность).
Статус — расширено в RC2 (в диалекте 1 подобный запрос отработает, а в диалекте 3 — выдаст ошибку).
Увы, да. Драйвер использует запросы с неуточнением имен полей. В RC2 это будет исправлено.
Статус — исправлено в RC2.
Да, есть такое. Замечательный способ удалить все данные в таблице. Пример:
delete from table where col in (select col first 5 from table);
не удалит только 5 строк, а удалит все записи. Потому что подзапрос выполняется для КАЖДОЙ записи внешнего запроса. Собственно, указывать FIRST в подобных случаях нельзя, однако сообщение об ошибке пока не выдается.
Статус — не решено. Не исправлено в RC2.
-SQL error code = -104
-Token unknown — line N, char X
Да, есть такая ошибка в ISQL. Вполне возможно, что она уже исправлена в самых последних билдах Firebird.
Статус — исправлено в RC2.
Пока нет. Код добавлен в дерево исходных текстов, но пока полностью под Linux не тестировался. В настоящее время файлы базы данных более 2Гб поддерживаются только на Win32 и Darwin (Mac OS X). Так что пока для баз больше 2Гб используйте многофайловые БД.
Когда код будет окончательно протестирован, будут доступны отдельные дистрибутивы. Так будет потому, что сама операционная система должна поддерживать работу с большими файлами, а это есть только в Linux kernel 2.4, да и то работает пока не совсем надежно или однозначно.
Статус — исправлено в RC2.
Такая информация есть на http://www.ibphoenix.com/FirebirdBugsOpen.html. Этот же файл есть каталоге doc инсталляции и исходных текстах. При наличии доступа в internet клик на номере бага отправит вас на соответствующее описание на SourceForge.
Действительно. Этот момент был упущен при создании дистрибутива. Файл будет доступен в самое ближайшее время.
КДВ: RC1 начался с билда 1.0.0.555. Там этот баг был. В билде 1.0.0.608RC1 он уже исправлен.
Да, если в вашей базе данных порядок триггеров важен, то в данной версии он игнорируется.
Статус — исправлено в RC2.
SELECT X.CUST_NO, ABS(SUM(X.TOTAL_VALUE))
FROM SALES X
GROUP BY
X.CUST_NO;
InterBase никогда не позволял группировать по вычисляемым выражениям или пользовательским функциям (UDF). В Firebird эта возможность добавлена, однако она имеет ряд побочных эффектов, поэтому пока была выключена.
Статус — исправлено в RC2, будет включено в Firebird 1.0.
Да, баг есть, причем достаточно старый, и возможно относится ко всем версиям Interbase 6.0. Уже исправлен в билдах Firebird 1.0.0.608 и выше.
Статус — исправлено в RC2.