diff --git a/src/DocumentDbTests/DocumentDbTests.csproj b/src/DocumentDbTests/DocumentDbTests.csproj index f332d2a909..7cff7b583b 100644 --- a/src/DocumentDbTests/DocumentDbTests.csproj +++ b/src/DocumentDbTests/DocumentDbTests.csproj @@ -56,6 +56,9 @@ LongDoc.cs + + Documents\SingleTenantedDocument.cs + Documents\StringDoc.cs diff --git a/src/DocumentDbTests/MultiTenancy/conjoined_multi_tenancy.cs b/src/DocumentDbTests/MultiTenancy/conjoined_multi_tenancy.cs index c6f7ba2c64..96a7d88aca 100644 --- a/src/DocumentDbTests/MultiTenancy/conjoined_multi_tenancy.cs +++ b/src/DocumentDbTests/MultiTenancy/conjoined_multi_tenancy.cs @@ -773,4 +773,21 @@ public async Task can_delete_a_document_by_id_and_tenant_string() var blue = theStore.QuerySession("Red"); (await blue.LoadAsync(target.Id)).ShouldNotBeNull(); } + + [Fact] + public async Task store_document_marked_with_single_tenant_attribute() + { + var target = new SingleTenantedDocument { Id = Guid.NewGuid() }; + + await using (var session = theStore.LightweightSession("Red")) + { + session.Store(target); + await session.SaveChangesAsync(); + } + + await using (var session = theStore.QuerySession("Blue")) + { + (await session.LoadAsync(target.Id)).ShouldNotBeNull(); + } + } } diff --git a/src/Marten.Testing/Documents/SingleTenantedDocument.cs b/src/Marten.Testing/Documents/SingleTenantedDocument.cs new file mode 100644 index 0000000000..e1d9526995 --- /dev/null +++ b/src/Marten.Testing/Documents/SingleTenantedDocument.cs @@ -0,0 +1,10 @@ +using System; +using Marten.Schema; + +namespace Marten.Testing.Documents; + +[SingleTenanted] +public class SingleTenantedDocument +{ + public Guid Id { get; set; } +} diff --git a/src/Marten/Schema/SingleTenantedAttribute.cs b/src/Marten/Schema/SingleTenantedAttribute.cs index 1e4aa746dc..63d76a35af 100644 --- a/src/Marten/Schema/SingleTenantedAttribute.cs +++ b/src/Marten/Schema/SingleTenantedAttribute.cs @@ -15,7 +15,7 @@ public class SingleTenantedAttribute: MartenAttribute { public override void Modify(DocumentMapping mapping) { - mapping.TenancyStyle = TenancyStyle.Conjoined; + mapping.TenancyStyle = TenancyStyle.Single; if (mapping.Partitioning != null && mapping.Partitioning is ListPartitioning lp && lp.PartitionManager is ManagedListPartitions) {