Re: Право исполнения процедуры во вьюхе
On Tue, 12 Sep 2006 19:59:07 +0400, Dmitry Yemanov <[EMAIL PROTECTED]> wrote: Сергей Фетискин wrote: Не было времени. Теперь проверил -- в RC4(12724) те же яйца. Вьюху пересоздавать пробовал? Этот баг известен и описан в трекере http://tracker.firebirdsql.org/browse/CORE-93 но там же указано, что он исправлен в Beta 1. Перепроверил CORE-93 - нет ошибки в RC4. Пример скрипта, который не работает у меня (в аттаче). TEST -- тестовый пользователь с единственным правом на select из вьюхи. -- Фетискин Сергей http://stella-npf.ru view_grant.sql Description: Binary data
Re[2]: Подскажите про isc_seek_blob ...
DK> Hello, Константин! DK> Константин wrote: >> То есть, насколько я понимаю, "дописать" в существующий блоб >> у меня не получиться ? Надо будет его полностью продублировать >> во вновь созданный другой блоб + допись ? >> А как насчёт обрезки блоба до заданного размера, >> такая же ситуация ? Если да - скверно DK> Версионность записей не удивляет, а версионность блобов шокирует? DK> Интересно... :-) Да нет не шокирует ... Просто не привычно что "энто" не внутрях API делаеться, а самому приходится ... А так всё понятно ... Всем спасибо ... Благодаря Вашим подсказкам уже всё работает !!! С уважением, Константин Григорьевич. ===
Re: Право исполнения процедуры во вьюхе
Сергей Фетискин wrote: Не было времени. Теперь проверил -- в RC4(12724) те же яйца. Вьюху пересоздавать пробовал? Этот баг известен и описан в трекере http://tracker.firebirdsql.org/browse/CORE-93 но там же указано, что он исправлен в Beta 1. Перепроверил CORE-93 - нет ошибки в RC4. -- Дмитрий Еманов
Re: Право исполнения процедуры во вьюхе
On Tue, 12 Sep 2006 14:16:30 +0400, Dmitry Yemanov <[EMAIL PROTECTED]> wrote: Сергей Фетискин wrote: Скажите, а было исправлено то, что не работает присвоение права исполнения процедуры на вьюху в билдах после RC2 (build 12654)? Дык проверь. Не было времени. Теперь проверил -- в RC4(12724) те же яйца. Этот баг известен и описан в трекере http://tracker.firebirdsql.org/browse/CORE-93 но там же указано, что он исправлен в Beta 1. Выходит regression? -- Фетискин Сергей http://stella-npf.ru
Re: Подскажите про isc_seek_blob ...
Hello, Valery! Valery Gruzdev wrote: Если бы update поля выглядел так: создаем пустую запись, копируем в нее все поля, кроме обновляемого, из предыдущей версии, потом вписываем обновленное поле, сохраняем - это бы тоже шокировало. собственно, а версионность это что? при update копирование записи и есть. Версионность записей, она как бы немного внутри спрятана. А у блобов кишки наружу ;-) Хотя по сути, наверное, одно и то же... угу. -- Dmitri Kouzmenko, www.ibase.ru, (495) 953-13-34
Re: Подскажите про isc_seek_blob ...
"Dmitri Kuzmenko" сообщил/сообщила в новостях следующее: Версионность записей не удивляет, а версионность блобов шокирует? Если бы update поля выглядел так: создаем пустую запись, копируем в нее все поля, кроме обновляемого, из предыдущей версии, потом вписываем обновленное поле, сохраняем - это бы тоже шокировало. Версионность записей, она как бы немного внутри спрятана. А у блобов кишки наружу ;-) Хотя по сути, наверное, одно и то же... Grue
Re: Подскажите про isc_seek_blob ...
Hello, Константин! Константин wrote: То есть, насколько я понимаю, "дописать" в существующий блоб у меня не получиться ? Надо будет его полностью продублировать во вновь созданный другой блоб + допись ? А как насчёт обрезки блоба до заданного размера, такая же ситуация ? Если да - скверно Версионность записей не удивляет, а версионность блобов шокирует? Интересно... :-) -- Dmitri Kouzmenko, www.ibase.ru, (495) 953-13-34
Re: OFF:? Фрагментация файла БД ...
К> Не не моё ... не... ты в ветках запутался. Я не у тебя спрашивал ;) -- С уважением Кочмин Александр
Re: Право исполнения процедуры во вьюхе
Сергей Фетискин wrote: Скажите, а было исправлено то, что не работает присвоение права исполнения процедуры на вьюху в билдах после RC2 (build 12654)? Дык проверь. -- Дмитрий Еманов
Re: Право исполнения процедуры во вьюхе
Sergiy S. Tkachenko wrote: Проблемы с правами на RC4 для процедур у меня тоже постоянно. У предыдущего оратора речь шла про вьюхи. Т.е. процедуре выдано права на select и reference на таблицу. Роли выдано права на execute процедуры. В списке не хватает грантования роли юзеру. Пользователь входит в систему, используя предыдущую роль, и поолучает сообщение, что нет прав на select/read из таблицы, которую использует хранимая процедура. Проверил - все работает как надо. -- Дмитрий Еманов
Re: Re[2]: Подскажите про isc_seek_blob ...
> "Константин" ... > HV> /* This enum applies to parameter "mode" in blob_lseek */ > HV> enum blob_lseek_mode {blb_seek_relative = 1, blb_seek_from_tail = 2}; > > HV> ISC_LONG (*blob_lseek) > HV> (void* hnd, ISC_USHORT mode, ISC_LONG offset); > > Спасибо не обратил внимания :( Если можно сдесь поподробней: > насколько мне видно blb_seek_relative это отностительно "текущей" > позиции, blb_seek_from_tail - относитально конца, и если > продолжить аналогию не описанный 0 - относительно начала ? Да > Или даного режима нет ? (0-го) Есть > Возвращает, насколько я увидел, не Boolean а позицию ? > Вопрос только какую ? > Текущую после перемещения > или на сколько переместил в случае неудачи ? > Можно уточнить ? Новую текущую > HV> Только GetSegment. Seek во временных блобах (а только в них > HV> можно писать) не реализован. > > Извини, но в блобах я пока "профан" ... > Что есмь "временных блобах" ? Блоб, который был создан в текущей тр-ции и ещё не закрыт > То есть, насколько я понимаю, "дописать" в существующий блоб > у меня не получиться ? Надо будет его полностью продублировать > во вновь созданный другой блоб + допись ? Да > А как насчёт обрезки блоба до заданного размера, > такая же ситуация ? Да > Если да - скверно А подумать ? -- Хорсун Влад PS Кстати - для того, чтобы seek работал, блоб должен создаваться с указанием {isc_bpb_type, isc_bpb_type_stream} в bpb. Так шта 99.9%, что ничего у тебя с seek не выйдет, увы
Re[2]: OFF:? Фрагментация файла БД ...
SST>> SST>> Dmitri Kuzmenko пишет: SST>>> SST>>> diskeeper 8-9-10 работает отлично, сбоев ни разу, SST>>> может дефрагментировать файлы in use. SST>>> SST>> Вот, а Константин не верит. SST>> AK> Я давно хотел спросить AK> http://www.trichview.ru/ AK> это твое, или однофамилец? Не не моё ... С уважением, Константин Григорьевич. ===
Re: OFF:? Фрагментация файла БД ...
SST> SST> Dmitri Kuzmenko пишет: SST>> SST>> diskeeper 8-9-10 работает отлично, сбоев ни разу, SST>> может дефрагментировать файлы in use. SST>> SST> Вот, а Константин не верит. SST> Я давно хотел спросить http://www.trichview.ru/ это твое, или однофамилец? -- С уважением Кочмин Александр
Re[2]: OFF:? Фрагментация файла БД ...
SST> Dmitri Kuzmenko пишет: >> >> diskeeper 8-9-10 работает отлично, сбоев ни разу, >> может дефрагментировать файлы in use. >> SST> Вот, а Константин не верит. Уже верю ... :) Всем громадное спасибо ... С уважением, Константин Григорьевич. ===
Re: Право исполнения процедуры во вьюхе
Проблемы с правами на RC4 для процедур у меня тоже постоянно. Т.е. процедуре выдано права на select и reference на таблицу. Роли выдано права на execute процедуры. Пользователь входит в систему, используя предыдущую роль, и поолучает сообщение, что нет прав на select/read из таблицы, которую использует хранимая процедура. Если же роли дать права на select и reference на таблицу, то всё работает. Сервер FB2 RC4.
Re: OFF:? Фрагментация файла БД ...
Dmitri Kuzmenko пишет: diskeeper 8-9-10 работает отлично, сбоев ни разу, может дефрагментировать файлы in use. Вот, а Константин не верит.
Re[2]: Подскажите про isc_seek_blob ...
>> // Seek: function: Long; cdecl; // Я не знаю входные параметры... >> >> Именно последняя строчка мне очень нужна :( HV> ibase.h : HV> /* This enum applies to parameter "mode" in blob_lseek */ HV> enum blob_lseek_mode {blb_seek_relative = 1, blb_seek_from_tail = 2}; HV> ISC_LONG (*blob_lseek) HV> (void* hnd, ISC_USHORT mode, ISC_LONG offset); Спасибо не обратил внимания :( Если можно сдесь поподробней: насколько мне видно blb_seek_relative это отностительно "текущей" позиции, blb_seek_from_tail - относитально конца, и если продолжить аналогию не описанный 0 - относительно начала ? Или даного режима нет ? (0-го) Возвращает, насколько я увидел, не Boolean а позицию ? Вопрос только какую ? Текущую после перемещения или на сколько переместил в случае неудачи ? Можно уточнить ? HV> Только GetSegment. Seek во временных блобах (а только в них HV> можно писать) не реализован. Извини, но в блобах я пока "профан" ... Что есмь "временных блобах" ? В данном случае мне нужны блобы передаваемые как параметры и переменные в SP ... пока :) То есть, насколько я понимаю, "дописать" в существующий блоб у меня не получиться ? Надо будет его полностью продублировать во вновь созданный другой блоб + допись ? А как насчёт обрезки блоба до заданного размера, такая же ситуация ? Если да - скверно С уважением, Константин Григорьевич. ===
Re: Подскажите про isc_seek_blob ...
> "Константин" ... > Читал статью http://ibase.ru/devinfo/udf_ok.htm раздел блобы > > > TBLOb = record > GetSegment: function(Handle: Pointer; Buffer: PChar; MaxLength: Long; var ReadLength: Long): WordBool; cdecl; > Handle: Pointer; // BLOb handle > SegCount, // Number of BLOb segments > MaxSegLength, // Max length of BLOb segment > TotalLength: Long; // Total BLOb length > PutSegment: procedure(Handle: Pointer; Buffer: PChar; Length: Long); cdecl; > // Seek: function: Long; cdecl; // Я не знаю входные параметры... > > Именно последняя строчка мне очень нужна :( ibase.h : /* This enum applies to parameter "mode" in blob_lseek */ enum blob_lseek_mode {blb_seek_relative = 1, blb_seek_from_tail = 2}; typedef struct blobcallback { short (*blob_get_segment) (void* hnd, ISC_UCHAR* buffer, ISC_USHORT buf_size, ISC_USHORT* result_len); void* blob_handle; ISC_LONG blob_number_segments; ISC_LONG blob_max_segment; ISC_LONG blob_total_length; void (*blob_put_segment) (void* hnd, const ISC_UCHAR* buffer, ISC_USHORT buf_size); ISC_LONG (*blob_lseek) (void* hnd, ISC_USHORT mode, ISC_LONG offset); } *BLOBCALLBACK; > Необходимо создать набор UDF для быстрой работы с массивом Int64 ... > Как всегда надо было сделать ещё вчера ... :( > > И как раз эта функция очень нужна ... > Насколько я путаю именно после вызова этой функции "Курсор" > переместится по BLOB и функции GetSegment или PutSegment, > след. за ней, считает именно начиная с этого места BLOB ? Только GetSegment. Seek во временных блобах (а только в них можно писать) не реализован. -- Хорсун Влад
Re: RH-EL-3 FirebirdSS-1.5.3 SERVER/process_packet: connection rejected for ...
Тоесть привязать к одному процессору? Сегодня, на ровном, почти гладком месте во время рестора... 4-ре последующих рестора прошли нормально. Все происходило локально. [EMAIL PROTECTED] script]# ./restore /mnt/hdc1/backup-b/2006-09-12_11.08.rar gbak: ERROR: Unable to complete network request to host "192.168.10.2". gbak: ERROR: Error reading data from the connection. gbak: ERROR: Connection reset by peer gbak: ERROR: gds_$close_blob failed gbak: Exiting before completion due to errors ./restore: line 53: 18079 Broken pipe $fbbin/gbak -user $fbuser -pas $fbpass -c -k -i "$restorepath/$restorename" "$server:$base" gbak error! fb.b.local (Client) Tue Sep 12 11:43:47 2006 /opt/firebird/bin/fbguard: bin/fbserver terminated abnormally (-1) fb.b.local (Client) Tue Sep 12 11:43:47 2006 INET/inet_error: read errno = 104 fb.b.local (Client) Tue Sep 12 11:43:47 2006 /opt/firebird/bin/fbguard: guardian starting bin/fbserver fb.b.local (Server) Tue Sep 12 11:48:04 2006 INET/inet_error: read errno = 9 Мне херовато...
Re: Подскажите про isc_seek_blob ...
К> Читал статью http://ibase.ru/devinfo/udf_ok.htm раздел блобы Вдогонку, не совсем уяснил ситуацию с записью в блоб, PutSegment, если "Курсор BLOB" находиться в "конце" существующего BLOB ? BLOB будет "расширен" ? И какое поведение если я вылезу Seek'ком за размер БЛОБА, просто интерестно exception или параметр ? Какой обработчик ставить ? С уважением, Константин Григорьевич. ===
Re: Баг в FB 2.0 RC4
Андрій Жук wrote: Наткнулся случайно Запрос select rdb$db_key from app_kontragent_s где вообще-то может быть любая select процедура валит сервер. Исправил, спасибо. -- Дмитрий Еманов
Подскажите про isc_seek_blob ...
Hi, многоуважаемый All! Читал статью http://ibase.ru/devinfo/udf_ok.htm раздел блобы TBLOb = record GetSegment: function(Handle: Pointer; Buffer: PChar; MaxLength: Long; var ReadLength: Long): WordBool; cdecl; Handle: Pointer; // BLOb handle SegCount, // Number of BLOb segments MaxSegLength, // Max length of BLOb segment TotalLength: Long; // Total BLOb length PutSegment: procedure(Handle: Pointer; Buffer: PChar; Length: Long); cdecl; // Seek: function: Long; cdecl; // Я не знаю входные параметры... Именно последняя строчка мне очень нужна :( Необходимо создать набор UDF для быстрой работы с массивом Int64 ... Как всегда надо было сделать ещё вчера ... :( И как раз эта функция очень нужна ... Насколько я путаю именно после вызова этой функции "Курсор" переместится по BLOB и функции GetSegment или PutSegment, след. за ней, считает именно начиная с этого места BLOB ? Пожалуйста, очень надо ... Просто подскажите декларацию этой ф-ции ... И кратенькое описание параметров, если не лень ... С уважением, Константин Григорьевич. ===
Баг в FB 2.0 RC4
Наткнулся случайно Запрос select rdb$db_key from app_kontragent_s где вообще-то может быть любая select процедура валит сервер.
Re: Настройка ZeBeDe
Вырва Валерий Евгеньевич пишет: Возможность открытия служебного канала обеспечивает возможность доступа по порту "11965"? Угу.
Re[2]: Настройка ZeBeDe
Здравствуйте, Андрей. Вы писали 12 сентября 2006 г., 11:40:35: > Вырва Валерий Евгеньевич пишет: > Вот выдержка из описания: > Когда связь была принята клиентом, сервер пытается открыть > еще один "служебный" канал так, чтобы клиент мог установить дальнейшие > туннели в случае необходимости. Если связь не будет принята в пределах > таймаута тогда, "служебный" канал будет закрыт, и сервер выйдет, как > только все в настоящее время активные туннели закроют свое соединение. >> ... А по таймауту сервер будет повторять коннект к клиенту или нет? > Нет, не будет. Если ему не удасться установить связь, то он дождется > закрытия существующих тонелей и закончит свою работу. Возможность открытия служебного канала обеспечивает возможность доступа по порту "11965"? >>Какое значение лучше поставить для работы в режиме ожидания, когда не >>известно будет ли коннект проги >> вообще, нужно траффик минимизировать. > По мне 30 секунд достаточно. > Не совсем корректная постановка вопроса. Связь будет всегда. В момент > ожидания усановки новых тунелий (думаю) трафика не будет вообще. > Из описания: > Отметьте, что Zebedee самостоятельно не обеспечивает механизм > координирования старта клиента и сервера, чтобы настроить "обратный" > туннель. Координацию должен обеспечивать некий "сторонний" механизм. > Т.е. клиент у нас работает постоянно (есть/нет связи), а для сервака > нужен свой гвардеец. Этим гвардейцем буду я, так как работа в там режиме будет только на момент дописания проги в Караганде (а не в Астане, где уже и так все работает). В рабочем режиме никаких каналов не понядобиться вообще. > -- >Успехов, Андрей Иванов. -- С уважением, Вырва Валерий Евгеньевич Программист ТОО "СофтИнженер" Основная контактная информация: mailto:[EMAIL PROTECTED] ICQ #: 135360950 Дополнительная контактная информация: Skype: valery1707 mailto:[EMAIL PROTECTED] GizmoProject: valery1707 Музыка: Проигрыватель выключен