/** * Returns a new duration with this length negated. * This instance is immutable and is not altered. * * @return the new duration instance */ public Duration negated() { if (getMillis() == Long.MIN_VALUE) { throw new ArithmeticException("Negation of this duration would overflow"); } return new Duration(-getMillis()); }
/** * Creates a new Duration instance with a different millisecond length. * * @param duration the new length of the duration * @return the new duration instance */ public Duration withMillis(long duration) { if (duration == getMillis()) { return this; } return new Duration(duration); }
@Override public long getPollMs() { return pollPeriod.toStandardDuration().getMillis(); }
public boolean hasTimedOut() { if (scheduleTime < 0) { scheduleTime = System.currentTimeMillis(); return false; } else if (System.currentTimeMillis() - scheduleTime > config.getLoadTimeoutDelay().getMillis()) { return true; } else { return false; } }
public CoordinatorBasedSegmentHandoffNotifier( String dataSource, CoordinatorClient coordinatorClient, CoordinatorBasedSegmentHandoffNotifierConfig config ) { this.dataSource = dataSource; this.coordinatorClient = coordinatorClient; this.pollDurationMillis = config.getPollDuration().getMillis(); }
@Override public long getPollMs() { return pollPeriod.toStandardDuration().getMillis(); }
@Override public boolean apply(ImmutableWorkerInfo worker) { final boolean itHasBeenAWhile = System.currentTimeMillis() - worker.getLastCompletedTaskTime().getMillis() >= config.getWorkerIdleTimeout().toStandardDuration().getMillis(); return itHasBeenAWhile || !isValidWorker.apply(worker); } };
@Override public RejectionPolicy create(final Period windowPeriod) { final long windowMillis = windowPeriod.toStandardDuration().getMillis(); return new MessageTimeRejectionPolicy(windowMillis, windowPeriod); }
@Override protected void sendProxyRequest( HttpServletRequest clientRequest, HttpServletResponse proxyResponse, Request proxyRequest ) { proxyRequest.timeout(httpClientConfig.getReadTimeout().getMillis(), TimeUnit.MILLISECONDS); proxyRequest.idleTimeout(httpClientConfig.getReadTimeout().getMillis(), TimeUnit.MILLISECONDS); clientRequest.setAttribute(AuthConfig.DRUID_AUTHORIZATION_CHECKED, true); // auth is handled on the destination host super.sendProxyRequest(clientRequest, proxyResponse, proxyRequest); }
private ServletHolder buildServletHolder(Servlet servlet, DruidHttpClientConfig httpClientConfig) { ServletHolder sh = new ServletHolder(servlet); //NOTE: explicit maxThreads to workaround https://tickets.puppetlabs.com/browse/TK-152 sh.setInitParameter("maxThreads", Integer.toString(httpClientConfig.getNumMaxThreads())); //Needs to be set in servlet config or else overridden to default value in AbstractProxyServlet.createHttpClient() sh.setInitParameter("maxConnections", Integer.toString(httpClientConfig.getNumConnections())); sh.setInitParameter("idleTimeout", Long.toString(httpClientConfig.getReadTimeout().getMillis())); sh.setInitParameter("timeout", Long.toString(httpClientConfig.getReadTimeout().getMillis())); return sh; } }
@Override protected HttpClient createHttpClient() throws ServletException { HttpClient client = super.createHttpClient(); // override timeout set in ProxyServlet.createHttpClient setTimeout(httpClientConfig.getReadTimeout().getMillis()); return client; }
@Override protected HttpClient createHttpClient() throws ServletException { HttpClient client = super.createHttpClient(); // override timeout set in ProxyServlet.createHttpClient setTimeout(httpClientConfig.getReadTimeout().getMillis()); return client; }
@Override protected HttpClient createHttpClient() throws ServletException { HttpClient client = super.createHttpClient(); setTimeout(httpClientConfig.getReadTimeout().getMillis()); // override timeout set in ProxyServlet.createHttpClient return client; }
private DateTime getAllowedMinTime() { final Granularity segmentGranularity = schema.getGranularitySpec().getSegmentGranularity(); final Period windowPeriod = config.getWindowPeriod(); final long windowMillis = windowPeriod.toStandardDuration().getMillis(); return segmentGranularity.bucketStart( DateTimes.utc(Math.max(windowMillis, rejectionPolicy.getCurrMaxTime().getMillis()) - windowMillis) ); }
public static class TaskNotRunnableException extends RuntimeException { public TaskNotRunnableException(String message) { super(message); } }
@Test public void testMinMaxInterval() { Assert.assertEquals(Long.MAX_VALUE, Intervals.ETERNITY.toDuration().getMillis()); }
@Test public void testDurationToDateTime() { final DateTime origin = DateTimes.of("2012-01-02T05:00:00.000-08:00"); Granularity gran = new DurationGranularity( new Period("PT12H5M").toStandardDuration().getMillis(), origin ); Assert.assertEquals( DateTimes.of("2012-01-01T05:00:04.123-08:00"), gran.toDateTime(DateTimes.of("2012-01-01T05:00:04.123-08:00").getMillis()) ); }
@Test public void testMinMaxDuration() { final Duration duration = Intervals.ETERNITY.toDuration(); Assert.assertEquals(Long.MAX_VALUE, duration.getMillis()); Assert.assertEquals("PT9223372036854775.807S", duration.toString()); }
@Test public void testConfigsTakeOverrides() { final Duration funnyDuration = Duration.standardDays(100); final LookupCoordinatorManagerConfig config = new LookupCoordinatorManagerConfig(); config.setHostTimeout(funnyDuration); config.setAllHostTimeout(funnyDuration); config.setPeriod(funnyDuration.getMillis()); config.setThreadPoolSize(1200); Assert.assertEquals(funnyDuration, config.getHostTimeout()); Assert.assertEquals(funnyDuration, config.getAllHostTimeout()); Assert.assertEquals(funnyDuration.getMillis(), config.getPeriod()); Assert.assertEquals(1200, config.getThreadPoolSize()); }