Hard-deleted streams causing issues in category streams

Working on a new utility to administer Event Store and (among other things) delete streams, all via the HTTP API.

Here’s what I noticed. Scroll past the bullet points and code snippet for problems that are occurring.

  1. I have to add more safety and filtering logic in my Python client that filters out the dead stuff.
  2. Running a query or projection on this category stream now fails silently.
    Here is a sample query:
    fromCategory(‘es4py.test’)

.when({

‘$init’: function(s,e) {

return { count: 0 };

},

‘$any’: function(s,e) {

s.count++;

}

})

``

Just counting up all the events in all streams of this category. But I get zero response from the query when I run it, although the status reads: Completed/Stopped/Writing results

I’m guessing it’s because the query runner is falling down on the 410 responses from the dead events. When I run this query on other categories (with no hard-deleted streams) it works great.

Thoughts?

You are correct. Events that the event has been deleted will still
show the link.

Without this, how could you shard?

Yeah, but what about the whole - “queries and projections stop working on the category stream” problem? Is that considered a bug?

They don't they continue working. It is just the events are not resolved.

Your query from a projection gives a correct result 0. I am not sure
what the issue is here?

When I run that query on a category that contains hard-deleted streams, I get an empty result (which usually indicates that something didn’t go right.) Again, that’s a blank result panel, not a result of 0.

Hi Zach,

Would you be willing to provide a simple reproduction of what you are seeing as well as what version of Event Store you are using?

You are more than welcome to provide a db as a reproduction case if you like.

… and nothing in my error log btw.