• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

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

    Запись на курс до 25 апреля. Получить промодоступ ...

RunOnServer ждет окончания работы агента

savl

Lotus Team
28.10.2011
2 597
310
BIT
177
Есть база архивирования, самописка. В базе содержаться документы на разные системы, в документах указываются критерии архивирования. Есть шедульный агент, который бегает по вьюхе и запускает в каждой базе агент архивации.
Есть так же в документе кнопка "Создать сейчас", по нажатию которой запускается тот же шедульный агент, но только для данного документа. В кнопке агент запускается через RunOnServer, но при нажатии клиент "подвисает". Будто ждет окончания работы архивного агента.
Подскажите, что не так? Почему клиент ожидает завершения агента?

Пояснения:
Весь дизайн подписан админ-сервером, сам запуск агента происходит на другом сервере. С правами серверов все в порядке.
У шедульного агента триггер на документы стоит None, работает каждый день.
Вызов агента архивирования для базы делаю через call ArjAgent.Runonserver(param.Noteid)
param - документ настройки архивирования, к которому агент архивирования стучится, чтобы получить критерии.
 
N

nvyush

Создайте агента с включенной галкой Run in background client thread и пускайте агента архивирования из него.
 

ToxaRat

Чёрный маг
Green Team
06.11.2007
3 332
42
BIT
0
Создайте агента с включенной галкой Run in background client thread и пускайте агента архивирования из него.
не несите фигню, для серверных агентов это не распространяется

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

akat

> В кнопке агент запускается через RunOnServer, но при нажатии клиент "подвисает". Будто ждет окончания работы архивного агента.
Все правильно, оно ждет завершения работы агента!

 
N

nvyush

Создайте агента с включенной галкой Run in background client thread и пускайте агента архивирования из него.
не несите фигню, для серверных агентов это не распространяется
Буквы читать умеете? Я не предлагаю серверному агенту включать галку Run in background client thread, я предлагаю запускать серверного агента из агента, которому эта галка выставлена, чтобы он ждал завершения работы серверного агента, а клиент мог продолжать работу. У меня это работает.
 

savl

Lotus Team
28.10.2011
2 597
310
BIT
177
не знал про второй параметр: Call notesAgent.RunOnServer( [ noteID$ ], [ IsWaitExecution ] ) да и в 8.5.3 его нет.
склоняюсь к запросу через консоль
Всем спасибо, через пару часов закрою.
 

savl

Lotus Team
28.10.2011
2 597
310
BIT
177
VladSh
Да мой английский меня подвел)))
Даже стыдно...
Выбрал решение с консольной командой.
 

VladSh

начинающий
Lotus Team
11.12.2009
1 783
157
BIT
55
Для информации.
Эта @-команда не ждёт:
Код:
@Command([AgentSetServerName]; "AGENTNAME"; @ServerName)
Но из Evaluate, к сожалению, не работает.
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!