Lotus Notes / Domino 10 > ND10: Entwicklung
C-API domino 10
#Mimi:
Also unter 11 das gleiche, der Domino 11 bleibt auch einfach stehen.
[0440:000A-0E00] HCL Domino (r) Server (64 Bit) (Release 11.0.1FP1 for Windows/64) 04.12.2020 11:25:47
--- Code: ---
############################################################
### thread 15/16: [ nAMgr: 0444: 0e44] FATAL THREAD
### FP=0xFE623FA498, PC=0x7FFD783AF7E4, SP=0xFE623FA498
### stkbase=0xFE62400000, total stksize=1048576, used stksize=23400
### EAX=0x00000004, EBX=0x00000000, ECX=0x000007b8, EDX=0x00000000
### ESI=0xFE623FA4C8, EDI=0x000007b8, CS=0x00000033, SS=0x0000002b
### DS=0x00000000, ES=0x00000000, FS=0x00000000, GS=0x00000000 Flags=0x1700000246
############################################################
[ 1] 0x7FFD783AF7E4 ntdll.ZwWaitForSingleObject+20 (10,0,0,FE623FA5B0)
[ 2] 0x7FFD743F8973 KERNELBASE.WaitForSingleObjectEx+147 (10,FE623FAC60,7FFD00000000,7b8)
@[ 3] 0x7FFD67FDD470 nnotes.OSRunExternalScript+1808 (0,0,424,0)
@[ 4] 0x7FFD67FD983C nnotes.FRTerminateWindowsResources+1532 (0,0,0,1)
@[ 5] 0x7FFD67FDB3C3 nnotes.OSFaultCleanupExt+1395 (0,7FFD68047970,FE623FFE90,FE623FBF20)
@[ 6] 0x7FFD67FDAE47 nnotes.OSFaultCleanup+23 (7FFD68047970,27BDC6CD260,FE623FB440,7FFD65F6BA2C)
@[ 7] 0x7FFD68047AF6 nnotes.OSNTUnhandledExceptionFilter+390 (FE623FBF20,FE623FFE90,FE623FBF20,FE623FBFD0)
[ 8] 0x7FFD744471DC KERNELBASE.UnhandledExceptionFilter+444 (FE00000000,7FFD784533D4,0,0)
[ 9] 0x7FFD783B820B ntdll.memset+7307 (0,FE623FBF30,FE623FCBB0,FE623FC4E8)
[10] 0x7FFD7839FD56 ntdll.__C_specific_handler+150 (0,FE623FC4D0,0,FE623FC4D0)
[11] 0x7FFD783B479F ntdll.__chkstk+287 (FE623FC4D0,0,7FFD75BABC3C,7FFD75B00000)
[12] 0x7FFD78314BEF ntdll.RtlWalkFrameChain+5311 (17ee,0,27B00000000,2)
[13] 0x7FFD783B350E ntdll.KiUserExceptionDispatcher+46 (27B00000000,7FFD6801223C,FE000000C5,7FFD00000005)
@[14] 0x7FFD67FBD0BD nnotes.CvtTIMEDATEToText+221 (27BDCACB800,0,0,18)
@[15] 0x7FFD687AED81 nnotes.ConvertTIMEDATEToText+65 (27BADD0FFF4,27BDC875AF8,FE623FD380,FE623FD330)
@[16] 0x7FFD6954A162 nnotes.LSsThread::DoCCallout+4834 (ffff,27BDCAFD1C0,7,27BDC9690F0)
@[17] 0x7FFD69548E1F nnotes.LSsThread::CProdCallFunction+399 (27BDC9690F0,FE623FDCD8,27BDCAFC500,7fff)
@[18] 0x7FFD6950FEE2 nnotes.LSsThread::NRun+9906 (27BC88019E0,FE623F0002,2230,454a49)
@[19] 0x7FFD69510871 nnotes.LSsThread::Run+449 (27BDCAFC500,27BB2309E28,0,2)
@[20] 0x7FFD694BB7A8 nnotes.LSIThread::RunInternal+104 (27BB2309E28,27BB2309E28,0,0)
@[21] 0x7FFD694BBA62 nnotes.LSIThread::RunToCompletion+386 (27BB22F5528,27BB22F5528,FE623FE040,0)
@[22] 0x7FFD694B690E nnotes.CLSIDocument::RunScript+878 (0,27BB22F3268,27BB22F6828,27BB22F3268)
@[23] 0x7FFD68745BF8 nnotes.CRawActionLotusScript::Run+648 (200,FE00000017,27BB22F6828,3656C6900000017)
@[24] 0x7FFD6873E3E7 nnotes.CRawAction::Execute+391 (27BB22F6028,0,27B00000000,0)
@[25] 0x7FFD6873A27C nnotes.CAssistant::Run+4236 (27B00000000,FE623FEF00,27BB22F5528,FE00000000)
@[26] 0x7FFD6875AC39 nnotes.AgentRun+1817 (1,27B00000000,0,27B00000010)
@[27] 0x7FFD5D648670 namgrdll.ExecConsoleAgent+320 (27B00000101,338e,27BB22F6828,27BB22F6028)
@[28] 0x7FFD67FEFF78 nnotes.ThreadWrapper+264 (0,0,0,0)
[29] 0x7FFD75B17974 KERNEL32.BaseThreadInitThunk+20 (0,0,0,0)
[30] 0x7FFD7837A271 ntdll.RtlUserThreadStart+33 (0,0,0,0)
--- Ende Code ---
#Mimi:
Update
Nach dem ich nun die Prints in den Code eingerabeitet habe und der Domino 10 weiter gecrasht ist, konnte ich die stelle ausmachen. Er bliebt immer bei der Funktion IDSCAN stehen. Komisch ist das der Server noch den Start der Funktion '++++ Function IDScan' geschrieben, dann nichts mehr. Win 64Bit ist Platform 8
--- Code: --- Private Function IDScan(ByVal fFirst As Integer, retID As Long) As Integer
If DEBUG_PRINT Then Print " ++++ Function IDScan "
Select Case Me.platform
Case 1
If DEBUG_PRINT Then Print " IDScan = W32IDScan(Me.hTable, fFirst, retID) "
IDScan = W32IDScan(Me.hTable, fFirst, retID)
Case 2
IDScan = Os2IDScan(Me.hTable, fFirst, retID)
Case 4
IDScan = LnxIDScan(Me.hTable, fFirst, retID)
Case 8:
If DEBUG_PRINT Then Print " IDScan = W64IDScan(Me.hTable64, fFirst, retID) "
IDScan = W64IDScan(Me.hTable64, fFirst, retID)
Case 9:
IDScan = L64IDScan(Me.hTable64, fFirst, retID)
End Select
If DEBUG_PRINT Then Print " ---- Function IDScan "
End Function
--- Ende Code ---
So, nun nach unzähligen Crashes und Konsistenscheck vom Server an der Datenbank läuft der Code plötzlich durch. :-: :-: :-:
Auch nach dem ich die ganzen prints nicht mehr gemacht werden.
Unter Domino 11 knallt der Server mit bravur weiter.
--- Code: ---
[14B0:0005-1698] 04.12.2020 12:59:49 Agent Manager: Agent printing: ++++ Function IDScan
[14B0:0005-1698] 04.12.2020 12:59:49 Agent Manager: Agent printing: IDScan = W64IDScan(Me.hTable64, fFirst, retID)
[14B0:0005-1698] 04.12.2020 12:59:49 Agent Manager: Agent printing: ---- Function IDScan
[14B0:0005-1698] 04.12.2020 12:59:49 Agent Manager: Agent printing: DO - Schleife Me.currentNum = 3567
[14B0:0005-1698] 04.12.2020 12:59:49 Agent Manager: Agent printing: Loop Until Me.IDScan(False, stub.currNoteID)<>1
[14B0:0005-1698] 04.12.2020 12:59:49 Agent Manager: Agent printing: ++++ Function IDScan
[14B0:0005-1698] 04.12.2020 12:59:49 Agent Manager: Agent printing: IDScan = W64IDScan(Me.hTable64, fFirst, retID)
[14B0:0005-1698] 04.12.2020 12:59:49 Agent Manager: Agent printing: ---- Function IDScan
[14B0:0005-1698] 04.12.2020 12:59:49 Agent Manager: Agent printing: DO - Schleife Me.currentNum = 3568
[14B0:0005-1698] 04.12.2020 12:59:49 Agent Manager: Agent printing: Loop Until Me.IDScan(False, stub.currNoteID)<>1
[14B0:0005-1698] 04.12.2020 12:59:49 Agent Manager: Agent printing: ++++ Function IDScan
[14B0:0005-1698] 04.12.2020 12:59:49 Agent Manager: Agent printing: IDScan = W64IDScan(Me.hTable64, fFirst, retID)
[14B0:0005-1698] 04.12.2020 12:59:49 Agent Manager: Agent printing: ---- Function IDScan
[14B0:0005-1698] 04.12.2020 12:59:49 Agent Manager: Agent printing: DO - Schleife Me.currentNum = 3569
[14B0:0005-1698] 04.12.2020 12:59:49 Agent Manager: Agent printing: Loop Until Me.IDScan(False, stub.currNoteID)<>1
[14B0:0005-1698] 04.12.2020 12:59:49 Agent Manager: Agent printing: ++++ Function IDScan
[14B0:0005-1698] 04.12.2020 12:59:49 Agent Manager: Agent printing: IDScan = W64IDScan(Me.hTable64, fFirst, retID)
[14B0:0005-1698] 04.12.2020 12:59:49 Agent Manager: Agent printing: ---- Function IDScan
[14B0:0005-1698] 04.12.2020 12:59:49 Agent Manager: Agent printing: DO - Schleife Me.currentNum = 3570
[14B0:0005-1698] 04.12.2020 12:59:49 Agent Manager: Agent printing: Loop Until Me.IDScan(False, stub.currNoteID)<>1
[14B0:0005-1698] 04.12.2020 12:59:49 Agent Manager: Agent printing: ++++ Function IDScan
[14B0:0005-1698] 04.12.2020 12:59:49 Agent Manager: Agent printing: IDScan = W64IDScan(Me.hTable64, fFirst, retID)
[14B0:0005-1698] 04.12.2020 12:59:49 Agent Manager: Agent printing: ---- Function IDScan
[14B0:0005-1698] 04.12.2020 12:59:49 Agent Manager: Agent printing: DO - Schleife Me.currentNum = 3571
[14B0:0005-1698] 04.12.2020 12:59:49 Agent Manager: Agent printing: Loop Until Me.IDScan(False, stub.currNoteID)<>1
[14B0:0005-1698] 04.12.2020 12:59:49 Agent Manager: Agent printing: ++++ Function IDScan
############################################################
### thread 15/16: [ nAMgr: 14b0: 1698] FATAL THREAD
### FP=0x4FBBFFA1D8, PC=0x7FFD783AF7E4, SP=0x4FBBFFA1D8
### stkbase=0x4FBC000000, total stksize=1048576, used stksize=24104
### EAX=0x00000004, EBX=0x00000000, ECX=0x000007a0, EDX=0x00000000
### ESI=0x4FBBFFA208, EDI=0x000007a0, CS=0x00000033, SS=0x0000002b
### DS=0x00000000, ES=0x00000000, FS=0x00000000, GS=0x00000000 Flags=0x1700000246
############################################################
[ 1] 0x7FFD783AF7E4 ntdll.ZwWaitForSingleObject+20 (10,0,0,4FBBFFA2F0)
[ 2] 0x7FFD743F8973 KERNELBASE.WaitForSingleObjectEx+147 (10,4FBBFFA9A0,7FFD00000000,7a0)
@[ 3] 0x7FFD67FDD470 nnotes.OSRunExternalScript+1808 (0,0,424,0)
@[ 4] 0x7FFD67FD983C nnotes.FRTerminateWindowsResources+1532 (0,0,0,1)
@[ 5] 0x7FFD67FDB3C3 nnotes.OSFaultCleanupExt+1395 (0,7FFD68047970,4FBBFFFBD0,4FBBFFBC60)
@[ 6] 0x7FFD67FDAE47 nnotes.OSFaultCleanup+23 (7FFD68047970,219DD1FE6C0,4FBBFFB180,7FFD65F6BA2C)
@[ 7] 0x7FFD68047AF6 nnotes.OSNTUnhandledExceptionFilter+390 (4FBBFFBC60,4FBBFFFBD0,4FBBFFBC60,7)
[ 8] 0x7FFD744471DC KERNELBASE.UnhandledExceptionFilter+444 (200000047,7FFD784533D4,0,0)
[ 9] 0x7FFD783B820B ntdll.memset+7307 (0,4FBBFFC6F0,4FBBFFC8F0,4FBBFFC228)
[10] 0x7FFD7839FD56 ntdll.__C_specific_handler+150 (0,4FBBFFC210,0,4FBBFFC210)
[11] 0x7FFD783B479F ntdll.__chkstk+287 (4FBBFFC210,0,7FFD75BABC3C,7FFD75B00000)
[12] 0x7FFD78314BEF ntdll.RtlWalkFrameChain+5311 (17ee,0,21900000000,1)
[13] 0x7FFD783B350E ntdll.KiUserExceptionDispatcher+46 (21900000000,7FFD6801223C,16320200000009A,7FFD00000005)
@[14] 0x7FFD67FBD0BD nnotes.CvtTIMEDATEToText+221 (219DD5E4560,0,0,18)
@[15] 0x7FFD687AED81 nnotes.ConvertTIMEDATEToText+65 (219B2AC0704,219DD3AF958,4FBBFFD0C0,4FBBFFD070)
@[16] 0x7FFD6954A162 nnotes.LSsThread::DoCCallout+4834 (ffff,219DD615F20,7,219DD481E50)
@[17] 0x7FFD69548E1F nnotes.LSsThread::CProdCallFunction+399 (219DD481E50,4FBBFFDA18,219DD615260,7fff)
@[18] 0x7FFD6950FEE2 nnotes.LSsThread::NRun+9906 (219C9551A20,4FBBFF0002,2270,a051d0)
@[19] 0x7FFD69510871 nnotes.LSsThread::Run+449 (219DD615260,219B70B9B28,0,2)
@[20] 0x7FFD694BB7A8 nnotes.LSIThread::RunInternal+104 (219B70B9B28,219B70B9B28,0,0)
@[21] 0x7FFD694BBA62 nnotes.LSIThread::RunToCompletion+386 (219B70A3328,219B70A3328,4FBBFFDD80,0)
@[22] 0x7FFD694B690E nnotes.CLSIDocument::RunScript+878 (0,219B70A32E8,219B70A6028,219B70A32E8)
@[23] 0x7FFD68745BF8 nnotes.CRawActionLotusScript::Run+648 (200,4F00000017,219B70A6028,3656C6900000017)
@[24] 0x7FFD6873E3E7 nnotes.CRawAction::Execute+391 (219B70A5828,0,21900000000,0)
@[25] 0x7FFD6873A27C nnotes.CAssistant::Run+4236 (21900000000,4FBBFFEC40,219B70A3328,4F00000000)
@[26] 0x7FFD6875AC39 nnotes.AgentRun+1817 (1,21900000000,0,21900000010)
@[27] 0x7FFD5E238670 namgrdll.ExecConsoleAgent+320 (2190000010B,338e,219B70A6028,219B70A5828)
@[28] 0x7FFD67FEFF78 nnotes.ThreadWrapper+264 (0,0,0,0)
[29] 0x7FFD75B17974 KERNEL32.BaseThreadInitThunk+20 (0,0,0,0)
[30] 0x7FFD7837A271 ntdll.RtlUserThreadStart+33 (0,0,0,0)
--- Ende Code ---
Leider bin ich immer noch nicht schlauer und habe ein ungutes gefühl, das System unter Domino 10 oder 11 freizugeben.
eknori:
Die crashes sind zwar ähnlich, aber doch unterschiedlich. Gemeinsam bei beiden ist die Konvertierung eines Zeitwertes und ein memory alloc kurz vor dem Crash.
Starte mal NSD im monitor mode . nsd -monitor. Dann wiederhole deinen Test. Neben den NSD ... log files findest Du im Verzeichnis nsd.notes weitere files, die geneuere Ursachen zum Fehler enthalten (können ).
Ich mache solche Sachen schon lange nicht mehr mit LS2CAPI. Entweder schreibe ich mir eine Funktion komplett in c++ und kapsel die in einer DLL oder ich verwende Java. Suche mal nach Domino JNA auf GitHub.
domino JNA hat zudem den Vorteil, dass man mit callbacks arbeiten kann. Das geht mit LS2CAPI nicht.
#Mimi:
Danke für die Tip's nsd-monitor.
Ich werde nächste Woche noch ein paar Tests machen und mir Domino JNA anschauen, im ersten Überflug hab ich gesehen das auch dort, der Zugriff auf die Deletionstubs geben sein soll.
Auf dem Domino 10 läuft der Code wohl jetzt stabil, sprich der Server bleibt nicht mehr stehen und die Agenten werden ausgeführt. Aber es wurden über das WE auch nichts getan. Das Release wird nun weiter auf Domino 9 getestet und Domino 10 erstmal ausgesetzt (unbestimmt).
Navigation
[0] Themen-Index
[*] Vorherige Sete
Zur normalen Ansicht wechseln