Bastien Colmard created POOL-298:
------------------------------------
Summary: Wrong jmxNameBase default value
Key: POOL-298
URL: https://issues.apache.org/jira/browse/POOL-298
Project: Commons Pool
Issue Type: Bug
Affects Versions: 2.3
Reporter: Bastien Colmard
Priority: Minor
We needed to define our own pool names for Redis, to be able to know which pool
was throwing errors, but we experienced some difficulties.
We use {{jedis-2.7.2}}, which uses {{commons-pool2-2.3}} configured with spring
beans. After setting a custom {{jmxNamePrefix}}, we didn't notice any
difference and proceeded to debug.
BaseGenericObjectPool.jmxRegister uses BaseObjectPoolConfig.jmxNameBase to
build its ObjectName, but jmxNameBase defaults to jmxNamePrefix which is "pool"
(not a valid domain) and throws a MalformedObjectNameException, falling back to
"org.apache.commons.pool2:type=GenericKeyedObjectPool,name=pool".
The current workaround is to force jmxNameBase to null with
{code:xml}<property name="jmxNameBase"><null/></property>{code}
https://github.com/apache/commons-pool/blob/trunk/src/main/java/org/apache/commons/pool2/impl/BaseObjectPoolConfig.java#L192
(introduced in December 2013 it seems)
The fix would be
{code}
-private String jmxNameBase = DEFAULT_JMX_NAME_PREFIX
+private String jmxNameBase = DEFAULT_JMX_NAME_BASE
{code}
I can submit a Pull Request on Github but it looks like you only use it as a
mirror
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)