Skip to main content

Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

EclipseLink/Development/Indigo/Multi-Tenancy

< EclipseLink‎ | Development‎ | Indigo
Revision as of 11:45, 9 February 2011 by Unnamed Poltroon (Talk) (Core)

See bug??? Bug 335601

Multi-Tenancy

The goal of this feature is to allow multiple tenants on the same database schema.

Requirements

Configuration

The tenant id field and a tenant id value will be configured through EclipseLink properties within the persistence.xml file.

  • eclipselink.multi-tenant.id
  • eclipselink.multi-tenant.id-column

When a multi-tenant id is specified, the multi-tenant column will default to "TENANT_ID" if it is not specified by the user. That column is then expected to be available from the following tables of the schema:

  1. @Table

It is not expected for the following tables:

  1. @SecondaryTable?
  2. @CollectionTable
  3. @JoinTable

When using DDL generation, the user need not worry about this. The DDL generation framework will be responsible for ensuring all necessary tables have a tenant id column.

Core

The tenant id and tenant id column will be applied in two places.

  1. We will leverage the current additional join expression from the DescriptorQueryManager to filter tenants. This is similar to the Additional Criteria feature.

DDL generation

Back to the top