This is an automated email from the ASF dual-hosted git repository. kturner pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/accumulo.git
commit e6f1b7f855bb2393cb9f46be0af0d6fcff5aab62 Merge: 9e079dbbeb 95f128342f Author: Keith Turner <ktur...@apache.org> AuthorDate: Sat Aug 24 18:10:52 2024 +0000 Merge branch '2.1' .../accumulo/core/client/admin/ScanState.java | 17 ++++++- .../org/apache/accumulo/tserver/ScanServer.java | 2 +- .../tserver/TabletServerResourceManager.java | 2 +- .../accumulo/tserver/ThriftScanClientHandler.java | 26 +++++----- .../accumulo/tserver/session/MultiScanSession.java | 11 ++--- .../accumulo/tserver/session/ScanSession.java | 34 ++++++++----- .../apache/accumulo/tserver/session/Session.java | 10 +++- .../accumulo/tserver/session/SessionManager.java | 55 +++++++++++----------- .../tserver/session/SingleScanSession.java | 13 ++--- 9 files changed, 101 insertions(+), 69 deletions(-) diff --cc server/tserver/src/main/java/org/apache/accumulo/tserver/TabletServerResourceManager.java index 46a96e6b5c,8f90e42d7a..b7c3e011f2 --- a/server/tserver/src/main/java/org/apache/accumulo/tserver/TabletServerResourceManager.java +++ b/server/tserver/src/main/java/org/apache/accumulo/tserver/TabletServerResourceManager.java @@@ -779,7 -779,13 +779,7 @@@ public class TabletServerResourceManage } } - public void executeReadAhead(KeyExtent tablet, ScanDispatcher dispatcher, ScanSession scanInfo, - @SuppressWarnings("deprecation") - private static abstract class DispatchParamsImpl implements DispatchParameters, - org.apache.accumulo.core.spi.scan.ScanDispatcher.DispatchParmaters { - - } - + public void executeReadAhead(KeyExtent tablet, ScanDispatcher dispatcher, ScanSession<?> scanInfo, Runnable task) { task = ScanSession.wrap(scanInfo, task); diff --cc server/tserver/src/main/java/org/apache/accumulo/tserver/ThriftScanClientHandler.java index 71ea20e62d,666076caeb..7bf72ae839 --- a/server/tserver/src/main/java/org/apache/accumulo/tserver/ThriftScanClientHandler.java +++ b/server/tserver/src/main/java/org/apache/accumulo/tserver/ThriftScanClientHandler.java @@@ -247,15 -247,15 +247,15 @@@ public class ThriftScanClientHandler im protected ScanResult continueScan(TInfo tinfo, long scanID, SingleScanSession scanSession, long busyTimeout) throws NoSuchScanIDException, NotServingTabletException, - org.apache.accumulo.core.tabletserver.thrift.TooManyFilesException, - TSampleNotPresentException, ScanServerBusyException { + org.apache.accumulo.core.tabletscan.thrift.TooManyFilesException, TSampleNotPresentException, + ScanServerBusyException { - server.getScanMetrics().incrementContinueScan(1.0D); + server.getScanMetrics().incrementContinueScan(); - if (scanSession.nextBatchTask == null) { - scanSession.nextBatchTask = new NextBatchTask(server, scanID, scanSession.interruptFlag); + if (scanSession.getScanTask() == null) { + scanSession.setScanTask(new NextBatchTask(server, scanID, scanSession.interruptFlag)); server.getResourceManager().executeReadAhead(scanSession.extent, - getScanDispatcher(scanSession.extent), scanSession, scanSession.nextBatchTask); + getScanDispatcher(scanSession.extent), scanSession, scanSession.getScanTask()); } ScanBatch bresult; @@@ -470,12 -470,12 +470,12 @@@ private MultiScanResult continueMultiScan(long scanID, MultiScanSession session, long busyTimeout) throws TSampleNotPresentException, ScanServerBusyException { - server.getScanMetrics().incrementContinueScan(1.0D); + server.getScanMetrics().incrementContinueScan(); - if (session.lookupTask == null) { - session.lookupTask = new LookupTask(server, scanID); + if (session.getScanTask() == null) { + session.setScanTask(new LookupTask(server, scanID)); server.getResourceManager().executeReadAhead(session.threadPoolExtent, - getScanDispatcher(session.threadPoolExtent), session, session.lookupTask); + getScanDispatcher(session.threadPoolExtent), session, session.getScanTask()); } try { diff --cc server/tserver/src/main/java/org/apache/accumulo/tserver/session/SessionManager.java index 639b0cb6f2,7217ce9015..d24146f983 --- a/server/tserver/src/main/java/org/apache/accumulo/tserver/session/SessionManager.java +++ b/server/tserver/src/main/java/org/apache/accumulo/tserver/session/SessionManager.java @@@ -83,11 -87,11 +83,11 @@@ public class SessionManager } public long createSession(Session session, boolean reserve) { - long sid = random.nextLong(); + long sid = RANDOM.get().nextLong(); synchronized (session) { - Preconditions.checkArgument(session.state == State.NEW); - session.state = reserve ? State.RESERVED : State.UNRESERVED; + Preconditions.checkArgument(session.getState() == State.NEW); + session.setState(reserve ? State.RESERVED : State.UNRESERVED); session.startTime = session.lastAccessTime = System.currentTimeMillis(); } @@@ -227,16 -231,22 +227,16 @@@ return true; } - boolean removed = false; - synchronized (session) { - if (session.state == State.RESERVED) { + if (session.getState() == State.RESERVED) { return false; } - session.state = State.REMOVED; - + session.setState(State.REMOVED); - removed = true; } - if (removed) { - sessions.remove(sessionId); - } + sessions.remove(sessionId); - return removed; + return true; } static void cleanup(BlockingQueue<Session> deferredCleanupQueue, Session session) {