title: How to leave a message in the queue after failing masstrasit filter?
body: <p>Masstransit, but I have such a situation that several message consumers can be launched on one queue, I created a filter that could help me receive the necessary messages for those producers who made the request, but there is a problem that after the message gets into the filter it is marked as read.
  Is it possible to make it so that after hitting the filter and its unsuccessful passage, the message remains in the queue.</p>
  <pre><code>public class FilterConsumer &lt;TConsumer, TMessage&gt;: IFilter &lt;ConsumerConsumeContext &lt;TConsumer, TMessage&gt;&gt;
    where TConsumer: class
    where TMessage: class, ICacheKey {
    private readonly MemoryCacheHelper _cache;
  
    public FilterConsumer(IMemoryCache cache) {
      _cache = new MemoryCacheHelper(cache);
    }
    public void Probe(ProbeContext context) {
      context.CreateFilterScope(&quot;filterConsumer&quot;);
      context.Add(&quot;output&quot;, &quot;console&quot;);
    }
  
    public async Task Send(ConsumerConsumeContext &lt;TConsumer, TMessage&gt; context, IPipe &lt;ConsumerConsumeContext &lt; TConsumer, TMessage&gt;&gt; next) {
      Console.WriteLine(context.Message.CacheKey());
  
      if (_cache.CheckCache(context.Message.CacheKey()))
        await next.Send(context);
      else
        await context.NotifyConsumed(TimeSpan.Zero, $ &quot;Filtered&quot;);
  
    }
  }
  
   public class AccountsConsumerDefinition: ConsumerDefinition &lt; AccountsConsumer &gt; {
        private readonly IMemoryCache _cache;
        public AccountsConsumerDefinition(IMemoryCache cache) {
          _cache = cache;
        }
        protected override void ConfigureConsumer(IReceiveEndpointConfigurator endpointConfigurator, IConsumerConfigurator &lt;AccountsConsumer&gt; consumerConfigurator) {
          consumerConfigurator.ConsumerMessage &lt;AccountsBusResponse&gt; (m =&gt; m.UseFilter(new FilterConsumer &lt;AccountsConsumer, AccountsBusResponse&gt; (_cache)));
        }
      }
  
  services.AddMassTransit &lt; TBus &gt; (x =&gt; {
        if (consumer != null)
          x.AddConsumer &lt; TConsumer &gt; (consumerDifinition);
      }
  </code></pre>