Skip to content

Commit 7018f65

Browse files
authored
EclipseLink: add PrimaryKey to policy mapping records JPA model (#1403)
1 parent 63e0190 commit 7018f65

File tree

3 files changed

+13
-0
lines changed

3 files changed

+13
-0
lines changed

extension/persistence/jpa-model/build.gradle.kts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,8 @@ plugins {
2424

2525
dependencies {
2626
implementation(project(":polaris-core"))
27+
implementation(libs.eclipselink)
28+
2729
compileOnly(libs.jakarta.validation.api)
2830
compileOnly(libs.jakarta.annotation.api)
2931
compileOnly(libs.jakarta.persistence.api)

extension/persistence/jpa-model/src/main/java/org/apache/polaris/jpa/models/ModelPolicyMappingRecord.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,14 @@
1818
*/
1919
package org.apache.polaris.jpa.models;
2020

21+
import jakarta.persistence.Column;
2122
import jakarta.persistence.Entity;
2223
import jakarta.persistence.Id;
2324
import jakarta.persistence.Index;
2425
import jakarta.persistence.Table;
2526
import jakarta.persistence.Version;
2627
import org.apache.polaris.core.policy.PolarisPolicyMappingRecord;
28+
import org.eclipse.persistence.annotations.PrimaryKey;
2729

2830
@Entity
2931
@Table(
@@ -33,6 +35,14 @@
3335
name = "POLICY_MAPPING_RECORDS_BY_POLICY_INDEX",
3436
columnList = "policyCatalogId,policyId,targetCatalogId,targetId")
3537
})
38+
@PrimaryKey(
39+
columns = {
40+
@Column(name = "targetCatalogId"),
41+
@Column(name = "targetId"),
42+
@Column(name = "policyTypeCode"),
43+
@Column(name = "policyCatalogId"),
44+
@Column(name = "policyId")
45+
})
3646
public class ModelPolicyMappingRecord {
3747
// id of the catalog where target entity resides
3848
@Id private long targetCatalogId;

getting-started/assets/eclipselink/persistence.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
<class>org.apache.polaris.jpa.models.ModelEntityChangeTracking</class>
2929
<class>org.apache.polaris.jpa.models.ModelEntityDropped</class>
3030
<class>org.apache.polaris.jpa.models.ModelGrantRecord</class>
31+
<class>org.apache.polaris.jpa.models.ModelPolicyMappingRecord</class>
3132
<class>org.apache.polaris.jpa.models.ModelPrincipalSecrets</class>
3233
<class>org.apache.polaris.jpa.models.ModelSequenceId</class>
3334
<shared-cache-mode>NONE</shared-cache-mode>

0 commit comments

Comments
 (0)