Here is what I have learned.
On this one install
There are rows in
party_approved_member_map
which are not identity rows
which do not correspond to any group or relational segement.
That is. A user is a member of the dotlrn_admin_rel relational segment (according to the party_approved_member_map) without being a member of the community.
what happened was
1) user was an administrator of community, but for unknown reason the row in party_approved_member_map has an invalid tag of 1.
2) The user was later removed from the community, and the membership_rel was removed. The row in party_approved_member_map was not removed because the plsql procedure did not remove the row because the tag did not match the rel_id that was deleted.