8000 Too long timeout resolution of SimpleResolver · Issue #273 · dnsjava/dnsjava · GitHub
[go: up one dir, main page]

Skip to content
Too long timeout resolution of SimpleResolver #273
Closed
@rafaltelaczynski

Description

@rafaltelaczynski

Context

We are using dnsjava library in our high-performance production system that requires us to handle request within less than 1000ms.
From DNS library perspective, we are using single ExtendedResolver instance with multiple(8 in production environment, currently) SimpleResolvers to resolve DNS names using UDP transport.

Currently, we are still using v2.1.8 where SimpleResolver timeout resolution is 100ms.
ExtendedResolver is initiated with timeout of 100ms meaning, given production configuration, in worst-case scenario where only last DNS server address is up, it takes 700ms to complete the name resolution.

Problem
Recently, we tried to upgrade the library to the newest version(v3.5.2). Initially, we came across unexpected behaviour where each attempt to use inactive address would take 1000ms before using the next one, instead of 100ms(as in previous version). We then adapted the implementation to new timeout configuration(initiating set of SimpleResolvers with configured timeout of 100ms for each of them and leaving ExtendedResolver's timeout with default value of 10s, but we were still facing unexpected delay of 1s between every failed request.

Trying to find an explanation, we found this commit: ecff2a7#diff-e7c3e7095c50ede819690052d4f33ba68bc56a1885243c544f4d857a66bc5a65R57

Question
Could you, please, provide the reason for that change? Is there a way to make it configurable atleast? Unfortunately, in our case it means the new version of the library is unusable.

Best regards,
Rafal

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      0