oracle / nosql-java-sdk

SDK for Java for the Oracle NoSQL Database
https://www.oracle.com/database/nosql/
Universal Permissive License v1.0
24 stars 24 forks source link

Connection pool and auth refresh #22

Closed gmfeinberg closed 2 years ago

gmfeinberg commented 2 years ago

This branch contains code that does 2 major things:

  1. replaces the Netty-based connection pool with one that is a bit more flexible and also has the capability of keep one or more connections alive in the cloud service context by sending occasional messages to prevent the server side from closing idle connections. This pool also has simplified configuration, deprecating some existing configuration. The messages are purposely malformed so that they will generate an error but will be sufficient to keep a connection alive.
  2. Cloud-only: adds the ability (optional, default off) to automatically send authentication and authorization refresh requests to the server side when the signing signature is changed, which happens every 4 minutes. This out-of-band refresh prevents unexpected latencies that can occur if the refresh is done in the context of a data request. The refresh requests target specific tables but have illegal keys in them so that they trigger auth* operations but do not consume table capacity