kpm1985 commented on issue #786: Improve Oracle log message URL: https://github.com/apache/fluo/issues/786#issuecomment-353877844 I'd like to jump on this one, if that is cool @keith-turner This is line 371 from Oracle Client: log.warn("Waiting for timestamp from Oracle. Is it running? waitTotal={}s waitPeriod={}s", First there is a check to see if the timeout is positive (do we want to accept a value of 1?) int timeout = env.getConfiguration().getConnectionRetryTimeout(); if (timeout < 0) { In this block, if there is no positive value for the timeout, the values are assigned and an exponential backoff of 2^x is used until we have waited 60 seconds and then we warn out again if (timeout < 0) { long waitPeriod = 1; long waitTotal = 0; while (!tr.cdl.await(waitPeriod, TimeUnit.SECONDS)) { checkClosed(); waitTotal += waitPeriod; if (waitPeriod < MAX_ORACLE_WAIT_PERIOD) { waitPeriod *= 2; } log.warn("Waiting for timestamp from Oracle. Is it running? waitTotal={}s waitPeriod={}s", waitTotal, waitPeriod); Now if there was a good positive value from the Config then we bypass the exponential back off and go here, wait one time, and complete. All of these are using count down latch functions to wait (just to show understanding of code). } else if (!tr.cdl.await(timeout, TimeUnit.MILLISECONDS)) { throw new FluoException("Timed out (after " + timeout + "ms) trying to retrieve timestamp from Oracle. Is the Oracle running?"); } If that is correct, I can update the getStamp() documentation as a seperate issue if needed, and tackle this one. Thanks @keith-turner talk to you next week sometime!
---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: [email protected] With regards, Apache Git Services
