@Override
	public DBTraceMemoryRegion getLiveRegionByPath(long snap, String path) {
		try (LockHold hold = LockHold.lock(lock.readLock())) {
			for (DBTraceMemoryRegion region : regionCache.keySet()) {
				if (!region.getLifespan().contains(snap)) {
					continue;
				}
				if (!path.equals(region.getPath())) {
					continue;
				}
				return region;
			}
			for (DBTraceMemoryRegion region : regionsByPath.get(path)) {
				if (!region.getLifespan().contains(snap)) {
					continue;
				}
				regionCache.put(region, region);
				return region;
			}
			return null;
		}
	}
Implements {@link TraceMemorySpace} using a database-backed copy-on-write store.
Ghidra/Debug/Framework-TraceModeling/src/main/java/ghidra/trace/database/memory/DBTraceMemorySpace.java