Was this a very old installation that has been upgraded but originally installed quite a long time ago?
There was a point at which we added the guids to those tables and since pgsql has no native guid type I had write something to generate the guids in .NET and update the columns in the db as part of the upgrade. Its possible they didn't all get updated, new pages should always have the guid because we pass it in from .NET code when creating new pages.
At any rate, the only theory I have of how friendly urls could get deleted is if more than one page has the empty guid 00000000-0000-0000-0000-000000000000 as its guid, then if one of those pages is deleted it may delete the friendly url for other pages if they all have the same guid or empty guid, because when a page is deleted it will delete friendly urls with its own page guid.
If you can generate unique guids for any rows in mp_pages that have empty guid and then re-create the friendly urls with the correct guids it should be fine going forward.
Guids can be generated in MS SQL by SELECT newid() and can be generated in .NET code by Guid.NewGuid().ToString();
Anyway, thats my best theory, hope it helps.
Joe