TongWeb8.0 JNDI缓存

TongWeb8.0默认开启了JNDI缓存,若遇到如下异常或线程阻塞在com.tongweb.naming.JndiCache上,则增加参数-Dtongweb.disableJndiCache=true关闭缓存。

复制代码
#部署应用异常
Caused by: java.lang.IllegalStateExcception: Recursive update
  at java.base/java.util.concurrent.ConcurrentHashMap.computeIfAbsent(ConcurrentHashMap.java)
  at com.tongweb.naming.JndiCache.lookup(JndiCache.java:80)

#访问阻塞在JndiCache上  
"TW-8088-2" #86 daemon prio=5 os_prio=0 tid=0x00000289a7373800 nid=0x69f4 runnable [0x000000bb038fb000]
   java.lang.Thread.State: RUNNABLE
	at java.util.concurrent.ConcurrentHashMap.computeIfAbsent(ConcurrentHashMap.java:1718)
	at com.tongweb.naming.JndiCache.lookup(JndiCache.java:80)
	at com.tongweb.tongejb.core.ivm.ContextHandler.lookup0(ContextHandler.java:47)
	at com.tongweb.tongejb.core.ivm.ContextHandler.lookup(ContextHandler.java:42)
	at com.tongweb.tongejb.core.ivm.naming.IvmContext.lookup0(IvmContext.java:192)
	at com.tongweb.tongejb.core.ivm.naming.IvmContext.lookup(IvmContext.java:159)
	at com.tongweb.tongejb.core.ivm.ContextHandler.lookupInternal(ContextHandler.java:71)
	at com.tongweb.tongejb.core.ivm.ContextHandler.lambda$lookup0$0(ContextHandler.java:47)
	at com.tongweb.tongejb.core.ivm.ContextHandler$$Lambda$164/1730914651.lookup(Unknown Source)
	at com.tongweb.naming.JndiCache.lambda$lookup$1(JndiCache.java:82)
	at com.tongweb.naming.JndiCache$$Lambda$166/28020301.apply(Unknown Source)
	at java.util.concurrent.ConcurrentHashMap.computeIfAbsent(ConcurrentHashMap.java:1660)
	- locked <0x00000000d8f16a28> (a java.util.concurrent.ConcurrentHashMap$ReservationNode)
	at com.tongweb.naming.JndiCache.lookup(JndiCache.java:80)
	at com.tongweb.tongejb.core.ivm.ContextHandler.lookup0(ContextHandler.java:47)
	at com.tongweb.tongejb.core.ivm.ContextHandler.lookup(ContextHandler.java:42)
	at javax.naming.InitialContext.lookup(InitialContext.java:417)
	
"TW-8088-5" #89 daemon prio=5 os_prio=0 tid=0x0000022a45da0800 nid=0x7d9c waiting for monitor entry [0x0000006a471fb000]
   java.lang.Thread.State: BLOCKED (on object monitor)
	at java.util.concurrent.ConcurrentHashMap.computeIfAbsent(ConcurrentHashMap.java:1674)
	- waiting to lock <0x00000000d9a443b0> (a java.util.concurrent.ConcurrentHashMap$ReservationNode)
	at com.tongweb.naming.JndiCache.lookup(JndiCache.java:80)
	at com.tongweb.tongejb.core.ivm.naming.IvmContext.lookup(IvmContext.java:160)
	at com.tongweb.tongejb.core.ivm.ContextHandler.lookup0(ContextHandler.java:62)
	at com.tongweb.tongejb.core.ivm.ContextHandler.lookup(ContextHandler.java:41)
	at javax.naming.InitialContext.lookup(InitialContext.java:417)
	at org.springframework.jndi.JndiTemplate$1.doInContext(JndiTemplate.java:155)
	at org.springframework.jndi.JndiTemplate.execute(JndiTemplate.java:87)
	at org.springframework.jndi.JndiTemplate.lookup(JndiTemplate.java:152)
	at org.springframework.jndi.JndiTemplate.lookup(JndiTemplate.java:179)	
相关推荐
用户8356290780513 分钟前
使用 Python 在 Excel 中添加和编辑形状
后端·python
2601_9623004715 分钟前
python在运维上可以干什么,请举几个具体的例子
运维·python·系统管理·网络监控·自动化脚本
小刘在重生~28 分钟前
Java 异常体系完整笔记
java·笔记·python
用户83562907805131 分钟前
使用 Python 为 PDF 添加和管理超链接
后端·python
千千寰宇32 分钟前
[Python/测试] pytest:简洁、可扩展的 Python 测试框架
python·软件质量保障与测试
少陽君33 分钟前
Python 并发编程:IO 等待用线程/asyncio,CPU 计算才用进程
数据库·python·php
aramae40 分钟前
模拟实现strstr函数(C语言)
c语言·开发语言·算法
2601_962284501 小时前
Python 和Java 哪个更适合做自动化测试?
java·自动化测试·python·接口测试·性能测试
liliangcsdn1 小时前
因子权重矩阵处理-滞回缓冲带+降频稳定化动态重选
开发语言·python·算法
ShuiShenHuoLe1 小时前
golang-jwt v5 入门
开发语言·后端·golang