0

I am testing the behavior of ConnectionFactory such as io.r2dbc.postgresql.PostgresqlConnectionFactory and io.r2dbc.pool.ConnectionPool

There is a suspicion that PostgresqlConnectionFactory creates a new connection every time.

Can you tell me if this is true?

And can I use the r2dbc-proxy to see the number of open connections?

Kotlin:

val queryFormatter = QueryExecutionInfoFormatter.showAll()
val configuration = DefaultConfiguration()
val connectionFactoryProxy = ProxyConnectionFactory.builder(pool)
     .onAfterQuery {
        logger.info("QueryExecution: ${queryFormatter.format(it)}")
     }
     .build()

configuration.setConnectionFactory(connectionFactoryProxy)

Since QueryExecutionInfoFormatter registers the OnConnection consumer with itself, I thought it would show the number of open connections.

But it looks like it returns just a counter that increments each request.

[05-07 21:20:19,055] [INFO ] reactor-tcp-nio-2 - r2dbc: QueryExecution: Thread:reactor-tcp-nio-2(21) Connection:5 Transaction:{Create:0 Rollback:0 Commit:0} Success:True ...
[05-07 21:20:48,824] [INFO ] reactor-tcp-nio-2 - r2dbc: QueryExecution: Thread:reactor-tcp-nio-2(21) Connection:7 Transaction:{Create:0 Rollback:0 Commit:0} Success:True ...
[05-07 21:21:18,815] [INFO ] reactor-tcp-nio-2 - r2dbc: QueryExecution: Thread:reactor-tcp-nio-2(21) Connection:8 Transaction:{Create:0 Rollback:0 Commit:0} Success:True ...
[05-07 21:21:48,829] [INFO ] reactor-tcp-nio-2 - r2dbc: QueryExecution: Thread:reactor-tcp-nio-2(21) Connection:9 Transaction:{Create:0 Rollback:0 Commit:0} Success:True ...
[05-07 21:22:18,815] [INFO ] reactor-tcp-nio-2 - r2dbc: QueryExecution: Thread:reactor-tcp-nio-2(21) Connection:10 Transaction:{Create:0 Rollback:0 Commit:0} Success:True ...
skipkolch
  • 11
  • 2

0 Answers0