You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@kyuubi.apache.org by GitBox <gi...@apache.org> on 2022/04/28 10:30:03 UTC
[GitHub] [incubator-kyuubi] wForget opened a new issue, #2503: [Bug] The scheduled task for session TimeoutChecker in SessionManager may stop.
wForget opened a new issue, #2503:
URL: https://github.com/apache/incubator-kyuubi/issues/2503
### Code of Conduct
- [X] I agree to follow this project's [Code of Conduct](https://www.apache.org/foundation/policies/conduct)
### Search before asking
- [X] I have searched in the [issues](https://github.com/apache/incubator-kyuubi/issues?q=is%3Aissue) and found no similar issues.
### Describe the bug
There are some timeout sessions in kyuubi server that are not cleaned up.
I found that the workQueue of `SessionManager.timeoutChecker` is empty, but I didn't find the specific exception information that caused this.
> org$apache$kyuubi$session$SessionManager$$shutdown=@Boolean[false],
> workQueue=@DelayedWorkQueue[isEmpty=true;size=0],
`KyuubiSessionManager` details:
```
method=org.apache.kyuubi.session.SessionManager.getSessionList location=AtEnter
ts=2022-04-28 15:37:15; [cost=0.103374ms] result=@KyuubiSessionManager[
operationManager=@KyuubiOperationManager[
queryTimeout=@None$[None],
handleToOperation=@HashMap[isEmpty=false;size=6],
serviceName=@String[KyuubiOperationManager],
conf=@KyuubiConf[KyuubiConf(true)],
state=@Val[STARTED],
startTime=@Long[1645090187643],
org$apache$kyuubi$Logging$$log_=@Log4jLoggerAdapter[org.slf4j.impl.Log4jLoggerAdapter(org.apache.kyuubi.operation.KyuubiOperationManager)],
],
credentialsManager=@HadoopCredentialsManager[
userCredentialsRefMap=@ConcurrentHashMap[isEmpty=false;size=27],
sessionCredentialsEpochMap=@ConcurrentHashMap[isEmpty=false;size=24],
org$apache$kyuubi$credentials$HadoopCredentialsManager$$providers=@Map1[Map(hadoopfs -> org.apache.kyuubi.credentials.HadoopFsDelegationTokenProvider@7fc383da)],
org$apache$kyuubi$credentials$HadoopCredentialsManager$$renewalInterval=@Long[3600000],
org$apache$kyuubi$credentials$HadoopCredentialsManager$$renewalRetryWait=@Long[60000],
hadoopConf=@Configuration[Configuration: core-default.xml, core-site.xml, mapred-default.xml, mapred-site.xml, yarn-default.xml, yarn-site.xml, hdfs-default.xml, hdfs-rbf-default.xml, hdfs-site.xml, hdfs-rbf-site.xml],
renewalExecutor=@Some[Some(java.util.concurrent.ScheduledThreadPoolExecutor@5ef4bc7c[Running, pool size = 1, active threads = 0, queued tasks = 27, completed tasks = 30263])],
serviceName=@String[HadoopCredentialsManager],
conf=@KyuubiConf[KyuubiConf(true)],
state=@Val[STARTED],
startTime=@Long[1645090187642],
org$apache$kyuubi$Logging$$log_=@Log4jLoggerAdapter[org.slf4j.impl.Log4jLoggerAdapter(org.apache.kyuubi.credentials.HadoopCredentialsManager)],
],
_confRestrictMatchList=@EmptySet$[
MODULE$=@EmptySet$[Set()],
serialVersionUID=@Long[-2443710944435909512],
],
_confIgnoreMatchList=@EmptySet$[
MODULE$=@EmptySet$[Set()],
serialVersionUID=@Long[-2443710944435909512],
],
name=@String[KyuubiSessionManager],
org$apache$kyuubi$session$SessionManager$$shutdown=@Boolean[false],
_operationLogRoot=@Some[
serialVersionUID=@Long[1234815782226070388],
value=@String[/data1/kyuubi_new/logs/work/server_operation_logs],
serialVersionUID=@Long[-114498752079829388],
],
_latestLogoutTime=@Long[1651111923004],
org$apache$kyuubi$session$SessionManager$$handleToSession=@ConcurrentHashMap[
@SessionHandle[SessionHandle [3e230aef-3325-4b89-8b9f-2bab1cda2654]]:@KyuubiSessionImpl[org.apache.kyuubi.session.KyuubiSessionImpl@25582ddf],
@SessionHandle[SessionHandle [34b54e59-61ae-4014-9cc8-75dda06f186c]]:@KyuubiSessionImpl[org.apache.kyuubi.session.KyuubiSessionImpl@5f3bfe0d],
@SessionHandle[SessionHandle [9bff85a7-cbb3-4b16-966c-c12c5aae6b1f]]:@KyuubiSessionImpl[org.apache.kyuubi.session.KyuubiSessionImpl@3cc94e62],
],
timeoutChecker=@ScheduledThreadPoolExecutor[
continueExistingPeriodicTasksAfterShutdown=@Boolean[false],
executeExistingDelayedTasksAfterShutdown=@Boolean[true],
removeOnCancel=@Boolean[true],
sequencer=@AtomicLong[388641],
ctl=@AtomicInteger[-536870911],
COUNT_BITS=@Integer[29],
CAPACITY=@Integer[536870911],
RUNNING=@Integer[-536870912],
SHUTDOWN=@Integer[0],
STOP=@Integer[536870912],
TIDYING=@Integer[1073741824],
TERMINATED=@Integer[1610612736],
workQueue=@DelayedWorkQueue[isEmpty=true;size=0],
mainLock=@ReentrantLock[java.util.concurrent.locks.ReentrantLock@55b084c5[Unlocked]],
workers=@HashSet[isEmpty=false;size=1],
termination=@ConditionObject[java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@23fc7a4f],
largestPoolSize=@Integer[1],
completedTaskCount=@Long[0],
threadFactory=@NamedThreadFactory[org.apache.kyuubi.util.NamedThreadFactory@5b1bb7a8],
handler=@AbortPolicy[java.util.concurrent.ThreadPoolExecutor$AbortPolicy@50749371],
keepAliveTime=@Long[0],
allowCoreThreadTimeOut=@Boolean[false],
corePoolSize=@Integer[1],
maximumPoolSize=@Integer[2147483647],
defaultHandler=@AbortPolicy[java.util.concurrent.ThreadPoolExecutor$AbortPolicy@50749371],
shutdownPerm=@RuntimePermission[("java.lang.RuntimePermission" "modifyThread")],
ONLY_ONE=@Boolean[true],
$assertionsDisabled=@Boolean[true],
],
execPool=@ThreadPoolExecutor[
ctl=@AtomicInteger[-536870912],
COUNT_BITS=@Integer[29],
CAPACITY=@Integer[536870911],
RUNNING=@Integer[-536870912],
SHUTDOWN=@Integer[0],
STOP=@Integer[536870912],
TIDYING=@Integer[1073741824],
TERMINATED=@Integer[1610612736],
workQueue=@LinkedBlockingQueue[isEmpty=true;size=0],
mainLock=@ReentrantLock[java.util.concurrent.locks.ReentrantLock@1b3a316[Unlocked]],
workers=@HashSet[isEmpty=true;size=0],
termination=@ConditionObject[java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@415d8f6d],
largestPoolSize=@Integer[100],
completedTaskCount=@Long[7802164],
threadFactory=@NamedThreadFactory[org.apache.kyuubi.util.NamedThreadFactory@477dc619],
handler=@AbortPolicy[java.util.concurrent.ThreadPoolExecutor$AbortPolicy@50749371],
keepAliveTime=@Long[60000000000],
allowCoreThreadTimeOut=@Boolean[true],
corePoolSize=@Integer[100],
maximumPoolSize=@Integer[100],
defaultHandler=@AbortPolicy[java.util.concurrent.ThreadPoolExecutor$AbortPolicy@50749371],
shutdownPerm=@RuntimePermission[("java.lang.RuntimePermission" "modifyThread")],
ONLY_ONE=@Boolean[true],
$assertionsDisabled=@Boolean[true],
],
_confRestrictList=@EmptySet$[
MODULE$=@EmptySet$[Set()],
serialVersionUID=@Long[-2443710944435909512],
],
_confIgnoreList=@EmptySet$[
MODULE$=@EmptySet$[Set()],
serialVersionUID=@Long[-2443710944435909512],
],
bitmap$0=@Byte[3],
serviceList=@ArrayBuffer[
serialVersionUID=@Long[1529165946227428979],
initialSize=@Integer[16],
array=@Object[][isEmpty=false;size=16],
size0=@Integer[2],
],
serviceName=@String[KyuubiSessionManager],
conf=@KyuubiConf[
reader=@ConfigProvider[org.apache.kyuubi.config.ConfigProvider@2bbe13c9],
loadSysDefault=@Boolean[true],
settings=@ConcurrentHashMap[isEmpty=false;size=20],
serverOnlyConfEntries=@HashTrieSet[Set(ConfigEntry(key=kyuubi.authentication, defaultValue=NONE, doc=A comma separated list of client authentication types.<ul> <li>NOSASL: raw transport.</li> <li>NONE: no authentication check.</li> <li>KERBEROS: Kerberos/GSSAPI authentication.</li> <li>CUSTOM: User-defined authentication.</li> <li>LDAP: Lightweight Directory Access Protocol authentication.</li></ul> Note that: For KERBEROS, it is SASL/GSSAPI mechanism, and for NONE, CUSTOM and LDAP, they are all SASL/PLAIN mechanism. If only NOSASL is specified, the authentication will be NOSASL. For SASL authentication, KERBEROS and PLAIN auth type are supported at the same time, and only the first specified PLAIN auth type is valid., version=1.0.0, type=seq), ConfigEntry(key=kyuubi.frontend.thrift.binary.bind.port, defaultValue=10009, doc=Port of the machine on which to run the thrift frontend service via binary protocol., version=1.4.0, type=int), ConfigEntry(key=kyuubi.frontend.rest.bi
nd.port, defaultValue=10099, doc=Port of the machine on which to run the REST frontend service., version=1.4.0, type=int), ConfigEntry(key=kyuubi.frontend.mysql.bind.port, defaultValue=3309, doc=Port of the machine on which to run the MySQL frontend service., version=1.4.0, type=int), ConfigEntry(key=kyuubi.frontend.thrift.binary.bind.host, defaultValue=<undefined>, doc=Hostname or IP of the machine on which to run the thrift frontend service via binary protocol., version=1.4.0, type=string), ConfigEntry(key=kyuubi.frontend.bind.port, defaultValue=10009, doc=(deprecated) Port of the machine on which to run the thrift frontend service via binary protocol., version=1.0.0, type=int), ConfigEntry(key=kyuubi.kinit.interval, defaultValue=PT1H, doc=How often will Kyuubi server run `kinit -kt [keytab] [principal]` to renew the local Kerberos credentials cache, version=1.0.0, type=duration), ConfigEntry(key=kyuubi.frontend.mysql.bind.host, defaultValue=<undefined>, doc=Hostname or IP of the
machine on which to run the MySQL frontend service., version=1.4.0, type=string), ConfigEntry(key=kyuubi.frontend.rest.bind.host, defaultValue=<undefined>, doc=Hostname or IP of the machine on which to run the REST frontend service., version=1.4.0, type=string), ConfigEntry(key=kyuubi.frontend.bind.host, defaultValue=<undefined>, doc=(deprecated) Hostname or IP of the machine on which to run the thrift frontend service via binary protocol., version=1.0.0, type=string))],
org$apache$kyuubi$Logging$$log_=null,
bitmap$0=@Boolean[true],
],
state=@Val[
serialVersionUID=@Long[-3501153230598116017],
i=@Integer[2],
name=null,
serialVersionUID=@Long[7091335633555234129],
scala$Enumeration$$outerEnum=@ServiceState$[ServiceState],
$outer=@ServiceState$[ServiceState],
],
startTime=@Long[1645090187643],
org$apache$kyuubi$Logging$$log_=@Log4jLoggerAdapter[
serialVersionUID=@Long[6182834493563598289],
logger=@Logger[org.apache.log4j.Logger@7a1b8bdc],
FQCN=@String[org.slf4j.impl.Log4jLoggerAdapter],
traceCapable=@Boolean[true],
serialVersionUID=@Long[9044267456635152283],
serialVersionUID=@Long[7535258609338176893],
name=@String[org.apache.kyuubi.session.KyuubiSessionManager],
],
]
```
### Affects Version(s)
1.4.0
### Kyuubi Server Log Output
_No response_
### Kyuubi Engine Log Output
_No response_
### Kyuubi Server Configurations
_No response_
### Kyuubi Engine Configurations
_No response_
### Additional context
_No response_
### Are you willing to submit PR?
- [ ] Yes I am willing to submit a PR!
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@kyuubi.apache.org.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@kyuubi.apache.org
For additional commands, e-mail: notifications-help@kyuubi.apache.org
Re: [I] [Bug] The scheduled task for session TimeoutChecker in SessionManager may stop. [kyuubi]
Posted by "pan3793 (via GitHub)" <gi...@apache.org>.
pan3793 closed issue #2503: [Bug] The scheduled task for session TimeoutChecker in SessionManager may stop.
URL: https://github.com/apache/kyuubi/issues/2503
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@kyuubi.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@kyuubi.apache.org
For additional commands, e-mail: notifications-help@kyuubi.apache.org