问题:
ULOG: 105143.test1!tmadmin.12238.1.-2: LIBTUX_CAT:577: ERROR: Unable to register because the slot is already owned by another process
$ tmadmin
tmadmin - Copyright (c) 1996-1999 BEA Systems, Inc. Portions * Copyright 1986-1997 RSA Data Security, Inc. All Rights Reserved. Distributed under license by BEA Systems, Inc. Tuxedo is a registered trademark. TMADMIN_CAT:199: WARN: Cannot become administrator.Limited set of commands available.
原因:重复打开tmadmin管理,在重复打开的tmadmin中个别命令不能使用,通过help命令可以看到当前可以使用的命令。
-------------------------------------
问题:
174304.test1!WSH.20044.1.0: gtrid x0 x47fb1049 x16e: LIBTUX_CAT:1288: ERROR: File transfer creat failed, file=/var/tmp/TUXAAAa200441, errno=不允许 174304.test1!WSH.20044.1.0: gtrid x0 x47fb1049 x16e: WSNAT_CAT:1042: ERROR: tpcall() call failed, tperrno = 7
原因:
1288 ERROR: File transfer creat failed, file=filename, errno=errno_val
DESCRIPTION
The UNIX kernel call creat () failed on filename. This temporary file was being created to transfer a large message between two TUXEDO System processes on the same machine.
ACTION
Check temporary directory's permissions. Check disk space and inode counts for the temporary file system.
-------------------------------------
问题:
105516.test0!TMUSREVT.17177.1.0: gtrid x0 x48105214 xe: CMDTUX_CAT:3129: ERROR: tpenqueue() to qname PAYQUE failed for event EVT_PLC_EFFT tperrno=24
原因:PAYQUE队列没有建立,用qmadmin创建队列。
-------------------------------------
问题:
122500.test0!TMS_QM.18070.1.0: 01-06-2010: Tuxedo Version 8.1, 64-bit
122500.test0!TMS_QM.18070.1.0: LIBTUX_CAT:262: INFO: Standard main starting
122500.test0!TMS_QM.18070.1.0: Q_CAT:1350: ERROR: xa_open - failed to open table QSPACE.00 on config /eapsdev/Ttrans/install
/QUE
122500.test0!TMS_QM.18070.1.0: LIBTUX_CAT:466: ERROR: tpopen TPERMERR xa_open returned XAER_RMERR
122500.test0!TMS_QM.18070.1.0: LIBTUX_CAT:250: ERROR: tpsvrinit() failed
122500.test0!TMS_QM.18070.1.0: LIBTUX_CAT:300: ERROR: _tlog_open: _gp_tblopen: UNIX sys call error - 2
122500.test0!tmboot.18042.1.-2: CMDTUX_CAT:825: ERROR: Process TMS_QM at EAPS_HP1 failed with /T tperrno (TPERMERR - resourc
e manager error)
122500.test0!TMSYSEVT.18067.1.0: LIBTUX_CAT:1478: ERROR: .SysServerInit: TMS_QM, group QUEGRP, id 30002 server initializatio
n failure
原因:消息空间错误,如修改了创建时使用的目录位置(QMCONFIG参数改变)。
处理:qmadmin重新建立消息空间qspacecreate,重新建里面的消息队列qcreate。
-------------------------------------
问题:
103331.test1!dydealtasksrv.21551.1.0: ERROR: msgsnd err:(LIBTUX_CAT:669: ERROR: Message operation failed because of the invalid message queue identifier) errno=22,qid=208507,buf=-9223372032559197904,bytes=293,flag=2048 103331.test1!dydealtasksrv.21551.1.0: LIBTUX_CAT:1286: ERROR: tpreturn could not send reply TPEOS - operating system error
原因:队列没有找到,可能是前台在后台返回前断开了服务连接,所以tpreturn时找不到
接收消息队列。或是其他原因导致队列被删除如 ipcrm -q qid
---------------------------------
问题:
101503.lf2qjf2!TUXAGENT.17788: LIBTUX_CAT:536: ERROR: Unable to create request queue 101503.lf2qjf2!TUXAGENT.17788: LIBTUX_CAT:248: ERROR: System init function failed, Uunixerr = : msgget: No space left on device
原因:达到OS系统最大消息上限。使用ipcs -q|wc -l 查看当时建立得消息队列。
使用kmtune|grep msgmni 查看系统消息上限。
-----------------------------------------------------------------
问题:
111756.test1!BBL.23626.1.0: 12-11-2008: Tuxedo Version 8.1, 64-bit, Patch Level (none)
111756.test1!BBL.23626.1.0: LIBTUX_CAT:1000: ERROR: System clock has been reset to prior time. Reset again to time after Thu Dec 11 11:17:56 2008
.
111756.test1!BBL.23626.1.0: LIBTUX_CAT:248: ERROR: System init function failed, Uunixerr =
111756.test1!BBL.23626.1.0: CMDTUX_CAT:26: INFO: The BBL is exiting system
111756.test1!tmboot.23625.1.-2: 12-11-2008: Tuxedo Version 8.1, 64-bit
111756.test1!tmboot.23625.1.-2: CMDTUX_CAT:825: ERROR: Process BBL at ANNT_TEST failed with /T tperrno (TPESYSTEM - internal system error)
111756.test1!tmboot.23625.1.-2: WARN: No BBL available on site ANNT_TEST.
Will not attempt to boot server processes on that site.
原因:系统修改OS时间导致,重新创建TLOG 日志后此问题解决。
crdl 、crlog
------------------------------------------
问题:
120924.test0!BBL.15692.1.0: 01-06-2010: Tuxedo Version 8.1, 64-bit, Patch Level 324
120924.test0!BBL.15692.1.0: LIBTUX_CAT:300: ERROR: _tlog_open: _gp_tblopen: UNIX sys call error - 2
120924.test0!BBL.15692.1.0: LIBTUX_CAT:319: ERROR: Log start cannot open tlog
120924.test0!BBL.15692.1.0: LIBTUX_CAT:248: ERROR: System init function failed, Uunixerr =
120924.test0!BBL.15692.1.0: CMDTUX_CAT:26: INFO: The BBL is exiting system
120924.test0!tmboot.15689.1.-2: 01-06-2010: Tuxedo Version 8.1, 64-bit
120924.test0!tmboot.15689.1.-2: CMDTUX_CAT:825: ERROR: Process BBL at EAPS_HP1 failed with /T tperrno (TPESYSTEM - internal system error)
120924.test0!tmboot.15689.1.-2: WARN: No BBL available on site EAPS_HP1.
原因:修改了TLOG文件创建时使用的路径。需要重新创建TLOG ,或该回原路径使用。
重新创建TLOG 日志后此问题解决。
crdl 、crlog
-----------------------------------------------------------------------
问题:
启动时遇到下面错误,分析应是TLOG问题,因为好久没用这个环境了而且系统时间有变动TLOG日期2014年,当前2013年。
140543.sd0904!BBL.11497.1.0: 03-26-2013: Tuxedo Version 8.1, 64-bit, Patch Level 355
140543.sd0904!BBL.11497.1.0: LIBTUX_CAT:296: ERROR: _tlog_open: _gp_tblopen: VTOC not initialized
140543.sd0904!BBL.11497.1.0: LIBTUX_CAT:319: ERROR: Log start cannot open tlog
140543.sd0904!BBL.11497.1.0: LIBTUX_CAT:248: ERROR: System init function failed, Uunixerr =
重做TLOG
143327.sd0904!tmadmin.11587.1.-2: TMADMIN_CAT:1330: INFO: Command: crdl -b 1024 -z /test2/gaps/trans/install/TLOG
143333.sd0904!tmadmin.11587.1.-2: TMADMIN_CAT:1330: INFO: Command: crlog -m gaps_51
143333.sd0904!tmadmin.11587.1.-2: LIBTUX_CAT:297: ERROR: _tlog_create: _gp_crtbl: no space can be allocated for disk table or for VTOC/UDL
143353.sd0904!tmadmin.11587.1.-2: TMADMIN_CAT:1330: INFO: Command: dsdl -z /test2/gaps/trans/install/TLOG 0
143445.sd0904!tmadmin.11587.1.-2: TMADMIN_CAT:1330: INFO: Command: crdl -b 2000 -z /test2/gaps/trans/install/TLOG
143504.sd0904!tmadmin.11587.1.-2: TMADMIN_CAT:1330: INFO: Command: crlog -m gaps_51
发现 crlog 时老报 空间不够 UBB 配置中 TLOGNAME="TLOG" TLOGSIZE=1000 创建 时指定 crdl -b 1024 也不行,最后指定 2000 可以。
中间数值未测试,等找到说明继续补充。难道有偏移量?请高手告知
-----------------------------------------------------------------------
问题:
ERROR: File transfer creat failed, file=/var/tmp/TUXAAAa248801, errno=Permission denied
122459.test1!Grant.24880.1.0: LIBTUX_CAT:1286: ERROR: tpreturn could not send reply TPEOS - operating system error
原因:服务器多用户tuxedo环境时,创建的tmp里的文件已经存在,重启解决此问题。
-----------------------------------------------------------------------
问题:
110004.clicsx!BBL.25771.1.0: GP_CAT:1356: ERROR: pifreg: can not open registry database
110004.clicsx!BBL.25771.1.0: LIBSEC_CAT:22: ERROR: Unable to realize the _ec_sec_map_proof interface implementation native/security/
map_proof. Error code (-4003)
110004.clicsx!BBL.25771.1.0: LIBTUX_CAT:6275: ERROR: Unable to initialize public key subsystem (-3003)
原因:出现上述问题请检查ubbconfig、系统环境中 关于tuxedo 路径设置项是否正确。
-------------------------------------------------------------------
问题:
092531.host2!GWADM.2226.1.0: gtrid x0 x4f308c2a x143: LIBGW_CAT:1036: ERROR: Can't locate free block in domain log
092531.host2!GWADM.2226.1.0: gtrid x0 x4f308c2a x143: CMDGW_CAT:1931: ERROR: Write to gateway log failed
原因:domconfig 配置中未指定 日志DMTLOGDEV 文件大小。默认生成日志 139K
domconfig 配置
DMTLOGSIZE=500
设置 500k
重启服务生成文件539K,证明默认配置为100K
-------------------------------------------------------------------
问题:
154908.sd0103!bdlcx.17812.1.0: 01-31-2013: Tuxedo Version 8.1, 64-bit
154908.sd0103!bdlcx.17812.1.0: LIBTUX_CAT:1122: ERROR: No space in Bulletin Board
154908.sd0103!bdlcx.17812.1.0: LIBTUX_CAT:582: ERROR: Unable to register, registry table full
154908.sd0103!bdlcx.17812.1.0: LIBTUX_CAT:248: ERROR: System init function failed, Uunixerr =
154908.sd0103!tmboot.17811.1.-2: 01-31-2013: Tuxedo Version 8.1, 64-bit
154908.sd0103!tmboot.17811.1.-2: CMDTUX_CAT:825: ERROR: Process bdlcx at TLWN57TEST failed with /T tperrno (TPENOENT - no entry found)
原因:
ubb中的MAXWSCLIENTS,MAXACCESSERS参数值太小.
增大MAXACCESSERS值或MAXWSCLIENTS值
MAXACCESSERS的含义
客户端和服务进程可以同时访问BB的最大数目
MAXACCESSERS>(MAXWSCLIENTS+MAXSERVERS+total num(JSH+WSH+ISH))
-------------------------------------------------------------------
问题:
172401.sd0904!DMADM.23666.1.0: 11-29-2010: Tuxedo Version 8.1, 64-bit
172401.sd0904!DMADM.23666.1.0: LIBTUX_CAT:271: ERROR: System lock semop failure, key = 65231 (errno = 28)
172401.sd0904!DMADM.23666.1.0: LIBTUX_CAT:248: ERROR: System init function failed, Uunixerr = : semop: No space left on device
172401.sd0904!tmboot.23645.1.-2: CMDTUX_CAT:825: ERROR: Process DMADM at ANNT_WORK1 failed with /T tperrno (TPEOS - operating system
error)
原因:达到OS系统最 semmnu
使用kctune |grep semmnu 查看系统参数。
-------------------------------------------------------------------
问题:
090940.sd0904!TMS_ORA10.1521.1.0: 02-11-2011: Tuxedo Version 8.1, 64-bit
090940.sd0904!TMS_ORA10.1521.1.0: LIBTUX_CAT:262: INFO: Standard main starting
090940.sd0904!TMS_ORA10.1521.1.0: CMDTUX_CAT:409: ERROR: xa_recover() returned -3 for group XAGRP3
090940.sd0904!TMS_ORA10.1521.1.0: LIBTUX_CAT:250: ERROR: tpsvrinit() failed
090940.sd0904!TMSYSEVT.1516.1.0: LIBTUX_CAT:1478: ERROR: .SysServerInit: TMS_ORA10, group XAGRP3, id 30001 server initialization failure
090940.sd0904!tmboot.1510.1.-2: 02-11-2011: Tuxedo Version 8.1, 64-bit
090940.sd0904!tmboot.1510.1.-2: CMDTUX_CAT:825: ERROR: Process TMS_ORA10 at ANNT_WORK1 failed with /T tperrno (TPESYSTEM - internal system error)
090940.sd0904!TMS_ORA10.1522.1.0: 02-11-2011: Tuxedo Version 8.1, 64-bit
090940.sd0904!TMS_ORA10.1522.1.0: LIBTUX_CAT:262: INFO: Standard main starting
090940.sd0904!TMS_ORA10.1522.1.0: CMDTUX_CAT:409: ERROR: xa_recover() returned -3 for group XAGRP3
090940.sd0904!TMS_ORA10.1522.1.0: LIBTUX_CAT:250: ERROR: tpsvrinit() failed
090940.sd0904!TMSYSEVT.1516.1.0: LIBTUX_CAT:1478: ERROR: .SysServerInit: TMS_ORA10, group XAGRP3, id 30002 server initialization failure
090940.sd0904!tmboot.1510.1.-2: CMDTUX_CAT:825: ERROR: Process TMS_ORA10 at ANNT_WORK1 failed with /T tperrno (TPESYSTEM - internal system error)
解决办法:
tuxedo 连接oracle10g
grant select on DBA_PENDING_TRANSACTIONS to public;
-------------------------------------------------------------------
问题:
181402.sd0103!GWTDOMAIN.22237.1.0: LIBGWT_CAT:1070: ERROR: Unable to obtain local service information from shared memory
181402.sd0103!GWTDOMAIN.22237.1.0: LIBGWT_CAT:1043: ERROR: Unrecoverable error occurred on receipt of data - sending failure reply over network
原因:
直接调用服务没有问题,
跨域调用服务,发现服务被调到,但未能正常返回
服务端ULOG如上。客户端收到 错误号12.
域配置*DM_EXPORT节中发布服务“”中有空格造成。
-------------------------------------------------------------------
问题:
ORA-02049: 超时: 分布式事务处理等待锁
原因:
使用tpbegin 起全局事务,
由于业务数据量巨大,架构设计起全局事务,执行多次tpcall调用。
数据处理结束后 tpcommit 提交事务,中途遇错误tprollback回滚。
业务中使用了计数器表,(使用一条记录推序号)
结果:在全局事务未提交前,计数器表中一条记录被锁定。
阻塞其他业务获取序号,更新此记录操作。
解决:
计数器表 抛出全局事务。
挂起全局事务
if (tpsuspend(&tranid,0) == -1)
{}
--处理计数器表 update
-- exec sql commit;
恢复全局事务。
if (tpresume(&tranid,0) == -1)
{}
附录:
引用
#include "atmi.h"
TPTRANID tranid;
tpgetlev(); 判断是否在全局事务中。
tranflag = tpgetlev();
-------------------------------------------------------------------
问题:
093431.sd0101!TMS_ORA.6498.1.0: 04-15-2011: Tuxedo Version 8.1, 64-bit
093431.sd0101!TMS_ORA.6498.1.0: LIBTUX_CAT:262: INFO: Standard main starting
093431.sd0101!TMS_ORA.6498.1.0: LIBTUX_CAT:466: ERROR: tpopen TPERMERR xa_open returned XAER_RMERR
093431.sd0101!TMS_ORA.6498.1.0: LIBTUX_CAT:250: ERROR: tpsvrinit() failed
093431.sd0101!TMS_ORA.6498.1.0: LIBTUX_CAT:300: ERROR: _tlog_open: _gp_tblopen: UNIX sys call error - 2
093431.sd0101!tmboot.6495.1.-2: CMDTUX_CAT:825: ERROR: Process TMS_ORA at TLWN55 failed with /T tperrno (TPERMERR - resource manager error)
原因:ubb 组连接数据库配置问题
sqlNet=TEST 或 DB=
OPENINFO="Oracle_XA:Oracle_XA+sqlNet=TEST+Acc=P/scott/tiger+SesTm=600+MaxCur=5+LogDir=."
OPENINFO="Oracle_XA:Oracle_XA+Acc=P/scott/tiger+SesTm=120+MaxCur=5+LogDir=.+SqlNet=laborcl"
OPENINFO="Oracle_XA:Oracle_XA+Acc=P/kl100916/kl100916+SesTm=600+MaxCur=5+LogDir=/home/kunlun/log+DbgFl=0x15"
0X01 trace all XA calls
0X02 Trace non-XA interface calls
0x04 Trace intermediate steps
0x08 trace oracle xa version
0x15 所有跟中之和。
P/scott/*****
加密格式
注:oracle数据库连接数不够时起服务时也会报类似错误。
------------------------------------------------------------------------------------------------------------------------
问题:
093431.sd0101!TMS_ORA.6498.1.0: 04-15-2011: Tuxedo Version 8.1, 64-bit
110438.blade4!TMSORA.56492394.1.0: 01-26-2014: Tuxedo Version 11.1.1.2.0, 64-bit
110438.blade4!TMSORA.56492394.1.0: LIBTUX_CAT:262: INFO: Standard main starting
110438.blade4!TMSORA.56492394.1.0: LIBTUX_CAT:466: ERROR: tpopen TPERMERR xa_open returned XAER_INVAL
110438.blade4!TMSORA.56492394.1.0: LIBTUX_CAT:250: ERROR: tpsvrinit() failed
110438.blade4!TMSORA.56492394.1.0: LIBTUX_CAT:300: ERROR: _tlog_open: _gp_tblopen: UNIX sys call error - 2
110438.blade4!tmboot.64422290.1.-2: 01-26-2014: Tuxedo Version 11.1.1.2.0, 64-bit
110438.blade4!tmboot.64422290.1.-2: CMDTUX_CAT:825: ERROR: Process TMSORA at HOSTNAME failed with /T tperrno (TPERMERR - resource manager error)
----------xa_NULL01262014.trc--------------------------------
ORACLE XA: Version 11.2.0.2.0. RM name = 'Oracle_XA'.
110438.56492394.0:
ORA-01017: invalid username/password; logon denied
exec TMSORA -A :
Failed.
exec TMSORA -A :
Failed.
exec TMSORA -A :
Failed.
3个错误是因为 配置中设置了 3
TMSNAME="TMSORA"
TMSCOUNT=3
原因:看xa log 问题很明显了,用户名密码不对不能登录。
------------------------------------------------------------------------------------------------------------------------
问题:
184554.rx6605!GWTDOMAIN.7052.1.0: LIBGW_CAT:5029: ERROR: Routing field value for 'new_css_Login' not valid
原因:
数据依赖路由形式调用外部域中 new_css_Login 交易时,未找到对应值。
解决:
修改域配置对应路由信息。
扩展:
域配置信息
FML路由信息配置
FLDTBLDIR32=$APPDIR/FML
FIELDTBLS32=cntap_0001_fml
FLDTBLDIR (FLDTBLDIR32):指明Field Table文件的名字,多个用逗号分割
FIELDTBLS (FIELDTBLS32):Filed Table文件的所在路径,多个用冒号分割,在WinNT系统中使用分号分割