среда, 31 октября 2007 г.

IDS Cheetah Developer Edition - free

То что многие ждали давно, свершилось - IBM выпустила девелоперскую версию Informix Cheetah без ограничения по времени использования (no timebomb). Эта версия является свободной и имеет следующие ограничения: лимит конкурентных сессий 20, CPU VPs to 1 (не путать с кол-вом физ.процессоров на машине), memory to 1GB, database size to 8GB. Все остальные возможности, включая MACH11, встроенные datablades, J/Foundation присутствуют в данной версии. Девелоперская версия поставляется для всех основных платформ в 32bit и 64bit версии.
Девелоперская версия будет доступна для скачивания на сайте IBM начиная с 31 октября 2007 года.
Вместе с анонсом Informix Developer Edition 11, открывается сайт Informix Application Development

вторник, 30 октября 2007 г.

IBM Data Studio: разработка и управление серверами данных

IBM выпускает первое интегрированное программное решение для управления данными IBM Data Studio, объединяющее различные аспекты управления данными и поддержки гетерогенных окружений серверов данных. Data Studio объединяет в себе поддержку разработки приложений и функций оперативного управления и администрирования. Решение базируется на среде Eclipse.
Полный пресс-релиз можно почитать здесь

Насколько я понял, это бывший IBM Developer Workbench Beta. Инструмент действительно интересный, позволяет разрабатывать приложения на базе Java, делать прямой и обратный инжениринг схем баз данных, графически представлять схемы баз. Работает с Informix и DB2. Согласно информации из пресс-релиза IBM Data Studio будет доступен для свободного скачивания 31 октября. В сети между тем появились обзоры по использованию данного инструмента. Чуть позже попробую написать свой обзор.

понедельник, 15 октября 2007 г.

Размеры блокировок

Оказывается каждая блокировка занимает в таблице блокировок в 10 информиксе не 44 байта как писалось в документации раньше, а 120 байт:
(выдержка из ids_adref_docnotes_10.0.txt)

1.5.6 Lock Size Correction

The LOCKS topic incorrectly states "Although each additional lock takes
up just 44 bytes of resident shared memory, locks can become a resource
drain if you have a limited amount of shared memory." The correct
information is "Although each additional lock takes up just 120 bytes of
resident shared memory, locks can become a resource drain if you have a
limited amount of shared memory."

среда, 19 сентября 2007 г.

Конфигурируем тестовый сервер: Часть 3 или Ключ на старт

Продолжение. Вторая часть здесь.

Итак, информикс установлен, произведена начальная конфигурация экземпляра, о чем я писал в двух предыдущих постах "Конфигурируем тестовый сервер". Теперь самое время запустить экземпляр. Для этого достаточно в консоли (предварительно залогинившись в систему как informix и установив необходимое окружение для информикса) запустить команду:

oninit -iv

Ключ -i означает что необходимо провести начальную инициализацию экземпляра, в ходе которой будут созданы необходимые служебные структуры на диске в rootdbspace. Этот флаг указывается один раз при первоначальном запуске экземпляра, в следующий раз информикс должен запускаться без флага -i, иначе все данные для этого экземпляра будут потеряны!
Ключ -v добавляет процессу запуска экземпляра информативности, и в случае каких либо неполадок в процессе запуска можно будет сразу увидеть, что именно пошло не так.
Пользователи Windows могут запустить экземпляр как сервис, для этого надо открыть консоль сервисов, найти в ней сервис информикса, в свойствах этого сервиса указать флаг -iy (только для первого запуска экземпляра!!!) и запустить сервис. Флаг -y нужен для того чтобы обеспечить неинтерактивную инициализацию экземпляра.

Совет: никогда не используйте флаг -y (который отключает подтверждение ввода) если не уверены на 100% что делаете.
Например команда onmode -k позволяет остановить информикс, предварительно выводя запрос об останове, на который надо ответить утвердительно или отрицательно. После этого она выводит кол-во подключенных к инфомиксу сессий и еще раз спрашивает об отключении. Если же использовать с ней дополнительно флаг -y то никаких запросов выведено не будет. Так что этот флаг предназначен для неинтерактивного запуска команд, например в скриптах.

О том что информикс запущен и работает нормально, можно узнать запустив команду "onstat -" которая выведет информацию о версии, статусе и времени работы информикса, а также суммарный объем занимаемой экземпляром памяти:

IBM Informix Dynamic Server Version 10.00.UC7 -- On-Line -- Up 27 days 23:40:57 -- 93056 Kbytes

Статус On-Line говорит о том что экземпляр работает и может принимать подключения.
Информикс также пишет некоторую информацию о своей работе в текстовый файл журнала. Этот файл задается в $onconfig параметром MSGPATH. Содержимое последних строк файла можно посмотреть также командой "onstat -m"

Для того чтобы остановить экземпляр, необходимо запустить в текущем окружении команду "onmode -k" от имени пользователя informix.

Активность транзакций и статистика на уровне таблицы

Иногда требуется посмотреть статистику (чтения, записи, блокировки и т.д.) по конкретной таблице или индексу. Конечно можно воспользоваться выводом команды onstat -g ppf, но если известен partnum (в десятичном или шестнадцатиричном формате) можно использовать мой скрипт. Он принимает в качестве параметра partnum и выдает статистическую информацию по объекту:

onprtninfo --
Usage: onprtninfo [-h hex_partnum|-d dec_partnum]

а вот и сам скрипт:

if [ "$1" == "-h" ]; then
export decpartn=`echo $(($2))`
elif [ "$1" == "-d" ]; then
export decpartn="$2"
else
echo "Usage: onprtninfo [-h hex_partnum|-d dec_partnum]"
exit
fi

dbaccess sysmaster - </dev/null
output to pipe "sed -e '/^$/d' " without headings
set isolation to dirty read;
select * from sysptprof
where partnum=$decpartn;
!

скрипт написан на bash и без проблем работает в AIX и Linux.

четверг, 6 сентября 2007 г.

Ищем баги

Уфф, не писал в блог больше месяца, был в отпуске, а потом было много дел.

Текущая на данный момент версия в ветке 10 это IDS 10.00.xC6W5. Она имеет ряд существенных исправлений, поэтому рекомендуется использовать ее. Но она же имеет и баг, который не позволяет ее использовать нам в промышленной эксплуатации. Поэтому пришлось просить саппорт чтобы выпустили патч. В скором времени (обещают в конце сентября) выйдет xC7, возможно данное исправление будет включено туда.

Что еще нового. В версии начиная 10.00.xC5 изменена работа btscanner: теперь он всегда имеет приоритет high, это сделано для исключения конфликтов между разными процессами. Более подробно можно почитать в описании исправления IC52093: THE METHOD FOR SETTING THREAD PRIORITY IS FLAWED AND AFFECTS BTREE SCANNER PRIORITY

четверг, 19 июля 2007 г.

Informix 11.10.UC1

Скачали Informix 11.10.UC1 с сайта IBM, это уже не бета-версия. Поставил на AIX. Изменился консольный инсталлер - теперь предлагает после установки помимо прочего сконфигурить и установить тестовый инстанс информикса. Изучаем.

А вот здесь можно почитать (официальное письмо ibm) о возможностях новой версии Информикса. Немного рекламы, куда же без нее :)