@@ -131,6 +131,9 @@ private void testQueuing(TestContext ctx, boolean timeout) throws Exception {
131131 AtomicInteger queueSize = new AtomicInteger ();
132132 List <Object > enqueueMetrics = Collections .synchronizedList (new ArrayList <>());
133133 List <Object > dequeueMetrics = Collections .synchronizedList (new ArrayList <>());
134+ AtomicInteger usageSize = new AtomicInteger ();
135+ List <Object > beginMetrics = Collections .synchronizedList (new ArrayList <>());
136+ List <Object > endMetrics = Collections .synchronizedList (new ArrayList <>());
134137 poolMetrics = new PoolMetrics () {
135138 @ Override
136139 public Object enqueue () {
@@ -144,6 +147,18 @@ public void dequeue(Object taskMetric) {
144147 dequeueMetrics .add (taskMetric );
145148 queueSize .decrementAndGet ();
146149 }
150+ @ Override
151+ public Object begin () {
152+ Object metric = new Object ();
153+ beginMetrics .add (metric );
154+ usageSize .incrementAndGet ();
155+ return metric ;
156+ }
157+ @ Override
158+ public void end (Object usageMetric ) {
159+ endMetrics .add (usageMetric );
160+ usageSize .decrementAndGet ();
161+ }
147162 };
148163 PoolOptions poolOptions = new PoolOptions ().setMaxSize (1 ).setName ("the-pool" );
149164 if (timeout ) {
@@ -157,10 +172,15 @@ public void dequeue(Object taskMetric) {
157172 futures .add (pool .withConnection (sqlConn -> sqlConn .query ("SELECT * FROM immutable WHERE id=1" ).execute ()));
158173 }
159174 awaitQueueSize (ctx , queueSize , timeout ? 0 : num );
175+ ctx .assertEquals (0 , usageSize .get ());
160176 conn .close ();
161177 Future .join (futures ).otherwiseEmpty ().await (20 , SECONDS );
162178 ctx .assertEquals (0 , queueSize .get ());
163179 ctx .assertEquals (enqueueMetrics , dequeueMetrics );
180+ ctx .assertEquals (0 , usageSize .get ());
181+ ctx .assertEquals (num , beginMetrics .size ());
182+ ctx .assertEquals (num , endMetrics .size ());
183+ ctx .assertEquals (beginMetrics , endMetrics );
164184 ctx .assertEquals ("sql" , poolType );
165185 ctx .assertEquals ("the-pool" , poolName );
166186 }
0 commit comments