docs: @Override
      public boolean idExists(String id) {
          if (com.ibm.ejs.ras.TraceComponent.isAnyTracingEnabled() && LoggingUtil.SESSION_LOGGER_CORE.isLoggable(Level.FINE)) {
              LoggingUtil.SESSION_LOGGER_CORE.entering(methodClassName, methodNames[ID_EXISTS], id);
          }
  
          Object sessInUse;
          boolean found = false;
  
          SessionManagerRegistry _sessionManagerRegistry = SessionManagerRegistry.getSessionManagerRegistry();
          // Since the session manager can be configured per application, we need to
          // look at
          // each entry individually since some of the contexts can have database/mtm
          // persistence
          // enabled while others are using memory
  
          // Look in memory first for improved performance
          Enumeration vEnum = _sessionManagerRegistry.getSessionManagers();
          IStore tempStore;
          while (vEnum.hasMoreElements() && !found) {
              IGenericSessionManager sm = (IGenericSessionManager) vEnum.nextElement();
              if (sm == null) // || sm == this)
                  continue;
              tempStore = sm.getIStore();
              if (tempStore == this)
                  continue; // don't bother checking our own store
              sessInUse = tempStore.getFromMemory(id);
              if (sessInUse != null)
                  found = true;
          }
  
          if (found) {
              if (com.ibm.ejs.ras.TraceComponent.isAnyTracingEnabled() && LoggingUtil.SESSION_LOGGER_CORE.isLoggable(Level.FINER)) {
                  String s = "Found in Cache/Mem";
                  LoggingUtil.SESSION_LOGGER_CORE.exiting(methodClassName, methodNames[ID_EXISTS], s);
              }
              return found;
          }
  
          // Check our current external store first.
          // This is probably the most likely
          // Also, if the sessionId has been recently invalidated and
          // checkRecentlyInvalidList is true, we should return true without checking
          // other backends.
          found = this.isPresentInExternalStore(id);
          if (found) {
              if (com.ibm.ejs.ras.TraceComponent.isAnyTracingEnabled() && LoggingUtil.SESSION_LOGGER_CORE.isLoggable(Level.FINE)) {
                  LoggingUtil.SESSION_LOGGER_CORE.exiting(methodClassName, methodNames[ID_EXISTS], Boolean.valueOf(found));
              }
              return found;
          }
  
          // Search the persistent stores for the sessionid
          Enumeration enum3 = _sessionManagerRegistry.getSessionManagers();
          while (enum3.hasMoreElements()) {
              IGenericSessionManager sm = (IGenericSessionManager) enum3.nextElement();
              if (sm == null) // || sm == this)
                  continue;
              else {
                  tempStore = sm.getIStore();
                  if (tempStore == this)
                      continue; // don't bother checking our own store as we already checked
                                // it above
                  found = tempStore.isPresentInExternalStore(id);
                  if (found) {
                      break;
                  }
              }
          }
  
          if (com.ibm.ejs.ras.TraceComponent.isAnyTracingEnabled() && LoggingUtil.SESSION_LOGGER_CORE.isLoggable(Level.FINER)) {
              String s = "After persistent store scan returning: " + found;
              LoggingUtil.SESSION_LOGGER_CORE.exiting(methodClassName, methodNames[ID_EXISTS], s);
          }
  
          return found;
      }