Skip to content

Intermittent same queries is taking more time. #280

Open
@domilgarg

Description

@domilgarg

Java version: Java 17
DB Packages:
runtimeOnly 'io.r2dbc:r2dbc-mssql:1.0.2.RELEASE'
implementation 'org.springframework.boot:spring-boot-starter-data-r2dbc'

Implementation DB config Snippet
` ConnectionFactoryOptions baseOptions = ConnectionFactoryOptions.parse(
"r2dbc:sqlserver://" + url);
ConnectionFactoryOptions ob = ConnectionFactoryOptions.builder().from(baseOptions)
.option(USER, user)
.option(PASSWORD, password)
.build();

ConnectionFactory connectionFactory = ConnectionFactories.get(ob);
ConnectionPoolConfiguration configuration = ConnectionPoolConfiguration.builder(
        connectionFactory)
    .maxIdleTime(Duration.ofMinutes(sqlTimeout))
    .initialSize(pool)
    .minIdle(minPoolSize)
    .maxSize(maxPoolSize) // MAX_CONNECTIONS as per RDS instance of 8 GB RAM = 200.
    .build();
return new ConnectionPool(configuration);

`

We are facing 2 intermittent issues.
1- Intermittently queries is taking more time and it is exceeding 1 sec timeout. Simple select query normally returning in 20ms but its P95 is 500ms. We are getting following exception.
TimeoutException: Did not observe any item or terminal signal within 1000ms in 'Mono.map ⇢ at com.thyrocare.laboms.dao.TechsoDbDao.getSampleDetails(TechsoDbDao.java:42)' (and no fallback has been configured)

2- Sometimes it is closing connections. We are getting MssqlconnectionclosedException.
ReactorNettyClient$MssqlConnectionClosedException: Connection closed

Pls suggest what we can do resolve these issues.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions