The pool doesn't look at the maxAge setting when you borrow a connection, only when you return one. That's no good, since it lets you borrow (possibly stale) connections that are much older than maxAge, rendering the feature useless in times of low activity in the pool.
Fixed in r1616594
current fix does not run initSQL or testOnConnect
Fixed in r1616760