Re: Вопрос для гуру

2006-02-22 Пенетрантность Konstantin R. Beliaev
Nikolay Ponomarenko wrote:

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

В ФИБ есть какой-то внутренний кэш для QueryValue, но как он работает - 
не знаю, одно время натыкался на его ошибки, когда вместо одного запроса 
выполнялся другой, совпадающий по буквам в определенных позициях :-]



Re: Вопрос для гуру

2006-02-17 Пенетрантность Konstantin R. Beliaev
Eugeney Putilin wrote:

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



Re: Вопрос для гуру

2006-02-17 Пенетрантность Serge Buzadzhy

Konstantin R. Beliaev пишет:
 Eugeney Putilin wrote:
 
 Ты можеш подготовить запрос и использовать его неоднократно в многих 
 транзакциях.
 Не очень понял, как это в FIB+ может выглядеть? Там же вроде с закрытием 
 транзакции все анпрепарится...
 
С чего ты так решил? :)

Удачи



Re: Вопрос для гуру

2006-02-17 Пенетрантность Alex Cherednichenko
Привет, [EMAIL PROTECTED]

 bM С чего ты так решил? :)
 bM Удачи

Ох, Вова, когда ж ты уже отполируешь все глюки
в этом своём JAM converter-э ?

--
With best regards, Alex Cherednichenko.

Re: Вопрос для гуру

2006-02-15 Пенетрантность Dmitry Yemanov


A K [EMAIL PROTECTED] wrote:


1) на каждый такой запрос открывать транзакцию, выполнять запрос, 
закрывать

транзакцию

или

2) иметь одну общую транзакцию только для чтения, которая будет всегда 
открыта.


Если транзакция READ COMMITTED, то (2) выгоднее с точки зрения сборки 
мусора. Если же SNAPSHOT, то вариант (1).


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


Это абсолютно нормально. Кроме того, препарирование запроса к транзакциям 
явного отношения не имеет, ты можешь сделать препаре в транзакции А, а 
выполнить в транзакции Б. Препарированные запросы относятся к коннекту, а не 
к транзакции.



--
Дмитрий Еманов




Re: Вопрос для гуру

2006-02-15 Пенетрантность Oleg LOA
A K [EMAIL PROTECTED] wrote in message news:[EMAIL PROTECTED]
 
 2) иметь одну общую транзакцию только для чтения, которая будет всегда 
 открыта.
 подготовить на ней заранее все запросы и по мере обращения к ним подставлять
 нужные параметры и выполнять эти запросы.

Вот так будет быстрее всего

Re: Вопрос для гуру

2006-02-15 Пенетрантность Oleg LOA
Nikolay Ponomarenko [EMAIL PROTECTED] wrote in message news:[EMAIL 
PROTECTED]
 ручном вызове Unprepare, при разрушении компонента выполнившего
 Prepare, при смене текста запроса.
 
 Первый два случая понятны, но вот остальные - зачем?

остальные - это:

3) разрушении компонента выполнившего Prepare
4) смене текста запроса

Что конктретно непонятно?