// if not we need to create it
if (child == null)
{
child = NodeFactory.getInstance().createNodeOfType(parent, child_name, fqn, parent, null, cache, version);
if (optimisticChildNodeMap == Collections.EMPTY_MAP)
optimisticChildNodeMap = new ConcurrentReaderHashMap();
optimisticChildNodeMap.put(child_name, child);
if (trace) log.trace("Adding child " + child_name);
childrenAdded.add(child);
childrenRemoved.remove(child);
}