Re: ��� ����� ������ ����� �������� �����������: �� �� ���������������� ����� � ������ � ������ ����������?

2008-09-18 Thread Nikolay Ponomarenko


Hello, Vadim!
You wrote  on Thu, 18 Sep 2008 16:31:46 +0600:

Так, подумалось - если загнать всю равботу с СУБД в виртуальную сеть, а уже 
подключение к ней - карты, смарты... и все прелести средствами ОС?


А с базой работать как обычно.

--
-=Крепчает нравственность, когда слабеет плоть.=-
With best regards,  Nikolay Ponomarenko 





Re: FB 2.1 ������� � ��������� �������

2008-10-09 Thread Nikolay Ponomarenko


Hello, Vlad!
You wrote  on Thu, 9 Oct 2008 15:25:07 +0300:


>> становится на свои места. Из странностей в RDB$INDICES для этого индекса
>> RDB$INDEX_ID равен 819 :-/
VK> Похоже на http://tracker.firebirdsql.org/browse/CORE-1838

Хотя размер страницы 6384, но проблема именно эта. Удалось повторить (выслал 
пример на sourceforge.net), бьется именно на пересчете статистики в 
процедуре вида:


CREATE OR ALTER PROCEDURE SYS_SET_STATISTICS
AS
 DECLARE VARIABLE V_NAME TSTRING;
BEGIN
 FOR
   SELECT RDB$INDEX_NAME FROM RDB$INDICES INTO :V_NAME
 DO
   EXECUTE STATEMENT 'SET STATISTICS INDEX '||TRIM(:V_NAME);
END
^


>> FB embed 2.1.1.17910
VK> Ты уверен, что 2.1.1, а не 2.1.0 ?

Перепроверил, версия файла WI-V2.1.1.17910

--
-=Женщина - это кроссворд, где ничего не пересекается (с) Г. Малкин=-
With best regards,  Nikolay Ponomarenko 





FB 2.1 ������� � ��������� �������

2008-10-09 Thread Nikolay Ponomarenko


Hello, All!

Столкнулся со странной ситуацией, когда в свежесозданной из скрипта БД, 
индекс для временной таблицы не подхватывается никаким запросом. Как только 
пересоздать, или создать идентичный индекс для таблицы - все становится на 
свои места.


Из странностей в RDB$INDICES для этого индекса RDB$INDEX_ID равен 819 :-/

И еще более  странно, что таким он становится после заливки в эту свежую БД 
через isql значительных объемов данных в одной транзакции(135мб файл через 
isql). До заливки все ок. В процессе заливки таблица не трогается.


FB embed 2.1.1.17910
База создается из скрипта через isql и embed.

CREATE GLOBAL TEMPORARY TABLE O_OPTIM (
   ID_OPTIM_TYPE  TFOREIGN /* TFOREIGN = BIGINT DEFAULT 0 NOT NULL */,
   ID_DEMAND  TFOREIGN /* TFOREIGN = BIGINT DEFAULT 0 NOT NULL */,
   ID_SUPPLY  TFOREIGN /* TFOREIGN = BIGINT DEFAULT 0 NOT NULL */
) ON COMMIT PRESERVE ROWS;

CREATE UNIQUE INDEX O_OPTIM$D_OT ON O_OPTIM (ID_DEMAND, ID_OPTIM_TYPE);

--
-=в этой стране "налоговые преступления" следует называть "налоговым 
подвигом"=-
With best regards,  Nikolay Ponomarenko 





Re: ����� � 2.1 � � �������� �� MSVC8

2008-10-21 Thread Nikolay Ponomarenko


Hello, Vlad!
You wrote  on Tue, 21 Oct 2008 13:15:54 +0300:

но похоже что манифест для самого приложения - необходим.

На 2003 с установленным рантаймом при попытке использования embeded, когда у 
приложения нет манифеста, приводит к ошибке:


R6034
An application has made an attempt to load the C runtime library 
incorrectly.

Please contact the application's support team for more information.


--
-=День пропал не зря=-
With best regards,  Nikolay Ponomarenko 





Re: ����� � 2.1 � � �������� �� MSVC8

2008-10-21 Thread Nikolay Ponomarenko


Hello, Vlad!
You wrote  on Tue, 21 Oct 2008 13:15:54 +0300:

VK> Всем желающим просьба потестировать. Для этого достаточно заменить
VK> соответствующие dll в бинарниках от официального релиза 2.1.1


WinXP SP2 чистая - все ок.
Win 2003 R2 SP1 с установленным рантаймом - ок.

--
-=Деньги кричат, богатство шепчет=-
With best regards,  Nikolay Ponomarenko 





Re: ����� � 2.1 � � �������� �� MSVC8

2008-10-22 Thread Nikolay Ponomarenko


Hello, Vlad!
You wrote  on Tue, 21 Oct 2008 17:15:22 +0300:

VK> Я надеялся, что манифеста в embedded хватит :(
VK> А ты пробовал embedded с моими длл-ками ?

Ну так его и пробовал. Подложил те, который ты выложил приложению(с 
манифестом) работающему через embed  - все ок. Подложил второму приложению, 
у которого своего манифеста нет - не работает.


Видимо просто манифеста в embed недостаточно, т.к. он не отдельное 
приложение...


VK> Завтра положу более правильный embedded

Там какой-то особый манифест будет?

--
-=Кто с чем к нам зачем, тот от того и - того=-
With best regards,  Nikolay Ponomarenko 





Re: ����� � 2.1 � � �������� �� MSVC8

2008-11-03 Thread Nikolay Ponomarenko


Hello, Vlad!
You wrote  on Sun, 2 Nov 2008 20:54:57 +0200:

VK> Я правильно понимаю, что желающих тестировать не наблюдается ?
VK> Значит ничего не меняем, всех всё устраивает, ОК

Ну, на тех конфигурация что доступны, с последним фиксом, проблем не 
наблюдалось.


--
-=Мужчина без жены, как рыба без велосипеда.=-
With best regards,  Nikolay Ponomarenko 





Re: ����� � 2.1 � � �������� �� MSVC8

2008-11-03 Thread Nikolay Ponomarenko


Hello, Khorsun!
You wrote  on Mon, 3 Nov 2008 11:42:31 +0200:


>> Ну, на тех конфигурация что доступны, с последним фиксом, проблем не
>> наблюдалось.
KV> Можно хотя бы перечень конфигураций ? :)

:))
WinXP SP2 чистая.
Win 2003 R2 SP1 с установленным рантаймом.
Vista SP1 с установленным рантаймом.

--
-=Hе могу стоять, когда другие работают, пойду ... полежу=-
With best regards,  Nikolay Ponomarenko 





Re: ����������

2008-11-19 Thread Nikolay Ponomarenko


Hello, Konstantin!
You wrote  on Wed, 19 Nov 2008 16:51:25 +0300:

KRB> Что за беда сегодня? На двух разных серваках FB 1.5 почти одновременно
KRB> съехали разные генераторы, примерно на (-20).

Бывало такое, вроде как что-то правилось, в плане более гарантированной 
записи страницы с генераторами на диск.

Но случалось только в случае нештатных ситуаций - сбоя питания и т.п.

KRB> что пора переходить на 2.х ?

Давно пора :))

--
-=Детский конструктор Lego, детский деструктор ~Lego=-
With best regards,  Nikolay Ponomarenko 





Re: ����������

2008-11-19 Thread Nikolay Ponomarenko


Hello, Ovchinnikov!
You wrote  on Wed, 19 Nov 2008 17:06:26 +0300:


KRB>>> что пора переходить на 2.х ?
>> Давно пора :))
OV> Боюсь, не все так оптимистичны :-)

Например?

--
-=Поиски счастья - основной источник несчастья...=-
With best regards,  Nikolay Ponomarenko 





Re: ����������

2008-11-20 Thread Nikolay Ponomarenko


Hello, Ovchinnikov - ну испольщуйте вы имя в начале, а?!
You wrote  on Thu, 20 Nov 2008 09:44:17 +0300:


KRB>>>>> что пора переходить на 2.х ?
>>>> Давно пора :))
OV>>> Боюсь, не все так оптимистичны :-)
>> Например?

OV> на 2.х уже не столь просто. Не хватает времени в свете постоянных
OV> текущих доработок и исправлений оттестировать весь комплекс параллельно
OV> на FB 2.х именно сейчас. Да еще и отработать переход на 2.x чтоб гладко
OV> было все...

Так это называется "нет возможности перейти" :)
Но переходить пора давно - реализация многих вещей ускоряется на порядок, уж
очень много вкусностей в текущих версиях...

--
-=Деньги, кОнечнО, бОльшОе злО. Но их Отсутствие есть злО еще бОльшее!!!=-
With best regards,  Nikolay Ponomarenko 





Re: OFF: GUI �� Windows Mobile

2009-01-09 Thread Nikolay Ponomarenko


Hello, те, кто пишет первой фамилию!
You wrote  on Mon, 05 Jan 2009 17:53:15 +0600:

>> Еще раз: интересует принципиальная возможность/невозможность коддинга
>> под платформу Windows Mobile на Delphi.
KA> еще freePascal умеет вроде компилировать под WM
KA> но не уверен.

Товарищ на freepascal и lazarus делал приложение для Wince/ARM платформы - 
говорил что вполне работоспособно. Приложение простое - для торговых агентов 
"базенка по шоколадкам".

http://wiki.freepascal.org/germesorders

--
-=...В сутках 24 часа. В ящике пива 24 банки. Думаете, это просто 
так...совпаденьице?=-
With best regards,  Nikolay Ponomarenko 





Re: isql � ���������� ������

2009-02-04 Thread Nikolay Ponomarenko


Hello, Yurij!
You wrote  on Wed, 4 Feb 2009 01:57:20 -0800 (PST):

>> isql ведь хреначит весь скрипт до упора, даже если ошибка
>> в первой же строке встретилась.

Отнюдь, bail on/off позволяет этим рулить.

Y> Есть такое религизное понятие - unix-way, которое указывает, что если
Y> есть утилита, выполняющая требуемую работу, то надо вызывать ее, а не
Y> писать велосипеды заново и самостоятельно.

Угу, путь есть, но использовать его не на той платформе, да еще, не приведи 
бог, из gui - удовольствие сомнительное.


--
-=В области времени нет миллионеров.=-
With best regards,  Nikolay Ponomarenko 





Re: FB � ISAPI

2009-02-25 Thread Nikolay Ponomarenko


Hello, Dmitriy!
You wrote  on Tue, 17 Feb 2009 15:39:29 +0200:

>> то черт побери - unicode...
DAB> же есть модуль совместимости для строк. Ну и с SizeOf() поосторожнее
DAB> нужно. Хотя это уже экзотика - обычно достаточно перекомпиляции.

Переводили недавно свой проекта на 2009 - мелкие баги, как в своем коде, так
и модулях самого Борланда (еси канеш можно их так еще называть) попортили
крови порядком.

Есть варианты кода, когда на 2007 работает и все ок, а на 2009 уже нет, хотя
компилится - особенно на стыке PChar/string/AnsiString.
http://pnv82.blogspot.com/search/label/d2009

2Олег

ну и накой тогда "отладка" через лог?


Так, вспоминая пляски с веб-сервисом на делфи(а веб к нему будет ой как 
близок :)) - иногда тока так можно что-то многопоточное поймать


--
-=Цивилизация - это машина по производству потребностей, в которых нет 
потребности=-
With best regards,  Nikolay Ponomarenko 





Re: FB � ISAPI

2009-02-25 Thread Nikolay Ponomarenko


Hello, Dmitry!
You wrote  on Wed, 25 Feb 2009 18:55:45 +0300:

>> Есть варианты кода, когда на 2007 работает и все ок, а на 2009 уже нет,
>> хотя
>> компилится - особенно на стыке PChar/string/AnsiString.
>> http://pnv82.blogspot.com/search/label/d2009

KD> А что делает вот ета конструкция -
KD> PAnsiChar(AnsiString(SomeStrings[I])) ?

KD> Если это просто голый указатель на строку, к которому (принудительно?)
KD> приводится временный объект AnsiString и сохраняемый в 
RecType::AnString, то

KD> тут можно только погыгать над этими детскими граблями.

Ну, приведение в стиле PChar() было вполне себе частым и 
популярным вариантом. И при конвертации кода заменилось на анзишные аналоги. 
И нигде не щелкнуло, что это уже не просто указатели, особенно при том, что 
в 2007 это таки просто указатели...


Так что грабли стали достаточной высоты лишь с юникодом :))

--
-=Технику безопасности при работе на шлифовальных станках я знаю, как свои 
три пальца=-
With best regards,  Nikolay Ponomarenko 





Re: FB � ISAPI

2009-02-25 Thread Nikolay Ponomarenko


Hello, Kovalenko!
You wrote  on Wed, 25 Feb 2009 21:15:54 +0300:

>> Так что грабли стали достаточной высоты лишь с юникодом :))
KD> На C++ они тебя достали бы сразу :-)

Ну все мы ведь все любим Delphi за его строки, да? :

--
-=Женитьба - лучший способ перезимовать...=-
With best regards,  Nikolay Ponomarenko 





��� �������� � can't format message

2009-02-25 Thread Nikolay Ponomarenko


Hello, All!

Пытаюсь выполнить скрипт через isql - в результате полный экран этих 
неформатов.

can't format message 17:141 -- message system code -4

Исполняю из каталога установленного и запущенного сервера, в котором 
выполнен instreg.exe i.
HKEY_LOCAL_MACHINE\SOFTWARE\Firebird Project\Firebird Server\Instances 
указывает в правильный каталог.


Если я правильно помню, он не находит(или находит, но не тот?) - 
firebird.msg.

Какими способами можно его ткнуть в нужное место?

FB 2.1.1.17910

--
-=Если ты умнее всех, кто это поймет?=-
With best regards,  Nikolay Ponomarenko 





Re: ������� Embarcadero � ����� ���������� 17-�� �����, 18-�� � ������

2009-03-11 Thread Nikolay Ponomarenko


Hello, Anton!
You wrote  on Tue, 10 Mar 2009 22:29:30 +0200:


A> А в Киеве семинар когда?

Да, было бы интересно...
Другими словами - +1.

--
-=жизнь - это плата за то, чтобы побывать в детстве (c)ag=-
With best regards,  Nikolay Ponomarenko 





Re: FB � WI-FI

2009-04-02 Thread Nikolay Ponomarenko


Hello, Dmitry!
You wrote  on Thu, 2 Apr 2009 11:21:09 +0400:

KD> Во время ловли очередного бага FB выяснилось, что течет драйвер звука.

О как, от ФБ к звуку.
Ну я бы еще к принтеру понял, но звуковуха?? :))

--
-=Женщины говорят, потому что это у них такой способ думать.=-
With best regards,  Nikolay Ponomarenko 





Re: ��� ������� - ������ isql ��� ������������� ������ � �����������

2009-04-16 Thread Nikolay Ponomarenko


Hello, Alex!
You wrote to Nikolay Ponomarenko on Thu, 16 Apr 2009 13:34:17 +0400:

NP>> Считал что второй вариант однозначно быстрее, но практический тест
NP>> показывает сравнимые результаты :-/

AC> Сервер и клиент на одной железяке?

Более того, embeded.

По показаниям таск менеджера кол-во записанных байт достигает нескольких 
гиг, много больше размера самой БД - там несколько индексов, часть из 
которых используется при апдейтах.


Кстати, я правильно помню, что версия _всей_ записи создается даже при 
холостом апдейте или апдейте теми же данными? (записи там оч. развесистые)


--
-=В области времени нет миллионеров.=-
With best regards,  Nikolay Ponomarenko 





��� ������� - ������ isql ��� ������������� ������ � �����������

2009-04-16 Thread Nikolay Ponomarenko


Hello, All!

Подскажите плз, что теоретически быстрее накатится на базу:
- скрипт с 200тыс строк вида update  where ... через isql
- запрос через fibquery c передачей параметров и коммитом каждые N тыс 
записей


Считал что второй вариант однозначно быстрее, но практический тест 
показывает сравнимые результаты :-/


Загрузка проца в первом варианте немного выше, но похоже что при избытке 
выч. мощности оба варианты утыкаются в производительность дисковой 
подсистемы.


Правильно ли я понял, что причина отсутствия значимой разницы именно в этом?

PS
да, вдруг у кого будут мысли, как можно ускорить "построчный" апдейт 200тыс 
записей - сейчас это порядка 3-4 минут на 50мб/с винте.
Почему-то очень хочется, что бы это не было теоретическим пределом скорости 
:

FB 2.1

--
-=В любом из нас спит гений. И с каждым днем все крепче=-
With best regards,  Nikolay Ponomarenko 





Re: ��� ������� - ������ isql ��� ������������� ������ � �����������

2009-04-16 Thread Nikolay Ponomarenko


Hello, Vlad!
You wrote  on Thu, 16 Apr 2009 13:35:29 +0300:

AC>>> Сервер и клиент на одной железяке?
>> Более того, embeded.
VK> Потому и разница мала. Но всё равно она должна быть. Ибо постоянный
VK> prepare.

Ну препар, он ведь в основном процессор нагружает. И если проц с запасом, то 
узким горлышком будет, для обоих случаев, винт?


>> Кстати, я правильно помню, что версия _всей_ записи создается даже при
>> холостом апдейте или апдейте теми же данными? (записи там оч.
>> развесистые)

VK> Создаётся дельта. Но если ты будешь делать более одного апдейта в
VK> той же тр-ции, то второй апдейт создаст полную бекверсию. Читай журнал
VK> ibdeveloper (не мурзилка)

VK> Одни и теже страницы пишутся многократно. У тебя там нет повторных
VK> апдейтов одной и той же записи в одной тр-ции ?

Нет, апдейты уникальные, т.е. по одному на запись. Гм, но тогда часть 
операций у меня должна выполняться все же быстро - даже если я накатывают 
пакет апдейтов повторно, когда изменений по сути уже нет и дельта должна 
быть минимальна, то объем дисковых операций все равно зашкаливает. Или все 
же дельта не так уж и мала? Что еще там может происходить??


Журнал гляжу, сенкс.
Судя по всему no_auto_undo не сильно мне поможет, из-за промежуточных 
коммитов. По меньшей мере на практике прироста скорости нет.


--
-=Если с первого раза у вас ничего не получилось - парашютный спорт не для 
вас...=-
With best regards,  Nikolay Ponomarenko 





Re: ��� ������� - ������ isql ��� ������������� ������ � �����������

2009-04-17 Thread Nikolay Ponomarenko


Hello, Vlad!
You wrote  on Fri, 17 Apr 2009 09:13:56 +0300:

VK>>> Одни и теже страницы пишутся многократно. У тебя там нет
VK>>> повторных апдейтов одной и той же записи в одной тр-ции ?
>> Нет, апдейты уникальные, т.е. по одному на запись.
KV> Триггеры ?

На время операции деактивируются.
Кстати, а присвоение в триггере значения через new - оно как, отдельным 
апдейтом считается? В свете создания бекверсии?


>> Гм, но тогда часть операций у меня должна выполняться все же быстро -
>> даже если я накатывают пакет апдейтов повторно, когда изменений по сути
>> уже нет и дельта должна быть минимальна, то объем дисковых операций все
>> равно зашкаливает. Или все же дельта не так уж и мала? Что еще там может
>> происходить??

KV> Сборка мусора ? Убери промежуточные коммиты, сравни

Без них незначительно дольше, после первых 100тыс апдетов замедление.

Но выяснилось еще одна вещь, спасибо коллеге - если базу прогнать через 
рестор, то скорость возрастает в три раза, 200тыс апдетов за 1мин.


Хотя все равно:
 - не понятно почему столько операций записи(для фрагментированной бд по 
идее просто они дольше должны быть?)

 - на практике не поможет, т.к. к базам клиентов не добраться для b/r :(

--
-=Проблема не в том могут ли машины думать, а в том - делают ли это люди? 
(с)B. F. Skinner=-
With best regards,  Nikolay Ponomarenko 





Re: ��� ������� - ������ isql ��� ������������� ������ � �����������

2009-04-17 Thread Nikolay Ponomarenko


Hello, WildSery!
You wrote  on Fri, 17 Apr 2009 19:06:14 +0400:

>> да, вдруг у кого будут мысли, как можно ускорить "построчный" апдейт
>> 200тыс записей - сейчас это порядка 3-4 минут на 50мб/с винте. Почему-то
>> очень хочется, что бы это не было теоретическим пределом скорости :
>> FB 2.1

W> На ембедед - никак. Иначе Execute Block бы помог.

А как EB мог бы помочь? Несколько раз встречал упоминание, но так и не понял 
в чем теоретически можно выйграть, если все через отпрепаренный запрос 
делается?


W> А вот тыща записей/сек - маловато. Апдейт по PK?

Нет, но по альтернативному композитному ключу из двух полей. Значимой 
разницы с апдейтом по ПК не заметил.


W> FW выключен?

Включен, решение тиражируемое, надежность все ж превалирует над скоростью.

--
-=А на смайликах она симпатичнее была...=-
With best regards,  Nikolay Ponomarenko 





Re: ��� ������� - ������ isql ��� ������������� ������ � �����������

2009-04-17 Thread Nikolay Ponomarenko


Hello, Vlad!
You wrote  on Fri, 17 Apr 2009 21:44:44 +0300:

>>> А как EB мог бы помочь? Несколько раз встречал упоминание, но так и не
>>> понял в чем теоретически можно выйграть, если все через отпрепаренный
>>> запрос делается?
>> По сети кидается одним пакетом. Нет обмена туда-сюда.
VK> Именно.

И это выгоднее чем отпрепаренный запрос? Т.е. сеть становится настолько 
узким местом??

(ведь в EB мы будем "паковать" уже готовые инзерты, без параметров, так?)

--
-=Если отладка - уничтожение багов, то программирование - их создание=-
With best regards,  Nikolay Ponomarenko 





Re: 3 ����� ������� �������� � Firebird

2009-05-22 Thread Nikolay Ponomarenko


Hello, Alexey!
You wrote  on Thu, 21 May 2009 05:56:22 -0700 (PDT):

Из трудностей, с которыми столкнулся на практике

1. Система прав - возможность отделить сисдба от админа, группы и т.п. Но 
вроде активное движение в этй сторону есть. Для крупных проектов сие 
довольно критично.


2. Схемы

3. Масштабируемость по произоводительности (путем кластеризации?)

Пригодилось бы:
 Материализованные вьюхи
 Возможность создания агрегатных функциий
 Шифрация базы
 Кеш препаренных запросов на сервере
 Больше типов индексов - к примеру с гистограммой, частичные, битмап
 Возможность создания "зеркал" серверов, балансировочные прокси - год назад 
проскакивала ссылка как это PostgreSQL сделано.

 Партиционирование, тейблспейсы.

--
-=Боюсь огорчить, но результаты Вашего вскрытия...=-
With best regards,  Nikolay Ponomarenko 





Re: 3 ����� ������� �������� � Firebird

2009-05-22 Thread Nikolay Ponomarenko


Hello, Matylitski!
You wrote  on Fri, 22 May 2009 19:57:26 +0300:

MY> Конторы которые неслабые копеечки выделяют, просто покупают оракл и
MY> все. Никакая ИТ служба в здравом уме при достаточном финансировании не
MY> станет связываться с open source проектом неизвестного статуса.

Спорное утверждение - тот же Skype вот не покупал, а "допилил" PostgreSQL :)
Хотя конечно жизненное :))

--
-=Для того, чтобы слова не расходились с делом, надо молчать и ни_рена не 
делать=-
With best regards,  Nikolay Ponomarenko 





Re: 3 ����� ������� �������� � Firebird

2009-05-22 Thread Nikolay Ponomarenko


Hello, Oleg!
You wrote  on Fri, 22 May 2009 21:51:25 +0400:


>> ... балансировочные прокси - год назад проскакивала ссылка как это
>> PostgreSQL сделано.
OM> можно подробней, что есть "балансировочные прокси" ?

Уж не знаю, насколько правилен сам термин, но имеется ввиду некий 
промежуточный софт, который сможет по какому-либо алгоритму, раскидывать 
пользовательские запросы/транзакции/коннекты по разным физическим серверам.


А если пишушие транзакции будут не раскидывать, а согласованно 
дублироваться, то уже и кластер(один из видов) может выйти :)


ЕМНИП несколько вариантов чего-то подобного есть у Постгреса, никак статью 
на рсусском с какой-то из конференций не найду.


--
-="Интеллигенция - это специфическая группа, объединяемая идейностью своих 
задач и беспочвенностью своих идей" - Г.Федотов.=-
With best regards,  Nikolay Ponomarenko 





Re: 3 ����� ������� �������� � Firebird

2009-05-25 Thread Nikolay Ponomarenko


Hello, Roman!
You wrote  on Fri, 22 May 2009 20:50:05 +0200:

RR> Этот вариант с Firebird уже давно работает на базе C-JDBC (сам лично
RR> проверял).

А с транзакциями оно как разбирается? Двухфазный коммит?

--
-=Если отладка - уничтожение багов, то программирование - их создание=-
With best regards,  Nikolay Ponomarenko 





Re: 3 ����� ������� �������� � Firebird

2009-05-25 Thread Nikolay Ponomarenko


Hello, Дмитрий!
You wrote  on Sat, 23 May 2009 11:43:00 +0400:


>> Непосредственно контора не перечисляла (если что, Коваленко Дима
>> поправит) ничего.
KD> А я тут при чем?

Имелся ввиду твой тезка, который киевский Дима Коваленко :)

--
-=Женщина с красивыми зубами все находит смешным.=-
With best regards,  Nikolay Ponomarenko 





Re: ����������� �������� �������

2009-05-25 Thread Nikolay Ponomarenko


Hello, Andrei!
You wrote  on Sun, 24 May 2009 07:25:36 -0700 (PDT):

 A> 1) действительно ли оптимизация такого рода присутствует в Фб 2.5 ?

По собственному опыту, после оптимизации Владом в 2.1 , на нашем проекте, 
получилось ускорение работы по узкому каналу(128кбит) на 30-40%. Но там был 
большой объем мелких и частых запросов(динамическое дерево строилось).


На фетче большого объема записей ускорения, афаик, и не должно было быть.

--
-=Отелло рассвирипело и задушило Дездемону.=-
With best regards,  Nikolay Ponomarenko 





Re: ������������ Firebird

2009-05-25 Thread Nikolay Ponomarenko


Hello, Oleg!
You wrote  on Sat, 23 May 2009 20:42:37 +0400:

OM> P.S. вот непойму повального увлечения "одминов" антивирусами. Оборонять
OM> надо внешний периметр. Гейты, почтовые сервера... ну ладно, еще машины
OM> куда юзер может флэшку засунуть. Но сервер СУБД, закрытый на ключ в
OM> шкафу, который никакой другой функции не выполняет?

Учитывая характер последних вирусов, того же Конфликера, я свое отношение к 
антивирусам изменил. Трачу лишнее время и самостоятельно настраиваю 
исключения.


Допускаю, что в при грамотных админах и сетевой инфраструктуре можно от 
антивируса отказываться, но последнее мне встретилось только раз в жизни :)


PS однажды потратил день, пытаясь найти причину плавающей ошибки в 
собственном коде, где шла активная работа с файлами. Решением оказалось 
отключение KAV для своего процесса - что уж он там делал не мого 
представить, но валилось все на ровном месте.


--
-=Мы не из тех, кто слаб или боится - мы из тех, кого �...@# догонишь=-
With best regards,  Nikolay Ponomarenko 





Re: ������� - �������� ����� :)

2009-06-05 Thread Nikolay Ponomarenko


Hello, Alexey!
You wrote  on Fri, 5 Jun 2009 06:08:33 -0700 (PDT):

AK> У кого (своя или клиентская, без разницы) какая самая большая база
AK> есть, на чем крутится (сколько RAM, процов/ядер и какая ось, ну и что
AK> база делает)?

50Гиг, FB 1.5 Классик
Win2003, 4Гб, 4х2Гц Xeon
База обеспечивающая работу фармацевтического издательства(внутриофисная 
база, источник данных для тиражируемых продуктов...)


--
-=Жизнь как телеграмма, - короткая и с ошибками=-
With best regards,  Nikolay Ponomarenko 





Re: ������������ Firebird

2009-06-12 Thread Nikolay Ponomarenko


Hello, Michael!
You wrote  on Fri, 12 Jun 2009 12:34:29 -0700 (PDT):

MM> характер последних вирусов, того же Конфликера, я свое отношение к
>> антивирусам изменил. Трачу лишнее время и самостоятельно настраиваю
>> исключения.
MM> А чего, службу Server отключить не судьба? Или нужно обязательно
MM> светить на весь мир административными шарами? :)

С учетом того, что ее функционал нами используется (в очередной раз сдуру 
решил положиться на технологии от МС) - то видимо не судьба.


MM> Антивирусы - зло. Не пользуюсь ими уже много лет ни на домашнем, ни на
MM> офисных компьютерах.

Как переберешься в офис, и увидишь, что творится в сети (к примеру пароль 
доменного админа - 123) - полюбишь и оценишь.


--
-=Вегетарианцы не едят животных. Эти мерзавцы их объедают.=-
With best regards,  Nikolay Ponomarenko 





���������� ������� �� � 2.1

2009-08-26 Thread Nikolay Ponomarenko


Hello, All!

Перестал почему-то работать поиск по группе, посему возможно повторяюсь, но:

Напомните плз, менялось ли что-то в плане более компактного хранения данных 
при сменах одс в сравнении с 1.5? Коллеги отресторили 60гиговую базу на 1.5 
и на 2.1 - размер во втором случае меньше метров на 300.


С чем это может быть связано?

--
-=Меняю скатерть самобранку на аналогичную простыню.=-
With best regards,  Nikolay Ponomarenko 





����� �� ������ gmane.comp.db.firebird.russian

2009-09-03 Thread Nikolay Ponomarenko


Hello, All!

Коллеги, а у кого-нибудь получается воспользоваться родным поиском гугла по 
нашей группе?
На любые запросы - пустой результат. Такое впечатление что поиск по 
сообщениям ранее чем июльские отсутствует :(


Например:
https://groups.google.com/group/ru-firebird/search?group=ru-firebird&q=%D1%80%D0%BE%D0%BB%D1%8C&qt_g=Search+this+group

--
-=Глупость - это не отсутствие ума, это такой ум=-
With best regards,  Nikolay Ponomarenko 





��� ��������� ������������ ���� tpc-c?

2009-09-14 Thread Nikolay Ponomarenko

Hello, All!

Коллеги тестировали новый сервер, а точнее его дисковую подсистему(находили 
оптимальное соотношение размера страйпа и кластера файловой системы).
IOMeter показал оптимальное соотношение, для случайных чтений/записи 16кб 
кусков - максимальный размер страйпа(256к) и кластера(64к), порядка 
2500-2600 IOPS.

(RAID10, 6 дисков)

Посоветовал попробовать задействовать для этого tpc-c тест. Столнулись с 
рядом проблем:


1. Сайт http://ibdeveloper.com/tests/tpc-c/ уже несколько дней помечен как 
зараженный, что не останавливает, но волнует :)


2. Батники http://www.ibdeveloper.com/download/TPCCKIT.zip теста требуют 
легкой доработки напильником(несколько опечаток) - мелких, но сходу не 
запустить :)

Дифф в аттаче.

3. Странная деградация производительности к концу теста - если начинаем с 
3500-4000 операций в секунду, то к концу - это уже 800-900. Это так и должно 
быть?
В итоге среднее значение для сервера 1500. В логе куча конфликтов - так и 
должно быть?

Terminal 1 (thread 4032) 'new order' transaction failure, SQL CODE = -913
deadlock
update conflicts with concurrent update
concurrent transaction number is 277159
At procedure 'NEWORD2' line: 72, col: 3

4. На результат почти не влияет изменение конфигурации рейда:
6 дисков в RAID10 - TPC-C Throughput: 1100 - 1200 tpmC (IOMeter - 2600)
8 дисков в RAID0 - TPC-C Throughput: 1100-1200 tpmC (IOMeter - 4600)
Т.е. все результаты tpc-c крутяться в диапазоне 1100 - 1200, вне зависимости 
от конфигурации рейда, размера страйпа и т.п. В то время как синтетический 
тест IOMeter разницу показывает, и в некоторых случая значительную.


Настройки теста - те, что идут по умолчанию(кроме страницы базы - поставлена 
16к). Во время теста загрузка процессоров минимальна.


В чем может быть причина таких неоднозначных результатов? Должно ли быть 
столько дедлоков?

Есть ли где описание, как можно трактовать полученные в логе результаты?
Правильно ли я понимаю, что tpc-c - это по сути тестирование дисковой 
подсистемы? Если да, то почему изменение кол-ва дисков, изменение 
конфигурации рейда почти не влияют на результат?


Ежели нужно и кому то интересно можем выложить логи и иную необходимую 
информацию.



Всякие технические данные:
FB 2.1 Classic
Windows 2008
NTFS
HP ProLiant DL580 G5
 4 6-Core Processors Intel Xeon X7460  (2.67 GHz, 16MB cache)
 16GB memory
HP Smart Array  P800 Controller
300 GB 15K SAS Drive

--
-=Люди, которые думают, что они знают все на свете, раздражают нас, людей, 
которые действительно все на свете знают.=-
With best regards,  Nikolay Ponomarenko 


fb_tpc-c.patch
Description: Binary data


Re: ��� ��������� ������������ ���� tpc-c?

2009-09-14 Thread Nikolay Ponomarenko


Hello, Vlad!
You wrote  on Mon, 14 Sep 2009 15:24:29 +0300:

>> Батники http://www.ibdeveloper.com/download/TPCCKIT.zip теста требуют 
легкой доработки

KV> Старое там всё очень, и глючное.
KV> Древние скрипты. Я чуть переделывал использование индексов в одном
KV> месте. Как в оригинале - тормозит с увеличением кол-ва данных.
KV> Да ещё и со старыми багами
KV> Дедлоков быть не должно, это бага в tpcc.exe, давно исправленная
KV> мною

А где есть чего-нить посвежее?
Может на firebirdsql.org опубликовать, пользительная ведь штука...

>> Есть ли где описание, как можно трактовать полученные в логе результаты?
KV> Смотри на tpmC.

А вот тогда, когда в конфе проскакивала ссылка и праглашение к потестить - 
кто-нить запускал его? Какие цифры у кого получались?


>> Всякие технические данные:
>> FB 2.1 Classic
KV> Нет такой версии

2.1.3

>> подсистемы? Если да, то почему изменение кол-ва дисков, изменение
>> конфигурации рейда почти не влияют на результат?
>>  16GB memory
KV> БД кешируется файловой системой, то тестируем память, а не диск.
KV> Однозначно вся БД в память влезла. Выключи файловый кеш, если
KV> хочешь напрячь свой RAID ;)

База там действительно не большая, 2 гига.
Но - загрузка процов минимальна, и по наблюдениям в 
http://www.iarsn.com/taskinfo.html FileIO был сравним с текущим, рабочим - 
50-70Мб/с. Да и 1200 транзакций в сек. маловато кажется, если все в памяти 
:-/
Конечно 1000 дисков против 8, но 
http://www.tpc.org/tpcc/results/tpcc_result_detail.asp?id=109012001 - 600тыс


Может с настройками теста нужно что-то менять - типа 30 терминалов и 
загрузить не могут в достаточной мере?


Можно ли как-то заполучить рабочую версию теста - попробуем как-нить ночью 
прогнать с отключением кеша.


--
-=Мутантами не рождаются, мутантами становятся (с) Т.Д. Мичурин=-
With best regards,  Nikolay Ponomarenko 





on Linux, Firebird is very slow!!

2009-11-09 Thread Nikolay Ponomarenko


Hello, All!

Встретилось сравнение FB, MySQL и PostgreSQL
http://docs.google.com/present/view?id=ddzwj4jw_121hjss9jgq
http://firebirdsurgeon.blogspot.com/2009/11/firebird-25-benchmark-firebird-shows.html

Сабж - оттуда.

Интересно, с чем может быть связано данное утверждение? Есть ли для него 
вообще какие основания?
(в свете обсуждения в devel косяков с памятью на некоторых моделях 
процессоров Intel)


--
-=Если женщина злится, значит она не только неправа, но и понимает это.=-
With best regards,  Nikolay Ponomarenko 





Re: ���� � ������������� - ���������������� �����

2010-01-28 Thread Nikolay Ponomarenko

Hello, Dmitri!
You wrote  on Thu, 28 Jan 2010 14:38:38 +0300:

>> Основная процедура, RDB$RELATIONS_SEL вполне себе фильтруется условием

DK> Николай, нельзя называть свои объекты с префиксом RDB$.
DK> Вернее можно, но ничего хорошего из этого не получится.
DK> Системной Ваша процедура не станет, да и не должна.

Ох блин, скока официала :)
Дмитрий, думаю что для тестовой процедуры, созданной для визуализации идеи 
над системной таблицей покатит :))


--
-=умный программист пишет тупым кодом гениальные вещи а не наоборот...=-
With best regards,  Nikolay Ponomarenko 





Re: ���� � ������������� - ���������������� �����

2010-01-28 Thread Nikolay Ponomarenko

Hello, Dmitry!
You wrote  on Thu, 28 Jan 2010 14:05:29 +0300:

>> Уж не знаю, правильно ли назвал сообщение, но встретилась задача
>> искуственно "затупить" оптимизатор.
DY> Версия ФБ какая?

2.1.2.18118

>> К селекстивной процедуре нужно приджойнить еще одну, но тяжелую.
>> Основная процедура, RDB$RELATIONS_SEL вполне себе фильтруется условием
>> R.RDB$RELATION_ID < 10, допустим до 2-х записей.
>>
>> Но сервер, логично, об этом не знает, и накладывает ограничение уже
>> после слияния потоков.

DY> Ничего логичного тут не вижу. Должен накладывать до слияния.
DY> Или надо гарантированно работающий на всех версиях?

Интерес скорее академический - есть ли какой-то подход(хинт?), что бы 
вручную, но дешево(т.е. не сортировки и агрегации) по производительности и 
дальнейшим косякам(skip 0) указать, что мол данный кусок - это уже поток, и 
внутрь него ничего доклеивать не нужно?

Или генеральная линия такова, что сим должен ведать оптимизатор?

--
-=Все девушки такие красивые, красивые... а потом оборачиваются.=-
With best regards,  Nikolay Ponomarenko 





Re: ���� � ������������� - ���������������� �����

2010-01-28 Thread Nikolay Ponomarenko

Hello, Dmitry!
You wrote  on Thu, 28 Jan 2010 16:27:37 +0300:

>> Интерес скорее академический - есть ли какой-то подход(хинт?), что бы
>> вручную, но дешево(т.е. не сортировки и агрегации) по производительности
>> и дальнейшим косякам(skip 0) указать, что мол данный кусок - это уже
>> поток, и внутрь него ничего доклеивать не нужно?

DY> Union all можно еще попробовать. Но и в него, и в агрегацию все-таки
DY> можно доклеивать в ряде случаев.

Ясно, пасиба.

>> Или генеральная линия такова, что сим должен ведать оптимизатор?
DY> Именно.

Проверил на снапшоте 2.5 и 3.0 - вроде поведение такое же, лишние чтения.
Оформил как смог - http://tracker.firebirdsql.org/browse/CORE-2832

--
-=Все труднее встретить вежливого человека, который ничего не хочет вам 
продать.=-
With best regards,  Nikolay Ponomarenko 





������� merge c �������������� rdb$db_key

2010-02-18 Thread Nikolay Ponomarenko

Hello, All!

Вроде где-то мелькало описание чего-то подобного, но по трекеру найти не 
удалось.



При работе нижепреведенного merge по rdb$db_key происходит значительное(в 
десятки/сотни раз) замедление по сравнению с работой по PK, при активным 
пожиранием процессорного времени.


При попытке чистого повтора выяснилась следующая закономерность - чем больше 
кол-во полей в таблице, тем больше разница в скорости. На оригинальной, 
рабочей таблице, с 6 полями, разница в порядки. На тестовой, с двумя 
полями - 2,3 раза.



 MERGE INTO big_table t
 USING
 (
   SELECT
 ID,
 RDB$DB_KEY AS MAIN_DB_KEY
   FROM big_table t
 ) RD
 ON (t.RDB$DB_KEY = RD.MAIN_DB_KEY)
--  ON (t.ID = RD.ID)
 WHEN MATCHED THEN
   UPDATE SET t.VAL = 0;


Firebird 2.1.3.18185 CS
Firebird 2.5 RC2 SS

Это известная проблема, или стоит проверить на снапшотах?

--
-=Когда наступает завтра, то вчера становится лучше (с) С.Янковский=-
With best regards,  Nikolay Ponomarenko 





Re: ������� merge c �������������� rdb$db_key

2010-02-19 Thread Nikolay Ponomarenko

Hello, Dmitry!
You wrote  on Thu, 18 Feb 2010 18:33:43 +0300:

DY> Насколько я понимаю, MERGE тут непричем. Сервер не умеет использовать
DY> DBKEY при джойнах.
DY> select * from big_table t, big_table rd
DY> where t.RDB$DB_KEY = RD.RDB$DB_KEY

О, действительно.
Я почему-то не подумал что merge во что-то разворачивается :-(


DY> Что-то похожее в трекере я припоминаю, но сходу тоже найти не смог.

В коментариях что-то о том же вроде
http://tracker.firebirdsql.org/browse/CORE-1295


--
-=корабли в бутылках делают гинекологи на пенсии=-
With best regards,  Nikolay Ponomarenko 





NNTP ������� fb-devel

2010-02-19 Thread Nikolay Ponomarenko

Hello, All!

Раз news.atkin.com лежит(это ведь не только у меня?) - может сделать зеркало 
на gmane.org?

Но для регистрации там нужна воля владельца оригинального списка рассылки...

Или может где-то уже есть что-то nntp-шное, готовое?

--
-=Чтобы понять рекурсию, надо понять рекурсию=-
With best regards,  Nikolay Ponomarenko 





Re: NNTP ������� fb-devel

2010-02-24 Thread Nikolay Ponomarenko

Hello, Vladimir!
You wrote  on Tue, 23 Feb 2010 19:00:16 +0300:

>> Раз news.atkin.com лежит(это ведь не только у меня?) >> Или может где-то 
уже есть что-то nntp-шное, готовое?

VA>nntp://ibexpert.info/sourceforge.firebird-devel подойдёт?

Благодарствую!
В вебе зело неудобно читать :(

--
-=Хотите испытать неописуемый восторг - проедьте офисным креслом по пакетику 
с пупырышками=-
With best regards,  Nikolay Ponomarenko 





Re: ������� ����� ��������� � ����������� ���������

2010-02-25 Thread Nikolay Ponomarenko

Hello, Dmitri!
You wrote  on Thu, 25 Feb 2010 18:19:00 +0300:

>> (http://groups.google.com/group/ru-firebird/browse_frm/thread/b5384c2c3a
>> 73b71e) и недавней статье о террабайтной базе, значимого, в практической

DK> известно, что при prepare для определения кардинальности таблицы
DK> сервер сканирует pointer pages таблицы для определения кол-ва
DK> страниц, занимаемых таблицей.
DK> Еманов сказал что попробует каким-то образом это поправить,
DK> или что подумает над этим.

Да, эта проблема известна, ее обсуждали еще по приведенной ссылке.
Интересен уже сам доступ к данным, есть ли разница, к примеру при доступе по 
PK для 100 тысячной таблицы и для миллиардной?


Быстрый(т.е. не шибко достоверный) тест (джойн справочника с таблицей 
фактов) показал что время выборки _одной_ записи различается:


select count(*) from dict_table t
join giant_table g on g.id_dict = t.id_dict
-- join middle_table g on g.id_dict = t.id_dict

понятно, что пример не чистый и влиять может куча факторов. Просто 
интересно, есть ли смысл продолжать что-то тестить, или действительно, есть 
какие-то доп. накладаные расходы при работе(пусть просто при чтении) со 
свехбольшими таблицами?


--
-=Я привык быть пунктуальным, хотя это часто обрекает меня на одиночество.=-
With best regards,  Nikolay Ponomarenko 





Re: ������� ����� ��������� � ����������� ���������

2010-02-25 Thread Nikolay Ponomarenko

Hello, Alexey!
You wrote  on Thu, 25 Feb 2010 19:02:30 +0300:

AP> Ещё я слышал жалобы что первый коннект к большой базе долго длится. Сам
AP> не проверял.

О таком не слышал, к 60-ти гиговой базе без проблем коннектимся :)
Емнип и при коннекте к базе с двух миллиардной таблицей тормозов не 
наблюдалось.


--
-=Случай - псевдоним Бога,когда он не желает подписываться собственным 
именем.=-
With best regards,  Nikolay Ponomarenko 





��������� ����� - MindTheBird!

2010-03-01 Thread Nikolay Ponomarenko

Hello, All!

Уж не знаю почему обходят вниманием эту конфу, наследницу родоначальной 
su.dbms.interbase, но к выходу 2.5 запускается проект 
http://www.mindthebird.com, цель которого максимально громко и широко 
осветить сие событие.


Программа минимум - повесить у себя баннер, а как максимум - можно выйграть 
500$ в конкурсе на лучшую работу с логотипом ФБ.

http://pnv82.blogspot.com/2010/03/mindthebird.html

PS или все кто здесь остался - мониторят англоязычные источники?

PSS уж не знаю, нужен ли перевод на русский - но в случае необходимости могу 
поучаствовать


--
-=Брюки важнее жены, потому что существует немало мест, куда можно пойти без 
жены=-
With best regards,  Nikolay Ponomarenko 





Re: ������ ���������� ����������� �� Firebird.

2010-04-09 Thread Nikolay Ponomarenko

Hello, All!
You wrote  on Mon, 01 Mar 2010 14:59:44 +0300:

DK> 23 апреля 2010 года в г. Днепропетровске компания Гроссби и
DK> http://www.grossbee.com/regform.php3

Из киевлян кто собирается ехать?
2 человека уже есть...

--
-=Первый Закон Стиральной Машинки - все белье оказывается в пододеяльнике=-
With best regards,  Nikolay Ponomarenko 





--
To unsubscribe, reply using "remove me" as the subject.


Re: ��������� ����� :((

2010-04-09 Thread Nikolay Ponomarenko

Hello, Dmitri!
You wrote  on Sat, 03 Apr 2010 02:07:41 +0400:

DK> Anton Zibrov wrote: > Частично помогло полное отключение IMON.
>> С последующим заражением компа вирусом.
>> Со всеми вытекающими.
DK> Извините, но заражение сервера, при условии что на сервере
DK> никто ничего не делает - это АХТУНГ.

По опыту - уже и не такой ахтунг. Если в локальной сети зловредный вирус, то 
вполне себе заражается нетрогаемый сервак через дыры в сетевых службах. 
Емнип какой-то из семейства Конфликеров нам много крови попортил.


Из-за этого щас периодически огребаем проблем на сборочном сервере из-за 
антивируса, но терпим :(


--
-=Хоpоший, плохой - кaкaя paзницa? Глaвное - у кого pужье=-
With best regards,  Nikolay Ponomarenko 





--
To unsubscribe, reply using "remove me" as the subject.


Re: ��������� ����� :((

2010-04-12 Thread Nikolay Ponomarenko

Hello, Sergey!
You wrote to Nikolay Ponomarenko on Fri, 9 Apr 2010 17:09:43 +0300:

>> Из-за этого щас периодически огребаем проблем на сборочном сервере
>> из-за антивируса, но терпим :(

SM> Хех, неиссякаема любовь мышей к кактусам...

Дык, а варианты?

Недавно вот Касперский выпустил очередное обновление сигнатур, которое стало 
определять все наши бинарники обновлений, за два года, как зараженные. Глядя 
на эту песню, через день-два и остальные мелкие антивирусы подтянулись.


Правда после обращения в поддержку, в течении 20 мин, у Касперского признали 
ложное срабатывание, но учитывая, что это в разных вариантах повторилось 
дважды в течении месяца...


--
-=Настоящий патриот всегда должен быть готов защитить свою страну от своего 
правительства.(c)Эдвард Эбби=-
With best regards,  Nikolay Ponomarenko 





--
To unsubscribe, reply using "remove me" as the subject.


Re: ��������� ����� :((

2010-04-12 Thread Nikolay Ponomarenko

Hello, Alex!

??>>>> Из-за этого щас периодически огребаем проблем на сборочном сервере
??>>>> из-за антивируса, но терпим :(
SM>>> Хех, неиссякаема любовь мышей к кактусам...
NP>> Дык, а варианты?
AC> Ну а нафига?
AC> (антивирус)

Еже ли клиентам уедет бинарник/инсталятор, собираемый, в частности на этом 
сервере, с вирусом - должно быть хоть какое-то обоснование, как и зачем оно 
произошло :) Или вот эти ложные срабатывания - не будь его на сервере 
рекламации мы бы уже от клиентов получили...
Если кто подскажет какой другой вариант - с удовольствием лишусь авральных 
плясок с этими резинотехническими изделиями цифровой эпохи.


Хотя мы сваливаемся в оффтоп, это действительно сборочный сервер, а не 
бд-шный. Для последнего многое очевиднее.


--
-=Ответ на вопрос, что важнее - деньги или здоровье, зависит от того, что 
именно вы потеряли.=-
With best regards,  Nikolay Ponomarenko 





--
To unsubscribe, reply using "remove me" as the subject.


Re: ��������� ������ � ����� ����������

2010-04-30 Thread Nikolay Ponomarenko

Hello, Vlad!
You wrote  on Thu, 29 Apr 2010 02:06:06 +0300:

>> Два файла: один с данными, куда записываются только реальные данные из
>> записи. Соответственно, записи получаются переменной длины. И второй
>> -- индексы (смещения) записей в первом файле.

VK> И получим жуткий random IO при чтении из второго файла.

А верно ли, что SSD накопители, буде прийдет их век, позволят не обращать 
внимания на этот (random IO) аспект?


--
-=Меня постоянно преследуют умные мысли, но я всегда быстрее=-
With best regards,  Nikolay Ponomarenko 





� ����� ������ ����� �� �������� rand?

2010-09-03 Thread Nikolay Ponomarenko

Hello, All!

Коллеги показали, на 2.1, когда запрос вида

select rand() from small_table

возвращает одинаковые(по меньшей до 3-х знаков) значения.
Повторяется только на одной машине - боевом сервере. От чего так может быть?

--
-=Вы можете делать в этой жизни все что угодно - живым из неё все равно не 
выбраться.=-
With best regards,  Nikolay Ponomarenko 





Re: � ����� ������ ����� �� �������� rand?

2010-09-03 Thread Nikolay Ponomarenko

Hello, Vlad!
You wrote  on Fri, 3 Sep 2010 12:17:28 +0300:

>> Коллеги показали, на 2.1, когда запрос вида
KV> *Точная* версия сервера где ? SS\CS где ?

2.1.3.18185 CS

>> select rand() from small_table
>> возвращает одинаковые(по меньшей до 3-х знаков) значения.
>> Повторяется только на одной машине - боевом сервере. От чего так может
>> быть?
KV> А там какой rand ? Built-in или из ib_udf ?

Ага, спасибо за пинок в верном направлении :)
Расследование показало, что во-первых из ib_udf, а во-вторых - от 1.5 (по 
каким-то причинам совместимости при переходе).


Нас всех спутал умный Эксперт :)

--
-=Горшки у нас обжигают не боги, поэтому за трещины не обессудьте.=-
With best regards,  Nikolay Ponomarenko 





Re: ������� �� � �����

2010-11-24 Thread Nikolay Ponomarenko

Hello, fraks!
You wrote  on Thu, 28 Oct 2010 19:04:49 -0700 (PDT):

>> но-но, на Коболе до сих пор написано три четверти бизнес софта во всем
>> мире.

f> Лично - ни разу не сталкивался, интерпретатора/компилятора Кобола не
f> видел и не слышал что такой есть.
f> Где эти все бизнес софты работают?

Знакомый 3-й год переписывает что-то для почты США, с кобола, на .Net. 
Начинали с винформс, впф, сейчас вроде сильверлайт глядели. Все еще 
переписывают :)


Датский Симкорп - аналогично с АПЛ на C#.

PS да, я почти месяц не проглядывал конфу :)

--
-=Женщина на корабле - это к беде. Женщина на самолете - к горячей еде и 
напиткам.=-
With best regards,  Nikolay Ponomarenko 





Request depth exceeded. Recursive definition?

2011-01-04 Thread Nikolay Ponomarenko

Hello, All!

Встретился сегодня странный баг, на 2.1.3 EmbedWin2003

Добавил в скрипт создания базы очередной индекс(вида COMPUTED BY 
(IIF(ID_MORION=0, NULL, ID_MORION))) и сборка отваливается с ниже 
приведенной ошибкой.
Комментирование этого добавленного(или предыдущего индекса ситуацию 
исправляет)

Добавление коммита - не помогает. Сборка идет через isql.

Перенос его в другое место(подальше от однотипных) проблему решает :-/

Особенности:
- создание кучи однотипных индексов по выражению подряд
- большое кол-во изменений метаданных во время сборки базы(последовательно 
нактываются скрипты 19 версий базы - т.е. и дроп, и альтеры и т.п.)


Это что-то известное? Вроде с таким текстом баги к другому относятся? Нужно 
ли пытаться сделать пример?

И что может значить "Recursive definition?" ? :)

Ошибка:
Statement failed, SQLCODE = -607
unsuccessful metadata update
-request depth exceeded. (Recursive definition?)

Кусок скрипта с индексами:
CREATE UNIQUE INDEX M_APTEKA$ID_MORION_U  ON M_APTEKA COMPUTED BY 
(IIF(ID_MORION=0, NULL, ID_MORION));

... /* всего 28 индексов*/
CREATE UNIQUE INDEX M_ADV_DEFAULT_SEARCH$ID_M_U ON M_ADV_DEFAULT_SEARCH 
COMPUTED BY (IIF(ID_MORION=0, NULL, ID_MORION));
CREATE UNIQUE INDEX M_ADV_SEARCH$ID_MORION_UON M_ADV_SEARCH 
COMPUTED BY (IIF(ID_MORION=0, NULL, ID_MORION));
CREATE UNIQUE INDEX M_ADV_SEARCH_DRUG$ID_M_UON M_ADV_SEARCH_DRUG 
COMPUTED BY (IIF(ID_MORION=0, NULL, ID_MORION));


--
-=И тогда все люди на земле будут богатыми...кроме бедных!=-
With best regards,  Nikolay Ponomarenko 





Re: Request depth exceeded. Recursive definition?

2011-01-05 Thread Nikolay Ponomarenko

Hello, Dmitry!
You wrote  on Tue, 04 Jan 2011 12:33:22 +0300:

>> Встретился сегодня странный баг, на 2.1.3 EmbedWin2003
>> Добавил в скрипт создания базы очередной индекс(вида COMPUTED BY
>> (IIF(ID_MORION=0, NULL, ID_MORION))) и сборка отваливается с ниже
>> приведенной ошибкой.

DY> Недавно исправлялось. В трекер не попало, т.к. по сути повторяет
DY> CORE-3256, только в другом месте кода. В данном случае оно не дает
DY> создать более 128 индексов по выражению без переподключения к серверу.

Ага, проверить 2.1.4 я чего-то и забыл - на нем все ок, спасибо.
Единственно что - перенос создания этого 28 индекса подряд на 9 строк 
ниже(после обычных индексов) проблему решает и без переподключения.


--
-=Мужчина - это такое существо, которое однажды вылезло из женщины и потом 
большую часть своей жизни старается залезть в неё.=-
With best regards,  Nikolay Ponomarenko 





Re: Request depth exceeded. Recursive definition?

2011-01-05 Thread Nikolay Ponomarenko

Hello, Vlad!
You wrote  on Tue, 4 Jan 2011 11:21:42 +0200:

>> Встретился сегодня странный баг, на 2.1.3 EmbedWin2003
KV> 2.1.4 и\или 2.5 не проверял ?

Сорри за беспокойство, на 2.1.4 все пашет - я почему-то думал что 2.1.3 
крайняя версия :)


>> Добавил в скрипт создания базы очередной индекс(вида COMPUTED BY
>> (IIF(ID_MORION=0, NULL, ID_MORION))) и сборка отваливается с ниже
>> приведенной ошибкой. Комментирование этого добавленного(или предыдущего
>> индекса ситуацию исправляет) Добавление коммита - не помогает. Сборка
>> идет через isql. Перенос его в другое место(подальше от однотипных)
>> проблему решает :-/
KV> Интересно

Угу, 2.1.4 решает даже если индексы подряд, а на 2.1.3 помог перенос 
стейтмента на 9 строк ниже, после обычных индексов.


На всяк случай все же пример
sql-mdo\019\mdo\01-metabase.sql
Строка 170
CREATE UNIQUE INDEX M_ADV_SEARCH_DRUG$ID_M_UON M_ADV_SEARCH_DRUG 
COMPUTED BY (IIF(ID_MORION=0, NULL, ID_MORION));

Для сборки запстить файл sql-mdo\create.cmd
http://shared.pharmbase.com.ua/temp/reqursive_defenition_example/reqursive_def_err_example.zip

--
-=Лiтайте авiалiнiями Укpаiни - нашi сво?х не збивають=-
With best regards,  Nikolay Ponomarenko 





�������� ����������� �� ��������� ��������

2011-01-19 Thread Nikolay Ponomarenko

Hello, All!

FB Embed
2.5.1.26163
2.1.4.18383

Собирается у нас база версионными скриптами вида:

INPUT '..\sql-mdo\connect.sql';
INPUT '..\sql-mdo\001\update.sql';
INPUT '..\sql-mdo\002\update.sql';
...
INPUT '..\sql-mdo\020\update.sql';
EXIT;

Т.е. огромный объем перемешанных DML и DDL в одном коннекте.
Дошли до 20-той версии и начинаем потихоньку отгребать. В предыдущий раз с 
вычисляемыми индексами, сейчас вот возникла ситуация, когда для поля таблицы 
висит зависимость от процедуры, которой давно уже нет.


Лечится тем, что скрипт создания базы разбавляется реконнектами - после 
каждой версии вставляется

INPUT '..\sql-mdo\connect.sql';

Если это что-то новое, то могу сделать пример(приватный), выслать базу.

--
-=Не держите зло, держите нежно (с) Кот Ученый=-
With best regards,  Nikolay Ponomarenko 





Re: �������� ����������� �� ��������� ��������

2011-01-20 Thread Nikolay Ponomarenko

Hello, Dmitry!
You wrote  on Wed, 19 Jan 2011 17:16:28 +0300:

>> Т.е. огромный объем перемешанных DML и DDL в одном коннекте.
>> Дошли до 20-той версии и начинаем потихоньку отгребать. В предыдущий раз
>> с вычисляемыми индексами, сейчас вот возникла ситуация, когда для поля
>> таблицы висит зависимость от процедуры, которой давно уже нет.

DY> Делай, конечно.

Сделал, выслал ссылку и описание почтой.

2All
Напомните плз, как заставить Фидолук вставлять в заголовок тип кодировки? А 
то в веб-мордах конфы показывается черти-что.  Гуглогруппа кстати совсем 
неюзабельна - тела сообщений крыжит, поиска по архиву нет :(


--
-=Не судите о человеке по его друзьям - у Иуды они были безупречны=-
With best regards,  Nikolay Ponomarenko 





Re: ������������� ����

2011-01-26 Thread Nikolay Ponomarenko

Hello, Андрей!
You wrote  on Tue, 25 Jan 2011 08:16:43 +0300:

АК> В данном случае интересует какое-то значение которое является
АК> уникальным для базы в глобальном смысле :-) Понимаю что стеб может
АК> быть, но тем не менее интересно что можно попользовать для задачи
АК> регистрации клиента по удаленке.

Угу, было бы интересно - при создании базы, куда-то пишется гуид, который 
поменять обычными/простыми/штатными средствами нельзя.

Нам бы пригодилось :)

--
-=1 января - это день, которого нет...=-
With best regards,  Nikolay Ponomarenko 





Re: ������� nbackup

2011-02-18 Thread Nikolay Ponomarenko

Hello, Viktor!
You wrote  on Fri, 14 Jan 2011 20:34:34 +0200:

VB> Вижу только что на Win2008R2 x64 свободная память забивается файловым
VB> кешем FB-процессом или тупым файловым копированием.
VB> На Win 32b этого не происходит.

В дополнение к твоему решению с http://www.uwe-sieber.de/ntcacheset_e.html:

Сегодня проскочило в новостях http://www.firebirdnews.org/?p=5463 (Firebird 
slow? Well, maybe it is Windows fault.)


So, you just moved to that new cool server, with lots of RAM, Windows and 
Firebird 64bits, but suddenly you found that Firebird performance gets worse 
and worse. When you check TaskMan, you see that 99% of the RAM is being used 
(and so, swap is going on). If you close Firebird process, RAM usage seems 
to be back to normal. Weird, uh?
First, you may think this is the common problem of Classic/SuperClassic with 
too many connections and crazy buffers value: but, you checked all the 
settings, and everything is ok.


If  this happening to you, take a look again in TaskMan (or Process 
Explorer), and check how much memory the OS Cache is consuming. If you find 
something abnormal, like if it is consuming almost all of your physical RAM, 
you should take a look at this: http://support.microsoft.com/kb/976618/en-us


Причем выходит так, что на Win2008R2 x64 проблема осталась, хотя MS убеждает 
в обратном.


Понять бы логику, почему это ограничение не встроено в саму ОС? :-/

--
-=Лучше гипс и кроватка, чем плита и оградка.=-
With best regards,  Nikolay Ponomarenko




��������� ������� - ���������� ��� ���������� ����������?

2011-02-24 Thread Nikolay Ponomarenko

Hello, All!

Хочеться узнать мнения и ощущения  уважаемой общественности по такому 
вопросу:


Необходим некоторый механизм, который выдает уникальные номера, но 
настраивается на стороне пользователя - т.е. во время работы с базой 
(например раздельные последовательности номеров по структурным 
подразделениям, которые могут появляться, удаляться).


Самый первый, классический, вариант - генераторы, но их нужно будет 
создавать на лету, т.е. DDL на рабочей базе (нагенерить 9000 генераторов 
загодя можно, но как-то не изящно :).


Второй, спасибо 2.5, таблица с номерами, и ее использование в автономных 
транзакциях (уменьшение вероятности конфликтов для длинных транзакций).


Собсно вопрос, что вам кажется более кривым? Насколько опасно создание/дроп 
генераторов на работающей базе?


ЗЫ
Дырки в нумерации и т.п. моветон можно опустить :)

--
-=Продавец Евросети продал дьяволу душу. И чехольчик.=-
With best regards,  Nikolay Ponomarenko 





Re: ��������� ������� - ���������� ��� ���������� ����������?

2011-02-24 Thread Nikolay Ponomarenko

Hello, Vadim!
You wrote  on Thu, 24 Feb 2011 14:11:15 +0500:


>> Самый первый, классический, вариант - генераторы, но их нужно будет
>> создавать на лету, т.е. DDL на рабочей базе (нагенерить 9000 генераторов
>> загодя можно, но как-то не изящно :).

VM> В FB начиная с версии 2.1 можно в процедуре склеить имя генератора на
VM> основании параметров, проверить его наличие и сгенерировать DDL запрос
VM> на его создание если его нет или запрос на получение ID

Да, как раз про это я и писал:
>> но их нужно будет  создавать на лету,

Собсно "на лету" меня немного и смущает, на загруженной-то базе.

--
-=Большинство пищевых отравлений начинается со слов: "Да хуле ему в 
холодильнике будет!?"=-
With best regards,  Nikolay Ponomarenko 





���� �� ����������� ��������� ��������� ������� �������?

2011-03-11 Thread Nikolay Ponomarenko

Hello, All!

Есть ли какая-то возможость корректно завершить работу севера (2.5), имея 
хендл его процесса?

TerminateProcess кажется нескольно рискованным.

Естественно рассматривается случай, когда сервер запущен как приложение и, к 
примеру, запущено их несколько экзепляров - т.е. FindWindow не подойдет 
(если он вообшще актуален на 2.5).


Это несколько раз обсуждалось, но общего решения вроде так и не нашли. Не 
менялось ли чего в этом плане?


--
-=История вынуждена повторяться, потому что её никто не слушает.=-
With best regards,  Nikolay Ponomarenko 





Re: ���� �� ����������� ��������� ��������� ������� �������?

2011-03-12 Thread Nikolay Ponomarenko

Hello, Slava!
You wrote  on Fri, 11 Mar 2011 16:17:14 +0300:

>> Естественно рассматривается случай, когда сервер запущен как приложение
>> и, к примеру, запущено их несколько экзепляров - т.е. FindWindow не
>> подойдет (если он вообшще актуален на 2.5).

SE> а что если найти главное окно этого процесса, а потом послать ему
SE> wm_syscommand(sc_close,..
SE> а найти перебором всех окон и поиском породившего процесса
SE> GetWindowThreadProcessId

Ага, сенкс. Небольшое копание в самом FB показало, что окно создается 
всегда, когда приложение запускается  как приложение (с параметром А, 
смотрел в srvr_w32.cpp(parse_args, WinMain)).


Отключение иконки(N) на наличие окна не влияет.

Таким образом предложенный способ подходит технически, кроме одного НО.
В режиме приложения, и при наличии коннектов, сервер не даст закрыть себя, 
без клика на диалогово окошке :(


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


window.cpp |   12 
1 files changed, 12 insertions(+), 0 deletions(-)

diff --git a/window.cpp b/window.cpp
index 5c5465f..be559b5 100644
--- a/window.cpp
+++ b/window.cpp
@@ -233,6 +233,18 @@ LRESULT CALLBACK WindowFunc(HWND hWnd, UINT message, 
WPARAM wParam, LPARAM lPara

  }
  break;

+case FB_CLOSE:
+  if (usServerFlags & SRVR_non_service)
+  {
+   if (GetPriorityClass(GetCurrentProcess()) != NORMAL_PRIORITY_CLASS)
+   {
+SetPriorityClass(GetCurrentProcess(), NORMAL_PRIORITY_CLASS);
+   }
+   fb_shutdown(0, fb_shutrsn_app_stopped);
+   //DestroyWindow(hWnd);
+  }
+  break;
+
 case WM_COMMAND:
  switch (wParam)
  {

--
-=Перхоть - это пепел кипящего разума.=-
With best regards,  Nikolay Ponomarenko 





��������� � isql FB 2.5 � ������������� �� Vista/Win7

2011-03-18 Thread Nikolay Ponomarenko

Hello, All!

В силу обстоятельств вынуждены мы работать, вкушая все прелести механизма 
UAC от Microsoft по виртуализации (а по сути запрету) записи в Program 
Files.


Много мы с эим получаем проблем, полностью осознавая неправильность подхода. 
Но пока работали.


Обновление метаданных у нас делается такой вот командой:

isql.exe -ch WIN1251 -s 3 -q -b -n -i ..\sql-mdo\020\update.sql -u SYSDBA -p 
masterkey "C:\Program Files\Morion\MDS3050\2.0\fdb\mdo.fdb" -o 
"..\log\\meta020error.txt" -m


Все работало, пока не перешли на 2.5.0, для isql.exe которого не срабатывает 
эта самая виртуализация.


Причиной оказалось явное указание requestedExecutionLevel в манифесте 

Что, по документации, отключает эту самую виртуализацию, хотя для 
вызывающего приложения она есть.

http://msdn.microsoft.com/en-us/library/bb756929.aspx

И в общем сейчас стою перед диллемой - перевести пользователей c включенным 
UAC на нормальную работу  в ближайшее время не получится (нужно обеспечить 
сохранность данных, которые уже завиртуализировались), а обновить их в 
ближайший релиз нужно.


Похоже что единственным выходом будет включение в дистрибутив патченной isql 
:-/


--
-=Взрослые не верят в Деда Мороза. Они верят прогнозам погоды и ходят на 
выборы.=-
With best regards,  Nikolay Ponomarenko 





Re: ��������� � isql FB 2.5 � ������������� �� Vista/Win7

2011-03-18 Thread Nikolay Ponomarenko

Hello, Vlad!
You wrote  on Fri, 18 Mar 2011 14:25:35 +0200:

>> Причиной оказалось явное указание requestedExecutionLevel в манифесте
>>  Что, по документации,
>> отключает эту самую виртуализацию, хотя для вызывающего приложения она
>> есть. http://msdn.microsoft.com/en-us/library/bb756929.aspx

KV> А при чём тут вызывающее приложение ? На виртуализацию оно никак не
KV> влияет.

Ну, получается что приложение работает с виртуализированной базой, а 
запускает isql - последний уже этой базы не видит. И обойти это поведение, 
если явно указан requestedExecutionLevel  похоже возможности нет.
Но тут мы сами виноваты, в качестве скриптера завязались на внешнее 
приложение (isql).


>> Похоже что единственным выходом будет включение в дистрибутив патченной
>> isql :-/
KV> а) не держать базу в "Program Files" (правильно), или

В дальнейшем так и будет, но еще нужно придумать, как перетащить тех 
клиентов, у которых базы таки "завиртуализировались".


Да и не совсем очевидно, где держать базу - в профиле - нельзя, т.к. общие 
бинарники в PF кто-то может обновить и они с базой в профиле работать уже не 
будут. Терминальные пользователи в таком случае тоже идут лесом.
Ставить куда-нить в корень системного диска - как-то некрасиво, хотя 
эффективно.


Пока склоняюсь, что Гугл с Хромом поступил проще всех - ставит все 
приложение в LocalSettings и не парит никому мозг :)


KV> в) взять isql от FB 2.1

Пока почти так и сделал - поправил ресурс у isql от 2.5.

--
-=Невыносимых людей нет, есть узкие двери.=-
With best regards,  Nikolay Ponomarenko 





Re: ��������� � isql FB 2.5 � ������������� �� Vista/Win7

2011-03-18 Thread Nikolay Ponomarenko

Hello, Vlad!
You wrote  on Fri, 18 Mar 2011 15:26:24 +0200:

KV>>> в) взять isql от FB 2.1
>> Пока почти так и сделал - поправил ресурс у isql от 2.5.
KV> Это самое худшее, что можно было сделать.
KV> Впрочем - тебе с этим жить.

Э, я встревожен :)
Чем это может грозить? (я только убрал ноду с правами из манифеста, 
депенденси оставил нетронутыми)
Т.е. в итоге получилось тоже, что было в 2.1. Мне казалось это самое 
аккуратное будет.


--
-=Дачи придумал сатана, как маленькие филиалы ада=-
With best regards,  Nikolay Ponomarenko 





������� ��� �������� ����� ��� ����� - ��� ���?

2011-03-18 Thread Nikolay Ponomarenko

Hello, All!

Показали на днях фокус, когда процедура, которая обычно выполняется час-два, 
работала 9 часов, после чего ее пришлось срубить. И повторные запуски так же 
приводили к неспешной работе при отсутствии отслеживаемой загрузки железа.


По всяческим мониторам - нагрузка проца 1-2 процента, винт 3-6мб обмен (в 
пике дает сотни).


Условия:
FB 2.5 CS, единственный коннект
Таблица 26млн без PK, из которой чистят дубли процедурой след. вида

for
 select
   max(rdb$db_key)
 ...
 group by
begin
 update where  = rdb$db_key and composite_index_field;
 delete where <> rdb$db_key and composite_index_field;
end

Пока группировка создает сортировочный файл (порядка 1гб) все нормально, 
винт/проц трудятся, а когда начинается фетч все замирает и вяло шевелится.


По косвенным свидетельствам (доступа к базе пока нет) - в тот день, когда 
проявилось, на этой базе несколько раз срубался коннект (могли зависнуть 
снапшоты?). Обычные проверки база проходит, т.е. явных ошибок нет.
И вроде как подобное поведение изредка и случайно наблюдается в похожих 
процедурах.


Каковы могут быть теоретические причины такого поведения? Я так подозреваю 
какие-то внутренние блокировки? Причастен ли к этому rdb$db_key?


Есть ли какие способы отмониторить где затык?

--
-=Оптимист - это человек, который находясь по уши в дерьме не падает духом, 
а весело и задорно булькает.=-
With best regards,  Nikolay Ponomarenko 





Re: ��������� � isql FB 2.5 � ������������� �� Vista/Win7

2011-03-19 Thread Nikolay Ponomarenko

Hello, Евгений!
You wrote  on Fri, 18 Mar 2011 17:14:15 +0300:

ЕВ> Если пользователю было все равно где лежит его БД (т.к. по виртуальному
ЕВ> пути не всякий знающий рискнет хранить, а не знающий догадается
ЕВ> искать). При обновлении перенести такие БД например в ProgramData (aka
ЕВ> "%ALLUSERSPROFILE%") уведомив об этом пользователя. Но все же лучший
ЕВ> вариант отдельный каталог в корне диска (не системного).

Ну, общий каталог не совсем универсальное решение - сервера терминалов не 
позволят это сделать.
(да, есть пользователи, которые пользуют не сетевую версию, с которой таких 
проблем нет по умолчанию, а несколько локальных).


В общем не вижу я пока иного варианта для приложения, у которого 
данные/приложение жестко связаны, как устанавливать его в профиль 
пользователя :-/


--
-=Женщина на корабле - это к беде. Женщина на самолете - к горячей еде и 
напиткам.=-
With best regards,  Nikolay Ponomarenko 





Re: ��������� ������� - ���������� ��� ���������� ����������?

2011-03-31 Thread Nikolay Ponomarenko

Hello, Konstantin!
You wrote  on Fri, 25 Mar 2011 17:36:13 +0300:

>> Необходим некоторый механизм, который выдает уникальные номера, но
>> настраивается на стороне пользователя - т.е. во время работы с базой
>> (например раздельные последовательности номеров по структурным
>> подразделениям, которые могут появляться, удаляться).

KRB> Вот такой не подойдет:
KRB> http://konstb.newmail.ru/interbase/gennum.htm

Вопросы был не столько в готовом механизме (он у нас есть, похожий на 
описанный), а в подходе - эмуляция генераторов или их создание на лету.


--
-=Живот у мужчины - это курган над погибшим героем.=-
With best regards,  Nikolay Ponomarenko 





Re: Firebird-2.5.1.26240-0_Win32 CS ������ ����� ������ �� Win2008 R2 SP1

2011-03-31 Thread Nikolay Ponomarenko

Hello, Олег!
You wrote  on Mon, 21 Mar 2011 22:30:01 +0900:

КО> Поставили 64-битную ось вместо win2003 x86 на сервер с 8GB RAM,
КО> классика), причём на это никак  не влияет параметр FileSystemCacheSize,
КО> его поставил равным 40. Память  освобождается только при отключении
КО> последнего клиента(серверный процесс  остаётся запущенным). Что можно
КО> сделать? Заранее извиняюсь, если была  подобная тема, читал 
http://support.microsoft.com/kb/976618/en-us ,


Недавно обсуждали здесь
http://pnv82.blogspot.com/2011/02/win64-firebird.html
Народу нашему, приведенный рецепт с немцами, вроде помог.

--
-=Дети нормальных людей играют с родителями в <качельки>, дети инженеров - в 
<гармонический осциллятор>.=-
With best regards,  Nikolay Ponomarenko 





Re: ������� ������ � ���� ��������!

2007-07-17 Thread Nikolay Ponomarenko

С наилучшими!

--
-=Случай - псевдоним Бога,когда он не желает подписываться собственным именем.=-
With best regards,  Nikolay Ponomarenko




Re: ������ ��� �������������� ���

2007-07-18 Thread Nikolay Ponomarenko

Hello, Makmak!
You wrote  on Wed, 18 Jul 2007 09:49:43 +0300:

 M> gbak:45499780 records restored
 M> gbak: restoring index RDB$FOREIGN483
 M> gbak: ERROR: database file appears corrupt ()
 M> gbak: ERROR: bad checksum
 M> gbak: ERROR: checksum error on database page 188089
 M> gbak: Exiting before completion due to errors
 M> Толкните мысль в правильную сторону

А как с повторяемостью?
Может битая память, etc. ?

--
-=В любом из нас спит гений. И с каждым днем все крепче=-
With best regards,  Nikolay Ponomarenko




Re: ������ ��� �������������� ���

2007-07-18 Thread Nikolay Ponomarenko

Hello, Makmak!
You wrote  on Wed, 18 Jul 2007 10:41:46 +0300:

 M> PS. Николай, ты-ж рядышком, зашел бы что-ли.
 M> Я тебе и расскажу все в лицах.,  пока эмоции бушуют :))
 M> (Пиво с меня)

Ну, я щас уже не рядышком, но зайти - запросто :)
Часикам к 17?

--
-=Убежать от взрывной волны можно. Просто надо выбегать заранее.=-
With best regards,  Nikolay Ponomarenko




Re: Firebird 2.1.0.15692 Alfa 1 � Firebird 2.1.0.16102 Beta 1

2007-07-20 Thread Nikolay Ponomarenko

Hello, Vlad!
You wrote  on Fri, 20 Jul 2007 13:58:54 +0300:


 >> Но проблема в том, то все это работает на Альфе стабильно, без проблем,
 >> а на Бетте отказывается. На выходные попробую детально посмотреть. Иещще
 >> в предыдущих беттах точно ругалось на fbclient.dll/

 HV> А я и не говорю, что нет прблемы. Но для определения, где копать,
 HV> мне нужен более-менее точный порядок действий

А не может это быть проблемой, с "ручным" редактированием типа столбца -
недавно у кого то была проблема на ресторе - тоже с датами, кажется?

--
-=лучше быть полным нулем, чем переполненным - Кот Ученый=-
With best regards,  Nikolay Ponomarenko




Re: ���������� �� firebird-limits

2007-07-20 Thread Nikolay Ponomarenko

Hello, Alex!
You wrote  on Fri, 20 Jul 2007 00:37:44 +0700:

 >> 2) В Субботу утром я еду в отпуск на Украину, так что у компа меня не
 >> будет 2 недели
 KA> как раз за 2 недели управится.

Хех, как-то генерил я базу, вернее даже таблицу из 2хмлрд записей, проверяя 
всякие
свои идеи. Генерил на сервере, запустив экспертовский генератор на своей рабочей
машине.
Так вот 4 недели без остановок (фирма в это время не работала), генерил, 159гиг 
-
конечно там были гуиды и т.п. медленные вещи, но...

Да, сделать потом с этой базой  ничего не получалось - она не архивировалась, не
копировалась  и т.п.

--
-=Великими не рождаются. Великими умирают.=-
With best regards,  Nikolay Ponomarenko




Re: ���������� �� firebird-limits

2007-07-20 Thread Nikolay Ponomarenko

Hello, Дмитирй!
You wrote  on Fri, 20 Jul 2007 07:19:08 -0700:


 >> Так вот 4 недели без остановок (фирма в это время не работала), генерил,
 >> 159гиг - конечно там были гуиды и т.п. медленные вещи, но... Да, сделать
 >> потом с этой базой  ничего не получалось - она не архивировалась,
 >> не копировалась  и т.п.
 KD> Угагага... падсталом.
 KD> А железо (операционка, для Windows - с точностью до SP) какие?

Сервер этот щас далеко, так чтоно не скажу
Помню что это какой-то из серверов нач. уровня был,
сатовское зеркало, дуальный оптерон, но SS
ОС - Win2k3, сервис пак чесс гря не помню

Больше всех меня WinRar разочаровал :(

--
-=Не говорите, что мне нужно делать, и я не буду говорить, куда вам нужно идти=-
With best regards,  Nikolay Ponomarenko




Re: ���������� �� firebird-limits

2007-07-20 Thread Nikolay Ponomarenko

Hello, Дмитрий!
You wrote  on Fri, 20 Jul 2007 08:03:07 -0700:

 KD> Железо круче того, на чем я мучал ту 15GB базу из 2004 года, про
 KD> которую я упоминал. Я, считай, на обычном десктопе с 1.5ГБ памяти и
 KD> одним винтом развлекался.

Да у меня там тест был полностью синтетический - проверить работоспособность
нескольких запросов на граничных условиях по кол-ву объектов
(не, ну не таких конечно объектов как в Липецке(c)KK :-D )

 >> Больше всех меня WinRar разочаровал :(
 KD> авторы клевых, казалось бы, вещей, не имеют представления о
 KD> потребностях реальных пацанов.

:-D
Да, это бывает часто, хотя потом, за пивом, приходим с народом к согласию, что
да, в общем случае нормально. но йопт, что ж они тут тупой перебор массива
делают, да что б им... :

--
-=Эксперт - это человек, который перестал мыслить, потому что он знает. Франк 
Райт=-
With best regards,  Nikolay Ponomarenko




Re: � ����������� �� �������� ������� ������ � ������?

2007-07-20 Thread Nikolay Ponomarenko

Hello, Alex!
You wrote to Alexey Abramov on Wed, 18 Jul 2007 17:46:59 +0400:

 AA>> ради прикола предложу такой изврат, как альтернативу
 AA>> cast((EXTRACT(month FROM D) + 1)||'-01' as date) - 1
 AC> 13-й месяц?
 AC> народ взропщет, имхо...

[на правах пост-пятницы]
Не всегда :
http://itblogs.ru/blogs/tin/archive/2007/07/20/19276.aspx

--
-=Душе грешно  без тела, как телу без сорочки=-
With best regards,  Nikolay Ponomarenko




Re: OFF FastReport

2007-07-22 Thread Nikolay Ponomarenko

Hello, Dmitry!
You wrote  on Sun, 22 Jul 2007 15:40:38 +0300:

 DL> Хотел узнать, кто-нибудь пользуется FastReport 4. Мы покупали
 DL> FastReport 3, но там столько было ошибок, что не получилось его
 DL> полноценно использовать. Да и ответы из тех. поддержки в стиле Да, Нет,
 DL> Возможно и т.д. С 4 версией что-то изменилось?
 DL> Может имеет смысл посмотреть и в сторону иного продукта ?

Мы покупали. С поддержкой коллега бодался очень долго - присылал им даже патч,
а они - ни ответа ни привета.
Правда особой альтернативы FR не нашли.

--
-=Опасайтесь людей верующих, ибо у них есть боги, которые им все прощают.=-
With best regards,  Nikolay Ponomarenko




Re: OFF: Delphi WSDL SOAP

2007-07-28 Thread Nikolay Ponomarenko

Hello, Konstantin!
You wrote  on Fri, 27 Jul 2007 12:22:08 +0400:


 >> может и будет меняться а написать код нужно так, чтобы эти его изменения
 >> на код не влияли, т.е. нужно как-то под него подстраиваться... Допустим
 KRB> А чем HTTPRIO не катит? Или ты на чем пишешь?

Если я не ошибаюсь, то Николаю не хочется строгать свой код - а для HTTPRIO
необходимо менять, по меньшей мере, интерфейсы.
Но как можно сделать такой финт не на интерпретируемых языках - я чесс гря не
представляю. Или я не правильно понял исходный пост.

--
-=Есть два способа упpавлять женщинами... Hо никто их не знает.=-
With best regards,  Nikolay Ponomarenko




Re: ������� 10-�.

2007-08-11 Thread Nikolay Ponomarenko

Hello, Dmitry!
You wrote  on Fri, 10 Aug 2007 08:04:50 -:

 >> Пи... то есть, рыппка подкралась
 >> незаметно:http://www.webpark.ru/uploads49/pod/03_podborka_5.jpg

 DF> Жесть: http://www.sql.ru/forum/actualthread.aspx?tid=461187

Не то слово:

Нужно спроектировать СУБД?
Вы мне пишите либо звоните, затем мы с Вами назначаем встречу. Во время встречи 
Вы передаёте мне техническое задание, мы с Вами
обговариваем вопросы связанные со сроками исполнения и оплатой услуги, и если 
всё нас устраивает заключаем договор.

"А также гарантировать Вам бесперебойную работу всех составляющих СУБД."


--
-=Одна голова - хоpошо, а с тyловищем лyчше=-
With best regards,  Nikolay Ponomarenko




����� ���������� ���� ������� ������������� ��������

2007-08-14 Thread Nikolay Ponomarenko
Hello, All!

http://oraclemind.blogspot.com/2007/08/blog-post.html
Расскажите, чем может быть так полезен лог транзакций, что его выносят в одно 
из ключевых преимуществ?
Только возможностью "донакатить" изменения со времени последнего бекапа? А не 
растут ли ноги его необходимости из сложности процедур
бекапа?

--
-=Деньги, кОнечнО, бОльшОе злО. Но их Отсутствие есть злО еще бОльшее!!!=-
With best regards,  Nikolay Ponomarenko




OFF/2: ���� ��� ������ �������� �����

2007-08-14 Thread Nikolay Ponomarenko

Hello, All!

Теперь ставропольская лаборатория прислала новый формат заявки на регистрацию 
препаратов.
Заявка должна быть в формате базы данных InterBase/FireBird. База данных 
состоит из двух таблиц.
http://itblogs.ru/blogs/cio_anatomy/archive/2007/08/14/19944.aspx

Похоже рассказы липецких гуру стоит подвергать цензуре, дабы не
окрепшие умы

--
-=если сто тысяч обезьян посадить за пишущие машинки - они выпьют все пиво - 
ag=-
With best regards,  Nikolay Ponomarenko




Re: ������� �������

2007-08-23 Thread Nikolay Ponomarenko

Hello, Ded!
You wrote  on Thu, 23 Aug 2007 19:18:45 +0400:

Веселый, но правдивый текст:

 Особенно хорошо тестируют сами программисты. Все тесты проходят на ура. 
Тестировать ведь нужно строго то, что закодировал, весь ваш
error handling мы в гробу видали. Вообще приличный программист с тестером даже 
за руку не здоровается. Потому как на оси эволюции
программист это человек прямоходящий, а тестер как бы питекантроп. Тестер он 
ведь сам ничего навалять не может, поэтому, чужой код и
ломает. Особенно программист нелюбит "anal testers". Это которые вьедливые, и 
прицепляются со всякой фигней.

Целью жизни для людей базы является неуемное стремление нормализовать базу до 
десятого уровня нормализации и при этом они испытывают
состояние близкое к оргазму.

В идеале кроме базы ничего не должно существовать. База есть вещь в себе и для 
себя!

http://gazeta.ru/techzone/2005/12/28_e_508171.shtml


--
-=Кто победил тот и добрый - добро ведь всегда побеждает=-
With best regards,  Nikolay Ponomarenko




Re: IbFirstAID

2007-09-09 Thread Nikolay Ponomarenko

Hello, Vlad!
You wrote  on Wed, 5 Sep 2007 10:00:43 +0300:

 >> 04.09.2007 12:20:01 ERROR: Found 6168 undefined pages.
 VK> Если это ОДС 11.1 и все 6168 undefined pages в конце БД, то это
 VK> совершенно не страшно.
 VK> Сделай бекап 0-го уровня nbackup'ом, пофикси его им же для
 VK> превращения в БД, и сравни с р-ром оригинала. Потом прогони
 VK> FirstAID на полученной копии

Влад, а можешь пару слов про низкий уровень процесса?
Nbackup их восстановит правильно или отбросит?

--
-=Лучше гипс и кроватка, чем плита и оградка.=-
With best regards,  Nikolay Ponomarenko




Re: ������� ������. �������

2007-09-19 Thread Nikolay Ponomarenko

Hello, All!
You wrote  on Wed, 19 Sep 2007 11:52:23 +0400:


 MR> 1. В чем именно удобство стартовать много транзакций в одном
 MR> соединении? 2. Чем режим 1 соединение - 2 транзакции отличаеться от
 MR> режима 2 соединения в каждом по транзакции.

Кстати, а если абстрагироваться на более высокий уровень - хотя бы самого
соединения с БД и сокета - ведь для задачи ПАРАЛЛЕЛЬНОСТИ несколько
транзакций никак не применимы - все равно ведь они будут сериализованы,
пусть даже и на транспортном уровне, хотя конечно и уменьшат время реакции.

Остается только случаи необходимости именно _транзакционности_ некоторых
псевдо-параллельных действий, так?

Кстати, а кто знает, какие еще сервера умеют несколько транзакций в одном 
коннекте?
В оракле можно что-то эмулировать автономными транзакциями, но нормальных - нет.
А как в DB2, Postgress, MySQL, Sybase SQL Server, SQL Anywhere?

--
-=При встрече на лестнице соседи произносят что-то среднее между "Добрый вечер" 
и "совсем охуели"=-
With best regards,  Nikolay Ponomarenko




Re: ������� ������. ���������

2007-09-20 Thread Nikolay Ponomarenko

Hello, Ded!
You wrote  on Thu, 20 Sep 2007 00:00:20 +0400:

 D> Идём читать букварь про одну транзакцию на коннект в многопоточных
 D> приложениях, о начальник транспортного цеха ;)

Я об этом и говорю.

 >> Остается только случаи необходимости именно _транзакционности_ некоторых
 7>> псевдо-параллельных действий, так?

 D> Нет (или может и да, что ты имел в виду под псевдо, я не въехал),
 D> остаются вопросы:
  [...]
 D> Это просто первое что пришло в голову из того, что мы имеем. Это как
 D> щастье - понимаем, что оно было, только когда его уже нет :)

Ха, удобство, да и вообще возможность, спасибо версионности, использования 
длинных
транзакций в клиентских формах конечно неоспоримо. Но по хорошему ведь, 
использование
транзакций для таких вещей есть хак и удешевление разработки - и полноценные, 
скажем так
кешированные, редакторы документов и т.п., с короткими транзакциями - лучше и 
правильнее
с точки зрения консерватории? Вот и Дима с Владом о чем-то похожем, в соседней 
ветке.

Но это конечно заявление спорное, и предыдущий мой пост больше относился к 
серверным
вещам - глядя на свои предыдущие разработки - несколько транзакций хоть и 
привычно и
удобно, хотя бы и заданием разных уровней, но на практике вполне безболезненно 
сводятся к
одной транзакции в коннекте. Вернее только так и работают, учитывая 
многопоточность.

Хотя, конечно, когда я в впервые столкнулся с однотранзакционным подходом в 
ФБ-шной
библиотеке Ruby - целостная, доселе, картина мира дала трещину :))

 D> ЗЫ Материться в приличном обществе без веской на то причины не следует
 D> даже в нецитируемой подписи.

Приношу свои извинения участникам, не обратил внимания, увлеченный темой
беседы :)

--
-=Чисто прибранная квартира - признак неисправного компьютера.=-
With best regards,  Nikolay Ponomarenko




Re: ������ �� ��������� �����

2007-09-23 Thread Nikolay Ponomarenko

Hello, Дмитрий!
You wrote  on Sun, 23 Sep 2007 18:46:24 -:

 >> Если кто еще не видел, то IB перенес обсуждение в " Компьютерные
 >> священные войны" (видно себя считает святым). И есть подозрение что
 >> моя мессага одна тоже удалена. Но на все 100% сказать не смогу, т.к.
 >> писать писал, отослал, но там не видел. Приходится переписывать.
 KD> Можно попытаться воспользоваться самомодерилкой - и перенести обратно.
 KD> Будем?

Имхо плюнуть - он вообще обсуждение воспринимает неадекватно - конструктива
от добиться невозможно. Да и продолжать в "священных войнах" неприятно...

--
-=Если отладка - уничтожение багов, то программирование - их создание=-
With best regards,  Nikolay Ponomarenko




������������� �����

2007-09-27 Thread Nikolay Ponomarenko

Hello, All!

Вроде ужесточали синтаксис запросов, а вот такое осталось:

select distinct(t.f1) from table1 t order by t.id

в каком порядке будут выданы данные? Вернее я проверил экспериментально, что не 
совсем в логичном, в сортировке учитывается
последний id для одинаковых а1.
Но Оракл с такими запросами посылает. Или я чего пропустил?

Для экспериментов:

CREATE TABLE TABLE1 (
ID  INTEGER NOT NULL,
F1  VARCHAR(10)
);

INSERT INTO TABLE1 (ID, F1) VALUES (1, 'q');
INSERT INTO TABLE1 (ID, F1) VALUES (2, 'w');
INSERT INTO TABLE1 (ID, F1) VALUES (3, 'e');
INSERT INTO TABLE1 (ID, F1) VALUES (4, 'r');
INSERT INTO TABLE1 (ID, F1) VALUES (5, 't');
INSERT INTO TABLE1 (ID, F1) VALUES (6, 'q');
INSERT INTO TABLE1 (ID, F1) VALUES (7, 'w');
COMMIT WORK;

--
-=родительский контроль - контрольная работа - контрольный пакет - контрольный 
выстрел - Кот Ученый=-
With best regards,  Nikolay Ponomarenko




Re: ������������� �����

2007-09-28 Thread Nikolay Ponomarenko

Hello, Dmitri!
You wrote  on Thu, 27 Sep 2007 18:47:09 +0400:

 >> select distinct(t.f1) from table1 t order by t.id
 >> в каком порядке будут выданы данные? Вернее я проверил экспериментально,
 >> что не совсем в логичном, в сортировке учитывается последний id для
 >> одинаковых а1.
 DK> как оно этот атрибут возьмет - зависит от того, как на диске
 DK> или в индексе легло.

Вот и говорю, неоднозначно, тобишь как бог на душу положит, ведь - часть такого
поведения убрали, а это осталось...

 DK> про сортировку по столбцу, не входящему в выборку, я уже давно говорил.
 DK> визуально определить порядок сортировки невозможно.

Ну, визуально оно и ладно, главное что бы данные были реально отсортированны.
И в случае обычного сорта по невыбираемому полю это условие выполняется, так
все ок. А вот с дистинктом...

 >> Но Оракл с такими запросами посылает. Или я чего пропустил?
 DK> как именно посылает, интересно.

Очень однозначно :))
http://ora-01791.ora-code.com/

ORA-01791: not a SELECTed expression
Cause:
There is an incorrect ORDER BY item. The query is a SELECT DISTINCT query with 
an ORDER BY clause. In this context, all ORDER BY
items must be constants, SELECT list expressions, or expressions whose operands 
are constants or SELECT list expressions.
Action:
Remove the inappropriate ORDER BY item from the SELECT list and retry the 
statement.

--
-=мы не старые, мы просто много помним=-
With best regards,  Nikolay Ponomarenko




Re: ������� �� fb

2007-09-28 Thread Nikolay Ponomarenko

Hello, All!
You wrote  on Fri, 28 Sep 2007 08:50:13 +0300:

 v> Необходимо под windows дать возможность приложению
 v> работать с кластером (пока из двух серверов) субд.

Уж не знаю в какую ветку писать, потому в корень - есть интересный
материал, с хорошими слайдами по подобному функционалу в Postgres.
(там правда еще и про сам Постгресс)
http://www.rit2007.ru/paper_view.html?id=1019

Можно договорится и использовать их теминологию :)

--
-=Эксперт - это человек который больше уже не думает; он знает.=-
With best regards,  Nikolay Ponomarenko




Re: ������������� �����

2007-09-29 Thread Nikolay Ponomarenko

Hello, Nikolay!
You wrote to Dmitri Kuzmenko on Sat, 29 Sep 2007 09:24:02 +0300:

 >>> Но Оракл с такими запросами посылает. Или я чего пропустил?
 DK>> как именно посылает, интересно.
 NP> Очень однозначно :))

Как оказалось Постгресс столь же однозначен:

ERROR: for SELECT DISTINCT, ORDER BY expressions must appear in select list
SQL state: 42P10

--
-=Человек! - это замечательно сказано, но безобразно сделано. (с) С.Янковский=-
With best regards,  Nikolay Ponomarenko




Re: ������������� �����

2007-09-29 Thread Nikolay Ponomarenko

Hello, Vlad!
You wrote  on Sat, 29 Sep 2007 16:20:35 +0300:

 >> Вроде ужесточали синтаксис запросов, а вот такое осталось:
 >> select distinct(t.f1) from table1 t order by t.id
 VK> Бага, в трекер.

Уж не знаю наскоко понятно получилось...
http://tracker.firebirdsql.org/browse/CORE-1487

--
-=если в сауне вокруг вас много обнаженных мужчин и женщин, главное - не 
потерять ориентацию - Кот Ученый=-
With best regards,  Nikolay Ponomarenko




Re: Хорошии ли такои подход?

2007-10-23 Thread Nikolay Ponomarenko

Hello, Janex!
You wrote  on Tue, 23 Oct 2007 10:18:00 +0300:


 J> Есть идея токая, что при первои нужде етого запроса, динамически
 J> гденебудь в вседоступном месте ставим FIBQuery с SQL-ом и препарим его,
 J> потом уже при следуюших нуждах уже втыкаем параметр и выполняем.

Особых проблем быть не должно.
Рекомендую вглянуть на модуль pFIBCacheQueries - пользительная вещь, и часто
используемая во внутренностях самих фибов.

--
-=Алкоголь - это наркоз, позволяющий нам перенести тяжелейшую операцию, которая 
называется жизнь=-
With best regards,  Nikolay Ponomarenko




Re: Работа с блобами

2007-10-25 Thread Nikolay Ponomarenko

Hello, Vlad!
You wrote  on Wed, 24 Oct 2007 20:09:20 +0300:

 >>> З.Ы. Блин, народ, никада !!! не вставляйте 50М записей в таблицу с
 >>> индексами...
 >> А куда их тогда вставлять???
 VK> В таблицу без индексов. Или в индексы без таблицы :-P

О, это можно считать официальным анонсом кластерных индексов? :-D


ЗЫ
или не кластерные - как называются те, которые могут не требовать
обращения к страницам данных?

--
-=Перед профессионалом ставится проблема, которую надо решить, а перед 
исполнителем - задача, которую надо выполнить=-
With best regards,  Nikolay Ponomarenko




  1   2   3   >