The sqlite-based mergeinfo code doesn't know anything about whether paths exist or don't exist, or about deletions, etc; it just knows about mergeinfo properties that have at some point existed. (This is a problem in and of itself, which may be resolved by removing the sqlite index, or by augmenting it.) Thus, the mergeinfo-query APIs haven't thrown errors when called with path/rev pairs that don't exist. Thus, a quite a bit of client and repos code calls the APIs with such paths. Generally this is a symptom of a larger bug. We will probably merge the reintegrate branch to trunk soon; this uses an in-FS mechanism for mergeinfo queries, which means that these errors will start showing up and will need to be fixed at the client/repos level.