Skip to content

Commit 3c17b5f

Browse files
authored
remove DISCRIMINATOR mn.data.multi-tenancy.mode (#2916)
1 parent 4124a72 commit 3c17b5f

File tree

12 files changed

+20
-78
lines changed

12 files changed

+20
-78
lines changed

data-jdbc/src/test/groovy/io/micronaut/data/jdbc/h2/H2DiscriminatorMultitenancyRecordSpec.groovy

-1
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,6 @@ class H2DiscriminatorMultitenancyRecordSpec extends Specification implements H2T
4747
setup:
4848
EmbeddedServer embeddedServer = ApplicationContext.run(EmbeddedServer, getExtraProperties() + getProperties() + [
4949
'spec.name' : 'discriminator-multitenancy-record',
50-
'micronaut.data.multi-tenancy.mode' : 'DISCRIMINATOR',
5150
'micronaut.multitenancy.tenantresolver.httpheader.enabled': 'true',
5251
'datasource.default.schema-generate' : 'create-drop'
5352
], Environment.TEST)

data-runtime/src/main/java/io/micronaut/data/runtime/multitenancy/MultiTenancyMode.java

+1-5
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,5 @@ public enum MultiTenancyMode {
2929
/**
3030
* The same database, but different schemas are used to store each tenants data.
3131
*/
32-
SCHEMA,
33-
/**
34-
* The same database is used with a discriminator used to partition and isolate data.
35-
*/
36-
DISCRIMINATOR
32+
SCHEMA
3733
}

data-runtime/src/main/java/io/micronaut/data/runtime/multitenancy/conf/DiscriminatorMultiTenancyEnabledCondition.java

-33
This file was deleted.

data-tck/src/main/groovy/io/micronaut/data/tck/tests/AbstractDiscriminatorMultitenancySpec.groovy

-1
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,6 @@ abstract class AbstractDiscriminatorMultitenancySpec extends Specification {
4949
setup:
5050
EmbeddedServer embeddedServer = ApplicationContext.run(EmbeddedServer, getExtraProperties() + getProperties() + [
5151
'spec.name' : 'discriminator-multitenancy',
52-
'micronaut.data.multi-tenancy.mode' : 'DISCRIMINATOR',
5352
'micronaut.multitenancy.tenantresolver.httpheader.enabled': 'true',
5453
'datasource.default.schema-generate' : 'create-drop'
5554
], Environment.TEST)

doc-examples/hibernate-multitenancy-discriminator-example-java/src/main/resources/application.yml

-3
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,4 @@
11
micronaut:
2-
data:
3-
multi-tenancy:
4-
mode: DISCRIMINATOR
52
multitenancy:
63
tenantresolver:
74
httpheader:

doc-examples/jdbc-multitenancy-discriminator-example-java/src/main/resources/application.yml

-4
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,8 @@
11
micronaut:
2-
data:
3-
multi-tenancy:
4-
mode: DISCRIMINATOR
52
multitenancy:
63
tenantresolver:
74
httpheader:
85
enabled: true
9-
106
datasources:
117
default:
128
url: jdbc:h2:mem:db

doc-examples/mongo-multitenancy-discriminator-example-java/src/main/resources/application.yml

-3
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,4 @@
11
micronaut:
2-
data:
3-
multi-tenancy:
4-
mode: DISCRIMINATOR
52
multitenancy:
63
tenantresolver:
74
httpheader:

doc-examples/r2dbc-multitenancy-discriminator-example-java/src/main/resources/application.yml

-3
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,4 @@
11
micronaut:
2-
data:
3-
multi-tenancy:
4-
mode: DISCRIMINATOR
52
multitenancy:
63
tenantresolver:
74
httpheader:

src/main/docs/guide/multitenancy.adoc

+1-16
Original file line numberDiff line numberDiff line change
@@ -1,16 +1 @@
1-
Micronaut Data supports multi-tenancy to allow the use of multiple databases or schemas by a single micronaut application.
2-
3-
.Supported Multitenancy Modes
4-
5-
|===
6-
|Multitenancy Mode | Description
7-
8-
|DATASOURCE
9-
|A separate database with a separate connection pool is used to store each tenants data. Internally different repository operations / transaction manager instance will be used for each tenant.
10-
11-
|SCHEMA
12-
|The same database, but different schemas are used to store each tenants data. Only supported by JDBC/R2DBC/MongoDB (collections)
13-
14-
|DISCRIMINATOR
15-
|A single database/schema stores all tenants' data, but a discriminator column separates the data.
16-
|===
1+
You can use Micronaut Data to partition your data based on the current tenant. It leverages https://micronaut-projects.github.io/micronaut-multitenancy/snapshot/guide/[Micronaut Multi-tenancy] for tenant resolution.

src/main/docs/guide/shared/multitenancy/discriminatormode.adoc

+1-9
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,4 @@
1-
The DISCRIMINATOR mode uses a single entity's property to store the tenant id.
2-
3-
.Example of the configuration with one data source
4-
[configuration]
5-
----
6-
include::doc-examples/jdbc-multitenancy-discriminator-example-java/src/main/resources/application.yml[]
7-
----
8-
9-
The entity with multitenancy enabled requires a tenant property to be annotated with api:data.annotation.TenantId[]:
1+
When using discriminator column multitenancy, the entity with multitenancy enabled requires a property to be annotated with api:data.annotation.TenantId[]:
102

113
[source,java]
124
----
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
In addition to discriminator column multitenancy, Micronaut Data supports multi-tenancy to allow the use of multiple databases or schemas by a single micronaut application.
2+
3+
You can set the multitenancy mode by setting the property `micronaut.data.multi-tenancy.mode`.
4+
5+
.Supported Multitenancy Modes
6+
7+
|===
8+
|Multitenancy Mode | Description
9+
10+
|DATASOURCE
11+
|A separate database with a separate connection pool is used to store each tenants data. Internally different repository operations / transaction manager instance will be used for each tenant.
12+
13+
|SCHEMA
14+
|The same database, but different schemas are used to store each tenants data. Only supported by JDBC/R2DBC/MongoDB (collections)
15+
16+
|===

src/main/docs/guide/toc.yml

+1
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ shared:
3737
multitenancy:
3838
title: Multi-tenancy
3939
discriminatormode: Discriminator Mode
40+
multitenancymodes: Multitenancy modes
4041
datasourcemode: DataSource Mode
4142
schemamode: Schema Mode
4243
hibernate:

0 commit comments

Comments
 (0)