Andrew, No, it has not been fixed yet and it (and thanks for pointing
out Patrick's solution). I think there is still a locking problem with
Patrick's code (not based on anything but hearsay though) but the more
commonly encountered problem, besides the performance one that got me
looking into it, is the duped tree_sortkeys. There are some places
where code like Patricks has been implemented (forums,
dotlrn_communities_all, dotlrn_community_types all maintain a
max_child_sortkey in the parent) but it's not in: sp_folders,
bm_bookmarks, acs_messages, cr_keywords, cr_items, site_nodes,
acs_privilege_hierarchy_index, acs_objects, and acs_object_types.
Yes, most of the oracle datamodel uses connect by for this rather than
tree_sortkey but they are roughly equivalent. The tree_sortkey stuff
has been implemented in oracle is used in dotlrn (for the
dotlrn_communities_all and dotlrn_community_types tables). My gut
tells me tree_sortkey is a better answer for heirarchies that are
mostly static but I am not aware of anyone having benchmarked things.