The trace message should not be reachable if you really do have that config:
From the InternalManagedConnectionPool constructor
if (poolParams.idleTimeout != 0) IdleRemover.registerPool(this, poolParams.idleTimeout);
You can see this attribute on the jmx console for the managed connection pool.
You are right. While the datasource I added has idle-timeout-minutes set to 0, there is a file 'hsqldb-ds.xml' which defines DefaultDS which does have a timeout value.
Sorry about that.