@Override
	public Collection<? extends TraceSection> getSectionsIntersecting(Lifespan lifespan,
			AddressRange range) {
		if (trace.getObjectManager().hasSchema()) {
			return trace.getObjectManager()
					.getObjectsIntersecting(lifespan, range, TraceObjectSection.KEY_RANGE,
						TraceObjectSection.class);
		}
		return delegateRead(range.getAddressSpace(),
			m -> m.getSectionsIntersecting(lifespan, range), Set.of());
	}
TODO: Certainly, any two sections at the same path will belong to the same module and
so have the same lifespan, no? I suppose this logic is only true in objects mode...,
and there, the logic is performed by the value key duplicate check.
Ghidra/Debug/Framework-TraceModeling/src/main/java/ghidra/trace/database/module/DBTraceModuleManager.java