@Override
	public String[] getPath() {
		try (LockHold hold = LockHold.lock(manager.lock.readLock())) {
			checkIsValid();
			if (isGlobal()) {
				return new String[] { getName() };
			}
			ArrayList<String> list = new ArrayList<>();
			if (parent != manager.globalNamespace) {
				parent.doGetPath(list);
			}
			list.add(getName());
			return list.toArray(new String[list.size()]);
		}
	}
{@inheritDoc}

<p>
NOTE: If the IDs match, then the symbols are considered equal, regardless of their other
attributes. This mechanic seems required to support the whole "placeholder" idea. TODO: The
"placeholder" thing may no longer be applicable.
Ghidra/Debug/Framework-TraceModeling/src/main/java/ghidra/trace/database/symbol/AbstractDBTraceSymbol.java