Uploaded image for project: 'James Server'
  1. James Server
  2. JAMES-679

Make sure our container use an expiration for cached dns data


    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 2.3.0
    • Fix Version/s: 2.3.1
    • Component/s: None
    • Labels:


      Noel J. Bergman wrote:
      > Stefano Bagnara wrote:
      >> but it could happen (or maybe it already happen) that some third party
      >> library we use still make use of InetAddress "flawed" methods, and the
      >> above property would save us from the possible OutOfMemory because of
      >> the unbounded cache.
      > Perhaps, but I would rather vet the code, and be more careful about what we use. Now that we know one of the things to look for carefully, we can avoid it. The better solution is to avoid the problem, not mask it.
      > — Noel

      I agree: we avoid it in trunk because of this.

      About the "not masking" I think that even if we solved it we should better add the property because our users could easily make our mistakes and use InetAddress in their mailets. The fact that DNSServer is not part of the mailet apis incentivate them to use InetAdress and not the James Server specific service.

      So I think we should really add the ttl property.

      Either "-Dsun.net.inetaddr.ttl=10" in the command line or
      java.security.Security.setProperty("networkaddress.cache.ttl" , "10");
      Should work.


          Issue Links



              • Assignee:
                bago Stefano Bagnara
                bago Stefano Bagnara
              • Votes:
                0 Vote for this issue
                0 Start watching this issue


                • Created: