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

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

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

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

Amgr после запуска агента продолжает целиком сжирать ядро

  • Автор темы dread
  • Дата начала
Статус
Закрыто для дальнейших ответов.
D

dread

Здравствуйте, есть агент, кот запускается и нормально отрабатывает, но
после завершения его работы amgr продолжает целиком сжирать ядро
другие агенты не запущены в это время.
Код:
Option Public
Option Declare
UseLSX "*lsxlc" 

Const lc_userName = "domino"
Const lc_password = "domino"
Const lc_table = "outbound_tbl"
Const lc_server = "domino"

Dim connect As LCConnection
Dim count As Long
Sub Initialize()
On Error GoTo erh
Dim s As New NotesSession
Dim db As NotesDatabase
Dim col As NotesDocumentCollection
Dim doc As NotesDocument
Dim formula As String
Dim pw As String


Set db = s.CurrentDatabase
Print "Поиск документов "		
Set col = db.Ftsearch("[ManualAssigment] = 1", 0)	
'инициализация SQL
Call Initialize_SQL()		
Set doc = col.Getfirstdocument()
Print "Старт обработки документов "		

While Not(doc Is nothing)
count = count + 1
'запуск скрипта
Call ExecSQL(doc.UniversalID,_
doc.GetItemValue("ManagerEdit")(0))
'следующий должник
If UCase(doc.GetItemValue("ManagerEdit")(0))="[OUTBOUND]" Then
Call doc.ReplaceItemValue("ManualAssigment","")
Call doc.ReplaceItemValue("PersonalWorkCount","")
Call doc.ReplaceItemValue("PersonalWork","")
Else 
pw = CStr(doc.Getitemvalue("PersonalWork")(0))
If pw <> "" Then
Call doc.ReplaceItemValue("ManualAssigment","")
Else
Call doc.ReplaceItemValue("ManualAssigment","2")
End If

End If
Call doc.ReplaceItemValue("RedialFlag","")
Call doc.ReplaceItemValue("RedialMaxdate","")
Call doc.Save(True,False)
Set doc = col.Getnextdocument(doc)
Wend 
'connect.Disconnect
Print "Обработка документов завершена обработано" , count		
Exit Sub
'Call col.Stampall("ManualAssigment","2")	
'end
erh:	
Print Error, Erl 
End
End Sub

Sub ExecSQL (id As String, Manager As String)
On Error GoTo erh
Dim fldLst As LCFieldList
Dim sql As String

Set fldLst = New LCFieldList
SQL = {select update_outbound_role('}+ID +{','} + Manager +{' ) }
'Print SQL
Call connect.Execute(SQL, fldLst)

Exit Sub
erh:	
Print "ExecSQL", Error, Erl,
End
End Sub
Sub Initialize_SQL	

Print "Установка связи с ODBC"
On Error GoTo erh
Set connect = New LCConnection("odbc2") 
connect.server = lc_server
connect.Userid = lc_userName
connect.Password = lc_password
connect.Metadata = lc_table

connect.Connect
connect.MapbyName = True

Print "Установка связи с ODBC copmlete"	

Exit Sub
erh:	
Print "Initialize_SQL", Error, Erl 
end
End Sub

использую 8.5.2FP2
 
D

dread

если энто раскоментить тоже утечка?
да

Set fldLst = New LCFieldList
Думаю стоит эту переменную убивать как ненужна становиться.
проверю, спасибо
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

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