Modified: jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/query/QueryManagerImpl.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/query/QueryManagerImpl.java?rev=1715773&r1=1715772&r2=1715773&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/query/QueryManagerImpl.java (original) +++ jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/query/QueryManagerImpl.java Mon Nov 23 11:44:22 2015 @@ -28,7 +28,7 @@ import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Map.Entry; -import java.util.concurrent.atomic.AtomicLong; +import java.util.concurrent.TimeUnit; import javax.jcr.Node; import javax.jcr.RepositoryException; @@ -48,6 +48,8 @@ import org.apache.jackrabbit.oak.jcr.que import org.apache.jackrabbit.oak.jcr.session.SessionContext; import org.apache.jackrabbit.oak.plugins.memory.PropertyStates; import org.apache.jackrabbit.oak.spi.query.PropertyValues; +import org.apache.jackrabbit.oak.stats.MeterStats; +import org.apache.jackrabbit.oak.stats.TimerStats; /** * The implementation of the corresponding JCR interface. @@ -59,8 +61,8 @@ public class QueryManagerImpl implements private final QueryObjectModelFactoryImpl qomFactory; private final QueryEngine queryEngine; private final HashSet<String> supportedQueryLanguages = new HashSet<String>(); - private final AtomicLong queryCount; - private final AtomicLong queryDuration; + private final MeterStats queryCount; + private final TimerStats queryDuration; public QueryManagerImpl(SessionContext sessionContext) { this.sessionDelegate = sessionContext.getSessionDelegate(); @@ -68,8 +70,8 @@ public class QueryManagerImpl implements qomFactory = new QueryObjectModelFactoryImpl(this, sessionContext); queryEngine = sessionDelegate.getQueryEngine(); supportedQueryLanguages.addAll(queryEngine.getSupportedQueryLanguages()); - queryCount = sessionContext.getCounter(QUERY_COUNT); - queryDuration = sessionContext.getCounter(QUERY_DURATION); + queryCount = sessionContext.getMeter(QUERY_COUNT); + queryDuration = sessionContext.getTimer(QUERY_DURATION); } @Override @@ -132,9 +134,9 @@ public class QueryManagerImpl implements Result r = queryEngine.executeQuery( statement, language, limit, offset, bindMap, sessionContext.getSessionLocalMappings()); - queryCount.incrementAndGet(); + queryCount.mark(); long dt = (System.nanoTime() - t0) / 1000000; - queryDuration.addAndGet(dt); + queryDuration.update(dt, TimeUnit.MILLISECONDS); sessionContext.getStatisticManager() .logQueryEvaluationTime(language, statement, dt); return new QueryResultImpl(sessionContext, r);
Modified: jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/session/SessionContext.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/session/SessionContext.java?rev=1715773&r1=1715772&r2=1715773&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/session/SessionContext.java (original) +++ jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/session/SessionContext.java Mon Nov 23 11:44:22 2015 @@ -25,7 +25,6 @@ import java.util.Iterator; import java.util.List; import java.util.Map; import java.util.Set; -import java.util.concurrent.atomic.AtomicLong; import javax.annotation.CheckForNull; import javax.annotation.Nonnull; @@ -66,6 +65,9 @@ import org.apache.jackrabbit.oak.spi.sec import org.apache.jackrabbit.oak.spi.whiteboard.Whiteboard; import org.apache.jackrabbit.oak.spi.xml.ProtectedItemImporter; import org.apache.jackrabbit.oak.stats.StatisticManager; +import org.apache.jackrabbit.oak.stats.CounterStats; +import org.apache.jackrabbit.oak.stats.MeterStats; +import org.apache.jackrabbit.oak.stats.TimerStats; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -189,8 +191,18 @@ public class SessionContext implements N } @Nonnull - public AtomicLong getCounter(Type type) { - return statisticManager.getCounter(type); + public MeterStats getMeter(Type type){ + return statisticManager.getMeter(type); + } + + @Nonnull + public TimerStats getTimer(Type type) { + return statisticManager.getTimer(type); + } + + @Nonnull + public CounterStats getCount(Type type) { + return statisticManager.getStatsCounter(type); } @Nonnull Modified: jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/session/SessionImpl.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/session/SessionImpl.java?rev=1715773&r1=1715772&r2=1715773&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/session/SessionImpl.java (original) +++ jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/session/SessionImpl.java Mon Nov 23 11:44:22 2015 @@ -27,7 +27,6 @@ import java.io.OutputStream; import java.security.AccessControlException; import java.util.Collections; import java.util.Set; -import java.util.concurrent.atomic.AtomicLong; import javax.annotation.CheckForNull; import javax.annotation.Nonnull; @@ -69,6 +68,7 @@ import org.apache.jackrabbit.oak.jcr.ses import org.apache.jackrabbit.oak.jcr.xml.ImportHandler; import org.apache.jackrabbit.oak.spi.security.authentication.ImpersonationCredentials; import org.apache.jackrabbit.oak.spi.security.authorization.permission.Permissions; +import org.apache.jackrabbit.oak.stats.CounterStats; import org.apache.jackrabbit.util.Text; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -83,14 +83,14 @@ public class SessionImpl implements Jack private SessionContext sessionContext; private SessionDelegate sd; - private final AtomicLong sessionCounter; + private final CounterStats sessionCounter; public SessionImpl(SessionContext sessionContext) { this.sessionContext = sessionContext; this.sd = sessionContext.getSessionDelegate(); - this.sessionCounter = sessionContext.getCounter(SESSION_COUNT); - sessionCounter.incrementAndGet(); - sessionContext.getCounter(Type.SESSION_LOGIN_COUNTER).incrementAndGet(); + this.sessionCounter = sessionContext.getCount(SESSION_COUNT); + sessionCounter.inc(); + sessionContext.getMeter(Type.SESSION_LOGIN_COUNTER).mark(); } static void checkIndexOnName(String jcrPath) throws RepositoryException { @@ -456,7 +456,7 @@ public class SessionImpl implements Jack @Override public void logout() { if (isLive()) { - sessionCounter.decrementAndGet(); + sessionCounter.dec(); try { sd.performVoid(new SessionOperation<Void>("logout") { @Override Modified: jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/session/SessionStats.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/session/SessionStats.java?rev=1715773&r1=1715772&r2=1715773&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/session/SessionStats.java (original) +++ jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/session/SessionStats.java Mon Nov 23 11:44:22 2015 @@ -76,7 +76,7 @@ public class SessionStats implements Ses this.refreshStrategy = refreshStrategy; this.sessionDelegate = sessionDelegate; - long activeSessionCount = statisticManager.getCounter(Type.SESSION_COUNT).get(); + long activeSessionCount = statisticManager.getStatsCounter(Type.SESSION_COUNT).getCount(); initStackTrace = (activeSessionCount > INIT_STACK_TRACE_THRESHOLD) ? new Exception("The session was opened here:") : null; }
