private BufferNode createNewBufferNode(int id, BufferNode checkpointHead,
			BufferNode versionHead) {

		// Create new buffer node at checkpoint
		BufferNode node = new BufferNode(id, checkpointHead.checkpoint);

		// Add source node to checkpoint list
		node.addToCheckpoint(checkpointHead);

		// Create new buffer list for id and add to buffer table
		if (versionHead == null) {
			createNewBufferList(id, node);
		}
		else {
			node.addToVersion(versionHead);
		}

		return node;
	}
Create a new buffer node associated with the specified checkpoint list.
If versionHead is null, a new buffer table entry and version list will be created.
@param id buffer id
@param checkpointHead head of checkpoint list
@param versionHead head of buffer version list, may be null
@return new buffer node
Ghidra/Framework/DB/src/main/java/db/buffers/BufferMgr.java