Войти
 
 
   
 
  
Новости Notes.ру Библиотека Биржа труда Вопрос - ответ Форум Регистрация Поиск О проекте
Разделы
О Notes
Советы
Шаблоны и примеры
Литература
Презентации
 
Всё о задаче AdminP. Часть вторая   Во второй части мы завершаем рассмотрение AdminP. В ней рассмотрены запросы междоменного администрирования и способы управления функциями AdminP с помощью настроек документа сервера, команд консоли сервера, файла Notes.ini и интервалов очистки базы данных. В этой статье предполагается, что вы опытный администратор Domino и прочитали первую часть
О Notes Читать статью
 
Всё о задаче AdminP. Proxy-действия в R5 и Domino 6   Приложение к статье об административном процессе
О Notes Читать статью
 
Всё о задаче AdminP. Часть первая   Перевод классической статьи 2003-его года о задаче административного процесса (AdminP). Очень полезна для понимания работы механизма этой задачи. В первой части статьи описаны компоненты задачи AdminP, как они работают, и как их использование помогает сделать работу администратора Domino проще. Задача AdminP (сакращённо от Administration Process, Административный процесс) работает с базой административных запросов (Administration Requests, admin4.nsf)
О Notes Читать статью
 


О Notes

Главная   Библиотека   О Notes

Как определить причину падения сервера Lotus Domino. Часть четвёртая

Другие части материала: 1 - 2 - 3 - 4

Задача NSD на платформах UNIX в отличие от MS Windows журналирует только одну часть - описание стека вызова процедур. Найти интересный для анализа фрагмент сбойного процесса можно по фразам fatal, raise.raise, signal handler, abort или terminate
Ниже проиллюстрированы возможности разбора содержимого стека вызовов процедур в nsd-журнале для различных платформ. В качестве иллюстраций использованы фрагменты журналов обработки аварийной ситуации из материала Роба Гёрхарта и Элиота Гардена (Rob Gearhart/Elliott Harden) Use NSD (HND101 - Lotusphere 2006). Обращает внимание отличное от остальных направление записи содержимого стека в журнале для платформы iSeries.



Фрагмент nsd-журнала (Call Stack) для платформы AIX
###################################
## thread 6/15 :: adminp pid=70336, k-id= 275121 , pthr-id=1286 // Идентификаторы процесса и потока
## stack :: k-state=wait, stk max-size=262144, cur-size=9484
###################################
ptrgl.$PTRGL() at 0xd01d7a10
raise.nsleep(??, ??) at 0xd01e6490
raise.nsleep(??, ??) at 0xd01e6490
sleep(??) at 0xd02515b0
OSRunExternalScript(??) at 0xd3e2bcf8
OSFaultCleanup(??, ??, ??) at 0xd3e2cf54
fatal_error(??, ??, ??) at 0xd4d3f5cc
pth_signal.pthread_kill(??, ??) at 0xd0199cf0
pth_signal._p_raise(??) at 0xd01992ec
raise.raise(??) at 0xd01e688c // Разбор фрагмента начинаем с данной фразы и двигаемся вниз
Panic(??) at 0xd3c621b8
LockHandle(??, ??, ??) at 0xd3c698dc
OSLockObject(??) at 0xd3c6a358
ItemLookupByName(??, ??, ??, ??, ??) at 0xd3e928c4
NSFItemLookupByName(??, ??, ??, ??, ??) at 0xd3e92d6c
NSFItemInfo(??, ??, ??, ??, ??, ??, ??) at 0xd3e9250c
AdminpCompileResponseStatus(0x3b003b, 0x0, 0x3038d250, 0x3038d150, 0x100a2340) at 0x10006324
CompileResponseStatus__12AdminRequestFUsPcT2PCc(??, ??, ??, ??, ??) at 0x10054cb0 // Имя функции и класса
DoProcessRequest__21CreateIMAPDelegationsFv(??) at 0x1005372c
AdminpProcessNewRequest(??, ??, ??, ??, ??, ??, ??, ??) at 0x1001ca0c
AdminpRequestAndResponse(??, ??, ??, ??, ??, ??, ??, ??) at 0x10018ddc
EntryThread(??) at 0x10002f80
ThreadWrapper(??) at 0xd3c5f4ac
pth_pthread._pthread_body(??) at 0xd018a5a4

Фрагмент nsd-журнала (Call Stack) для платформы Linux
----- Thread 12759 ----- // Идентификатор потока
0x42174771: __nanosleep + 0x11 (1, 41f9ac54, 3150, 1, 4bc08608, 0) + 354
0x406a2421: OSRunExternalScript + 0x15d (0, 41f9ac54, 4bc08a1c, 4bc08a1c, 61660000, ffff) + 1c8
0x406a14e2: OSFaultCleanup + 0x4b2 (0, 0, 0, 8141f6c, 6, 4bc08cc8) + 20c
0x40682d35: fatal_error + 0x12d (6, 4bc08cc8, 4bc08d5c, 4bc08b68, 81422e8, 494fa4e0)
0x494af892: panicSignalHandler + 0xea (6, 4bc08cc8, 4bc08d5c, 2, 81422f8, 4bc08b68) + 8c
0x494ee80f: sysUnwindSignalCatchFrame + 0x77 (494ee844, 6, 4bc08d5c)
0x494ee8a1: sysSignalCatchHandler + 0x5d (6, 4bc08cc8, 4bc08d5c, 8142178, 4bc08d5c, 6)
0x494ef12c: userSignalHandler + 0x68 (6, 4bc08cc8, 4bc08d5c, 494ee844, 8142178, 4bc08d5c) + 28
0x494ef0ba: intrDispatch + 0xba (6, 4bc08cc8, 4bc08d5c, 8142178, 40043afc, 0) + 10
0x494ef31c: intrDispatchMD + 0x60 (6, 4bc08cc8, 4bc08d48, 4281db00, 31d7, 31d7)
0x4001cb13: pthread_sighandler_rt + 0x63 (6, 4bc08cc8, 4bc08d48, 6, 0, 0) + 37c
0x42100dc0: __libc_sigaction + 0x120 (64033, 6, 1, 0, 421effd4, 4001afe0)
0x4001ce2b: raise + 0x2b (6, 4bc09088, 0, fffffe64, 20, 0) + 110
0x42102549: abort + 0x199 (428e4d8c)
0x42749c15: __default_terminate + 0x15 (428e4d8c) // Разбор фрагмента начинаем с данной фразы и двигаемся вниз
0x4274a72a: terminate__Fv + 0x1a (428e4d8c, 4bc12070, 0, 0, 0, 0) + 8e58
0x4272e809: ShimmerCalPrint__5HaikuP5NNoteiPPvPUlPUiT4 + 0x2d899 (4bc121d4, 4bc13608) + 120
0x4252e686: GetHaikuDatum__5HaikuP5NNoteiPPvPUlPUiT4 + 0xa76 (4bc121d4, 4bc13608) + 10c8
0x42445c49: ExtensionProc__8NFormulaUsUsPUlPPvPUiT3 + 0xaed (4bc14c38, b9, 4bc13608) + 1c
0x42444bbd: INotesCompExtProc + 0x59 (7c0c5ff8, 4bc14c38, b9, 2, 4bc132e8, 4bc13478) + 35c
0x40d93f18: ExtensionProc__18CompGeneralContextR7ComputeUlPP9CompValueUl + 0x154 (7c0c2ff8) + 1a8 // Имя функции и класса
0x40d61a7a: Execute__13ExtensionProc + 0x12a (7c0c61cc, 41f9ac54, 7c0c61cc, 7c0c6120)

Фрагмент nsd-журнала (Call Stack) для iSeries
JOB: 001099/QNOTES/HTTP THREAD: 0x34 // Идентификаторы процесса и потока

LE_Create_Thread2__FP12crtth_parm_t

20

QLECRTTH QLESPI


ThreadWrapper

18

THREAD LIBNOTES


HTThreadBeginProc

9

HTTHREAD LIBHTTPSTA


ThreadMain__14HTWorkerThreadFv

9

HTWRKTHR


CheckForWork__14HTWorkerThreadFv

75



StartRequest__9HTSessionFv

150

HTSESSON


ProcessRequest__9HTRequestFv

330

HTREQUST


ProcessRequest__21HTRequestExtContainerF19HTAppl

126

HTEXTCON


ProcessRequest__15HTInotesRequestFv

3

HTINOTES


InotesHTTPProcessRequest

3

INOTESIF LIBINOTES


InotesHTTPProcessRequestImpl__FP18_InotesHTTPreq

256



Execute__3CmdFv

5

CMD


Handler__10CmdHandlerFP3CmdPv

31

CMDHAND


PrivHandle__10CmdHandlerFP3Cmd

13



PrivHandle__14CmdHandlerBaseFP3CmdT1

115

CMDHANDB


HandleOpenImageResourceCmd__10CmdHandlerFP20Open

9

OPIMGHD


TryIfModifiedSinceWithDb__3CmdFP9NDatabasei

194

CMD


GetTimeLastMod__9NDatabaseFR11tagTIMEDATET1
// Имя функции и класса

2

NDB


NSFDbModifiedTime

1

NSFSEM2 LIBNOTES


InitDbContext

1

DBLOCK


InitDbContextExt

20



HANDLEDereferenceToNSFBLOCK

1

DBHANDLE


HANDLEDereference

8



Halt

2

OSPANIC


Panic

29



fatal_error
// Разбор фрагмента начинаем с данной фразы и двигаемся вверх

33

BREAK


OSFaultCleanup

1

CLEANUP


OSFaultCleanupExt

86



OSRunExternalScript

39


Фрагмент nsd-журнала (Call Stack) для Solaris Sparc
###################################
###### thread 50/61 :: http, pid=11903, lwp=50, tid=50 ###### // Идентификаторы процесса и потока
###################################
[1] ff2195ac nanosleep (de07b1b8, de07b1b0)
[2] ff07e230 sleep (1, de07b220, 40, 100, de07b337, fc800000) + 58
[3] fd9fe978 OSRunExternalScript (0, 1393d8c, 11, 26c00, fed925ac, 26d40) + 15c
[4] fd9fd68c OSFaultCleanup (0, 0, 125800, 2e7f, 1393a28, fed925ac) + 3e8
[5] fd9dac18 fatal_error (b, de07bd20, de07ba68, 0, 0, 0) + 1a4
[6] f83c7964 __1cCosHSolarisPchained_handler (1, fd9daa74, f853ce2c, de07ba68) + 9c
[7] f820a7ac JVM_handle_solaris_signal (0, 2b0708, de07ba68, f84c8000, b, de07bd20) + 7e4
[8] ff085fec __sighndlr (b, de07bd20, de07ba68, f820a8cc, 0, 0) + c
[9] ff07fdd8 call_user_handler (b, de07bd20, de07ba68, 0, 0, 0) + 234
[10] ff07ff88 sigacthandler (b, de07bd20, de07ba68, 0, ab6c80, 13a6814) + 64
[11] --- called from signal handler with signal 11 (SIGSEGV) --- // Разбор фрагмента начинаем с данной фразы и двигаемся вниз
[12] fd2fcc58 __1cJURLTargetJGetDbFile6M_pc_ (de07f27c, e, f9910900, 0, de07c0ac, 3) + 4
[13] fd2d9448 __1cFHaikuDCtxQGetFormsCachePtr6F_pnMHuFormsCache (de07bff4, 7e68, de07cc0c) + 4
[14] fd2e7f18 __1cFHaikuHGetForm6FrnHSafePtr4nGHuForm (de07cc08, dfff80, de07cc0c) + 70
[15] fd28c7a8 __1cOCustomResponseQAttemptToProcess(de07d028, d, fd639028, fd63900c) + 298 // Имя функции и класса

Фрагмент nsd-журнала (Call Stack) для zSeries
###################################
## thread 1/4 :: update pid=340, k-id=0x12850600, pthr-id=8 // Идентификаторы процесса и потока
## stack :: k-state=activ, stk max-size=0, cur-size=0
###################################
sleep() at 0x12370204
OSRunExternalScript() at 0x12a3255c
OSFaultCleanup() at 0x12a35226
fatal_error() at 0x12a20eb8 // Разбор фрагмента начинаем с данной фразы и двигаемся вниз
__zerros() at 0x1238d164
.() at 0x9e67426
CGtrPosWork::ReadNext(unsigned char)() at 0x9e67426
CGtrPosShort::InsertDocs(CGtrPosSh)() at 0x1650036a
CGtrPosBrokerNormal::Externalize(KEY_R)() at 0x164ae9ec // Имя функции и класса
gtrMergeMerge() at 0x164aacc8
gtr_MergePatt() at 0x1648738a
GTR__mergeIndex() at 0x1648f66e
GTR_mergeIndex() at 0x16428f36
cGTRio::Merge()() at 0x163fb848
FTGMergeGTRIndexes(FTG_CTX*,int)() at 0x163f2210
FTGIndex() at 0x163df398
FTCallIndex() at 0x141b3910

Другие части материала: 1 - 2 - 3 - 4
 
  Опубликовано — 05/06/2006 |    



Добавить комментарий
Имя * :
e-mail
Комментарий * :
Код подтверждения * :


Мероприятия
Пресс-релизы
Биржа труда
Последнее на форуме
 
А так же:
Как удалить профиль?
16.04.2016 00:08:51
Скопировать в буфер поле документа
24.05.2015 08:55:52
Импорт DXL-описания документов в Lotus Domino. Одноимённые поля
16.04.2015 16:49:58
 
© LOGOSPHERE.RU