Hi Sean,
Thank you for taking some time to answer me.
Below you will find the full configuration of one of my endpoint which is hosted in a worker role. All of our worker role have a similar configuration.
This is not entirely true that there is no activity on the second namespace, but there is no message that passes through it, never. There are queries (I guess to try to retrieve messages) but no message. It is the azure portal that shows me (See the pictures below). I also use mutators to check it.
Here the queries and message of the first namespace and on the secondnamesapce
Here my configuration
public void Customize(EndpointConfiguration endpointConfiguration)
{
endpointConfiguration.UseSerialization<NewtonsoftSerializer
>();
[details=Persistence]
#region Persistence
//Saga
var persistenceSaga = endpointConfiguration.UsePersistence<AzureStoragePersistence, StorageType.Sagas>();
persistenceSaga.ConnectionString(CloudConfigurationManager.GetSetting(“NServiceBusPersistenceConnectionString”));
persistenceSaga.CreateSchema(true);
// Added in Version 1.4
persistenceSaga.AssumeSecondaryIndicesExist();
//Subscriptions
var persistenceSubs = endpointConfiguration.UsePersistence<AzureStoragePersistence, StorageType.Subscriptions>();
persistenceSubs.ConnectionString(CloudConfigurationManager.GetSetting(“NServiceBusPersistenceConnectionString”));
persistenceSubs.TableName(“MySubscriptions”);
persistenceSubs.CreateSchema(true);
// Added in Version 1.3
persistenceSubs.CacheFor(TimeSpan.FromMinutes(1));
//Timeouts
var persistenceTimeouts = endpointConfiguration.UsePersistence<AzureStoragePersistence, StorageType.Timeouts>();
persistenceTimeouts.ConnectionString(CloudConfigurationManager.GetSetting(“NServiceBusPersistenceConnectionString”));
persistenceTimeouts.CreateSchema(true);
persistenceTimeouts.TimeoutManagerDataTableName(“TimeoutManager”);
persistenceTimeouts.TimeoutDataTableName(“TimeoutData”);
persistenceTimeouts.CatchUpInterval(3600);
persistenceTimeouts.PartitionKeyScope(“yyyy-MM-dd-HH”);
#endregion
[/details]
#region Transport
var transport = endpointConfiguration.UseTransport();
transport.BrokeredMessageBodyType(SupportedBrokeredMessageBodyTypes.Stream);
var partitioning = transport.NamespacePartitioning();
partitioning.UseStrategy();
partitioning.AddNamespace(
name: “namespace1”,
connectionString: CloudConfigurationManager.GetSetting(“NServiceBusTransportSB1ConnectionString”));
partitioning.AddNamespace(
name: “namespace2”,
connectionString: CloudConfigurationManager.GetSetting(“NServiceBusTransportSB2ConnectionString”));
endpointConfiguration.LimitMessageProcessingConcurrencyTo(Convert.ToInt32(CloudConfigurationManager.GetSetting(“MaximumConcurrencyLevel”)));
transport.Queues().LockDuration(TimeSpan.FromMinutes(5));
transport.Queues().MaxDeliveryCount(5);
#endregion
[details=Sanitization]
#region Sanitization homemade
var sanitization = transport.Sanitization();
sanitization.UseStrategy();
#endregion[/details]
[details=Topology]
#region Topology
transport.UseForwardingTopology();
#endregion[/details]
[details=Registration+Autofac]> #region Registration B2FDbContext + Autofac
var builder = new ContainerBuilder();
endpointConfiguration.RegisterComponents(
registration: configureComponents =>
{
configureComponents.ConfigureComponent(DependencyLifecycle.InstancePerCall);
});
var Container = builder.Build();
endpointConfiguration.UseContainer(
customizations: customizations =>
{
customizations.ExistingLifetimeScope(Container);
});
#endregion[/details]
[details=Audit/Error]
#region Audit/Error
endpointConfiguration.SendFailedMessagesTo(“error”);
endpointConfiguration.DisableFeature();
#endregion[/details]
}
Versions I use:
NServiceBus 6.4.2
NServiceBus.Autofac 6.0.1
NServiceBus.Azure.Transports.WindowsAzureServiceBus 7.2.9
NServiceBus.Hosting.Azure 7.1.3
NServiceBus.Newtonsoft.Json 1.1.0
NServiceBus.Persistence.AzureStorage 1.4.0
.Net Framework 4.5.2
Thanks