I even deleted the clip, then recopied it into the clipboard but I got the same error. I'll email you the same database.
-DanWilson
Thanks for the database, it helps a lot. I can confirm your observations as well as my initial suspicion.
Some clips in the database have one of two problems:
(a) the main clip entry exists, so that the clip is displayed, but there is no actual data for the clip (the clipboard formats), i.e. Echo has nothing to put on clipboard.
(b) the main clip entry exists, and
some of its data exists, but the database has the clip's data only in HTML format (or only the rich text format). These clips can be copied (no error message in the status line), but they cannot be edited (there will be an additional error message if you try) and are therefore nearly useless as well.
As to why the database is in this state, I don't know yet. Echo requires that at least the plain text format or unicode text format is present for each clip. These formats cannot be deleted in the configuration and are always stored. If at least one of these two formats is not present, Echo will not even store such a clip in the database. In addition, these formats had to be present when Echo captured these clips, because without them Echo would not be able to display the clips in the list - and it does that.
This tells me that the clips are captured correctly, otherwise they could not even be displayed. Something happens later that causes those required formats to be removed, after which the clips become unusable.
One possibility is that there is a bug in the database maintenance routines (they changed somewhat in the current version). Perhaps Echo is deleting certain data it should not be deleting. I will recheck my sql code and will report of I find anything else.
I'm afraid the clips that won't load cannot be salvaged, as their data doesn't exist in the database. For the moment, I suggest that you disable database maintenance entirely to prevent any more clips from losing their data: Tools -> Preferences -> Database maintenance, and set AutomaticMaintenance to False. This means the clips will accumulate for a while, but this should not be a problem for at least several weeks. (You can always delete excess clips manually if you like, just as long as you don't use the Database Maintenance feature).
Meanwhile, I will try to find a fix asap.
I am also puzzled by this:
I even deleted the clip, then recopied it into the clipboard but I got the same error. I'll email you the same database.
If you tried to capture the same clip
without deleting it first, then Echo might ignore it as a duplicate (depending on settings), so that the missing clip would still be missing. But if you physically deleted the clip before capturing it again, then the clip should be stored in full and behave correctly immediately after capturing. Can you please confirm that this is not the case?
A bug in the db maintenance cannot explain this last behavior, since the maintenance has to be performed for the bug to show up.
So the most important question right now is:
does the bug (cannot load a clip) occur immediately after the clip has been captured? Or does it only occur at some
later time (perhaps after Echo has performed db maintenance)?