FTDC metrics per pool currently looks like this:
"NetworkInterfaceTL-TaskExecutorPool-0" : { "poolInUse" : 3, "poolWasUsedOnce" : 0, "poolConnUsageTimeMillis" : 10, "ip-10-128-56-199.ec2.internal:20040" : { "inUse" : 0 }, "ip-10-128-56-199.ec2.internal:20041" : { "inUse" : 0 }, "ip-10-128-56-199.ec2.internal:20042" : { "inUse" : 0 }, "ip-10-128-56-199.ec2.internal:20043" : { "inUse" : 3 } }
Each host currently has metrics for inUse, while each pool also has a poolInUse and a poolWasUsedOnce. We could add a wasUsedOnce metric to FTDC for each host, and this assert.soon could depend on the host's wasUsedOnce instead of a pool-wide poolWasUsedOnce.
The easier fix here would be to just relax the assert.soon and add a comment considering it's possible that the connection servicing {find:"shards"} or other queries may add 1 or more to the poolWasUsedOnce connection count.