request synchronization error
а я все равно думаю что 1:30 это много =) тем более как я понял каждую ночь . . а про ежедневную архивацию еще сложнее, может производственого календаря в таком случае не хватает ?
да и такой обьем по сети не очень хорошо тащить, не проще на сервере выгрузить и запаковать, а там уже отправить ?
но ладно это можно в других темах обсудить по теме
хотелось бы услышать
1, кол-во строк которое не выгружалось за раз (select count(*) from procedure)
2. кол-во символов в одно строке (хочу смодулировать у себя)
3, cтроку запуска isql (типа используете ли -o -i)
да и такой обьем по сети не очень хорошо тащить, не проще на сервере выгрузить и запаковать, а там уже отправить ?
но ладно это можно в других темах обсудить по теме
хотелось бы услышать
1, кол-во строк которое не выгружалось за раз (select count(*) from procedure)
2. кол-во символов в одно строке (хочу смодулировать у себя)
3, cтроку запуска isql (типа используете ли -o -i)
Да нет с ресурсами там все гуд, на файловой системе таких ограничений нет (ext3), операционка тож нормальная - Linux RHEMerlin писал(а):Лог на сервере надо бы посмотреть. Явно не хватает какого-то ресурса на больших объёмах, а клиентское сообщение, похоже, малоинформативно говорит о следствии. Или .msg не той системы.
там на обоих серваках стоит гигабитная сеть + они в одном сегменте...да и такой обьем по сети не очень хорошо тащить, не проще на сервере выгрузить и запаковать, а там уже отправить ?
Прикольно.
Я вообще не люблю писать функции с FREE_IT, возвращаю через входной параметр всегда, пусть у сервера голова болит, как выделить и куда дальше девать память, потому есть своя DateToStr
Вот интересно, в этом случае будет забийство памяти или нет...
2 Merlin
Думается, глядя на приведённый запрос, у них всёж-таки можно оптимизировать.
Про твоё хозяйство ничего не знаю
Я вообще не люблю писать функции с FREE_IT, возвращаю через входной параметр всегда, пусть у сервера голова болит, как выделить и куда дальше девать память, потому есть своя DateToStr
Вот интересно, в этом случае будет забийство памяти или нет...
2 Merlin
Думается, глядя на приведённый запрос, у них всёж-таки можно оптимизировать.
Про твоё хозяйство ничего не знаю
Осталось ещё понять, на кой она вообще на сервере нужна... Один всё равно шедулируемые задачи по структуре мироздания положено ботом выполнять, пусть он и форматирует.WildSery писал(а):Прикольно.
Я вообще не люблю писать функции с FREE_IT, возвращаю через входной параметр всегда, пусть у сервера голова болит, как выделить и куда дальше девать память, потому есть своя DateToStr
Вот интересно, в этом случае будет забийство памяти или нет...
Да там не запрос, а схема. А после него туева хуча всякого-разного.WildSery писал(а): 2 Merlin
Думается, глядя на приведённый запрос, у них всёж-таки можно оптимизировать.
У меня-то? Да конечно можно. Перечень задач растёт, как подходим в очередной раз к тому, что расчёт заканчивается за полчаса до начала рабочего дня, объявляем коммунистический субботник и оптимизируем в очередной до приемлемого уровня. Помнится, в начале 80-х, когда преимущественно на MACRO-11 работали, был у меня приятель, который ко всем приставал - спорим на пиво, я любую твою программу сделаю на 4 байта короче. Пиво у него всегда было, нет предела совершенству. Не кодом, так структурно.WildSery писал(а): Про твоё хозяйство ничего не знаю
-
- Сообщения: 20
- Зарегистрирован: 06 апр 2005, 10:27
Задачу, которая в той процедуре является узким местом, описал в http://forum.ibase.ru/phpBB2/viewtopic.php?p=27445
Буду благодарен за любую помощь. И все наши клиенты наверное тоже.
Буду благодарен за любую помощь. И все наши клиенты наверное тоже.
-
- Сообщения: 20
- Зарегистрирован: 06 апр 2005, 10:27
Для выдачи в результат запроса даты в форматированном виде для упрощения последующей обработки видимо. Встроенного механизма для этого я не знаю, простое преобразование в строку потом тяжело разобрать. Диалект первый.Merlin писал(а): Осталось ещё понять, на кой она вообще на сервере нужна...
Туча состоит в основном из выборок из небольших таблиц по первичному ключу и логики из IF и присваиваний. О том, что действительно должно отнимать время, я рассказал в другой теме, ссылка чуть выше.Merlin писал(а): Да там не запрос, а схема. А после него туева хуча всякого-разного.
ну в принципе ты и WildSery уже все ответили, найти что всегда можно =)Голубчик, а ты объём данных и характер расчётов в этой конкретной базе/задаче представляешь? У мну еженощно 4 часа молотит расчёт статистик. Приходи, поучишь оптимизировать
в птичке пока еще не разу не сталкивался с такими обьемами, у меня базы дольше года не живут, а потом их в архив с переносом остатков.
а на оракле помнится писали процедурки которые ночами работали,
чтоб мегабос отчетик утром за секунду получил . .
-
- Сообщения: 20
- Зарегистрирован: 06 апр 2005, 10:27
В нашей реализации этих функций именно так и сделано. Но они появились позже, чем понадобились сотрудникам автора темы, потому пока там использовалась RFunc.WildSery писал(а):Прикольно.
Я вообще не люблю писать функции с FREE_IT, возвращаю через входной параметр всегда, пусть у сервера голова болит, как выделить и куда дальше девать память, потому есть своя DateToStr :)
firebird 1.0.3
приводит к этой же ошибке.
не приводит к ошибке, не смотря на то что output переменных вообще нет.
Код: Выделить всё
CREATE PROCEDURE PIPEC
as
declare variable i integer;
declare variable x integer;
begin
x=0;
while (1=1) do
begin
for select 1 from rdb$database into i do
begin
x=x+1;
end
break;
end
end
Код: Выделить всё
CREATE PROCEDURE PIPEC
as
declare variable i integer;
declare variable x integer;
begin
while (1=1) do
x=0;
begin
for select 1 from rdb$database into i do
begin
x=x+1;
-- ACHTUNG
suspend;
end
break;
end
end