|
// Note: When a path not declared during bus producer/consumer declarations (it is dynamic), e.g. for RequestResponse - the path kind is not known at this point, so we assume it is a queue |
|
// See SqsRequestResponseBuilderExtensions.ReplyToQueue |
|
var pathMeta = await TopologyCache.GetMetaWithPreloadOrException(path, PathKind.Queue, cancellationToken); |
if a meta hasnt been preloaded by provisioning, even though a topic producer has been registered, pathkind of queue is assumed. this then breaks when actually publishing a message (Queue does not exist exception from AWS SQS)
workaround: setting provisioning to true, but disabling all creation.
options.TopologyProvisioning.Enabled = true;
options.TopologyProvisioning.CanConsumerCreateTopic = false;
options.TopologyProvisioning.CanConsumerCreateQueue = false;
options.TopologyProvisioning.CanProducerCreateQueue = false;
options.TopologyProvisioning.CanProducerCreateTopic = false;
options.TopologyProvisioning.CanConsumerCreateTopicSubscription = false;
SlimMessageBus/src/SlimMessageBus.Host.AmazonSQS/SqsMessageBus.cs
Lines 138 to 140 in 963fa28
if a meta hasnt been preloaded by provisioning, even though a topic producer has been registered, pathkind of queue is assumed. this then breaks when actually publishing a message (Queue does not exist exception from AWS SQS)
workaround: setting provisioning to true, but disabling all creation.