From 01333dfff4bdc9eb8f33bbc578d2d8e78c3e7232 Mon Sep 17 00:00:00 2001 From: Martin Weise <martin.weise@tuwien.ac.at> Date: Thu, 24 Nov 2022 21:37:14 +0100 Subject: [PATCH] Fixed the id columns --- .../at/tuwien/endpoints/TokenEndpoint.java | 5 +- .../impl/AuthenticationServiceImpl.java | 6 +- .../service/impl/MariaDbServiceImpl.java | 1 - .../IdentifierServiceIntegrationTest.java | 1 - fda-metadata-db/Dockerfile | 6 +- .../at/tuwien/api/auth/TokenBriefDto.java | 4 - .../java/at/tuwien/api/auth/TokenDto.java | 4 - .../at/tuwien/api/database/DatabaseDto.java | 4 - .../at/tuwien/api/database/ViewBriefDto.java | 4 - .../java/at/tuwien/api/database/ViewDto.java | 4 - .../api/identifier/RelatedIdentifierDto.java | 3 - .../tuwien/entities/container/Container.java | 5 - .../container/image/ContainerImage.java | 4 +- .../container/image/ContainerImageDate.java | 4 +- .../image/ContainerImageEnvironmentItem.java | 4 +- .../at/tuwien/entities/database/Database.java | 9 +- .../at/tuwien/entities/database/View.java | 7 +- .../tuwien/entities/database/table/Table.java | 4 +- .../database/table/columns/TableColumn.java | 4 +- .../table/columns/concepts/ColumnConcept.java | 4 +- .../table/columns/concepts/Concept.java | 4 +- .../tuwien/entities/identifier/Creator.java | 4 +- .../entities/identifier/Identifier.java | 9 +- .../identifier/RelatedIdentifier.java | 8 +- .../at/tuwien/entities/user/TimeSecret.java | 4 +- .../java/at/tuwien/entities/user/Token.java | 9 +- .../java/at/tuwien/entities/user/User.java | 5 +- .../main/java/at/tuwien/querystore/View.java | 3 - fda-metadata-db/setup-schema.sql | 179 ++---------------- fda-metadata-db/setup-user.sh | 6 - 30 files changed, 53 insertions(+), 265 deletions(-) delete mode 100644 fda-metadata-db/setup-user.sh diff --git a/fda-authentication-service/rest-service/src/main/java/at/tuwien/endpoints/TokenEndpoint.java b/fda-authentication-service/rest-service/src/main/java/at/tuwien/endpoints/TokenEndpoint.java index 7a7bea971b..0fed6c2a5a 100644 --- a/fda-authentication-service/rest-service/src/main/java/at/tuwien/endpoints/TokenEndpoint.java +++ b/fda-authentication-service/rest-service/src/main/java/at/tuwien/endpoints/TokenEndpoint.java @@ -67,10 +67,7 @@ public class TokenEndpoint { TokenNotEligableException { log.debug("endpoint create developer token, principal={}", principal); /* check */ - final List<Token> tokens = tokenService.findAll(principal) - .stream() - .filter(t -> Objects.isNull(t.getDeleted())) - .collect(Collectors.toList()); + final List<Token> tokens = tokenService.findAll(principal); log.trace("found all tokens {}", tokens); if (tokens.size() >= authenticationConfig.getTokenCount()) { log.error("Failed to create token, already exceeded maximum quota of {}", authenticationConfig.getTokenCount()); diff --git a/fda-authentication-service/services/src/main/java/at/tuwien/service/impl/AuthenticationServiceImpl.java b/fda-authentication-service/services/src/main/java/at/tuwien/service/impl/AuthenticationServiceImpl.java index c259757ba9..633fc469e5 100644 --- a/fda-authentication-service/services/src/main/java/at/tuwien/service/impl/AuthenticationServiceImpl.java +++ b/fda-authentication-service/services/src/main/java/at/tuwien/service/impl/AuthenticationServiceImpl.java @@ -75,7 +75,7 @@ public class AuthenticationServiceImpl implements AuthenticationService { @Override @Transactional - public void verifyToken(String authorization) throws TokenRevokedException { + public void verifyToken(String authorization) { final String hash = authenticationMapper.authorizationToTokenHash(authorization); final Optional<Token> optional = tokenRepository.findByTokenHash(hash); if (optional.isEmpty()) { @@ -83,10 +83,6 @@ public class AuthenticationServiceImpl implements AuthenticationService { return; } final Token token = optional.get(); - if (token.getDeleted() != null) { - log.warn("Token with hash {} is marked as revoked", hash); - throw new TokenRevokedException("Token is marked as revoked"); - } token.setLastUsed(Instant.now()); tokenRepository.save(token); log.info("Updated token usage of token with hash {}", hash); diff --git a/fda-database-service/services/src/main/java/at/tuwien/service/impl/MariaDbServiceImpl.java b/fda-database-service/services/src/main/java/at/tuwien/service/impl/MariaDbServiceImpl.java index fe796dfb50..2bf9fc672e 100644 --- a/fda-database-service/services/src/main/java/at/tuwien/service/impl/MariaDbServiceImpl.java +++ b/fda-database-service/services/src/main/java/at/tuwien/service/impl/MariaDbServiceImpl.java @@ -107,7 +107,6 @@ public class MariaDbServiceImpl extends HibernateConnector implements DatabaseSe } finally { dataSource.close(); } - database.setDeleted(Instant.now()) /* method has void, only for debug logs */; /* save in metadata database */ databaseRepository.deleteById(databaseId); log.info("Deleted database with id {}", databaseId); diff --git a/fda-identifier-service/rest-service/src/test/java/at/tuwien/service/IdentifierServiceIntegrationTest.java b/fda-identifier-service/rest-service/src/test/java/at/tuwien/service/IdentifierServiceIntegrationTest.java index 49818d1e61..1954c0579e 100644 --- a/fda-identifier-service/rest-service/src/test/java/at/tuwien/service/IdentifierServiceIntegrationTest.java +++ b/fda-identifier-service/rest-service/src/test/java/at/tuwien/service/IdentifierServiceIntegrationTest.java @@ -89,7 +89,6 @@ public class IdentifierServiceIntegrationTest extends BaseUnitTest { .created(IDENTIFIER_2_CREATED) .lastModified(IDENTIFIER_2_MODIFIED) .publicationYear(IDENTIFIER_2_PUBLICATION_YEAR) - .deleted(Instant.now().minus(4, ChronoUnit.MINUTES)) .publisher(IDENTIFIER_2_PUBLISHER) .type(IDENTIFIER_2_TYPE) .build()); diff --git a/fda-metadata-db/Dockerfile b/fda-metadata-db/Dockerfile index f9b7c8bece..32417ec6bf 100644 --- a/fda-metadata-db/Dockerfile +++ b/fda-metadata-db/Dockerfile @@ -25,17 +25,13 @@ ENV METADATA_USERNAME=root ENV METADATA_PASSWORD=dbrepo ENV MARIADB_DATABASE="${METADATA_DB}" ENV MARIADB_ROOT_PASSWORD="${METADATA_PASSWORD}" -ENV MARIADB_USERNAME="${METADATA_USERNAME}" -ENV MARIADB_PASSWORD="${METADATA_PASSWORD}" # Scripts are copied to /docker-entrypoint-initdb.d/ in docker-compose from analyze service HEALTHCHECK --interval=10s --timeout=5s --retries=12 CMD mysqladmin ping --user="$METADATA_USERNAME" --password="$METADATA_PASSWORD" --silent WORKDIR /docker-entrypoint-initdb.d -COPY ./setup-schema.sql ./1.sql -COPY ./setup-user.sh ./2.sh -RUN chmod +x ./2.sh +COPY ./setup-schema.sql ./setup-schema.sql WORKDIR /app diff --git a/fda-metadata-db/api/src/main/java/at/tuwien/api/auth/TokenBriefDto.java b/fda-metadata-db/api/src/main/java/at/tuwien/api/auth/TokenBriefDto.java index 6c22889045..cbb5060540 100644 --- a/fda-metadata-db/api/src/main/java/at/tuwien/api/auth/TokenBriefDto.java +++ b/fda-metadata-db/api/src/main/java/at/tuwien/api/auth/TokenBriefDto.java @@ -40,8 +40,4 @@ public class TokenBriefDto { @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ss.SSSXXX", timezone = "UTC") private Instant expires; - @Schema(example = "2020-08-04 11:13:00") - @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ss.SSSXXX", timezone = "UTC") - private Instant deleted; - } diff --git a/fda-metadata-db/api/src/main/java/at/tuwien/api/auth/TokenDto.java b/fda-metadata-db/api/src/main/java/at/tuwien/api/auth/TokenDto.java index 6e3868f520..1cf442509c 100644 --- a/fda-metadata-db/api/src/main/java/at/tuwien/api/auth/TokenDto.java +++ b/fda-metadata-db/api/src/main/java/at/tuwien/api/auth/TokenDto.java @@ -40,10 +40,6 @@ public class TokenDto { @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ss.SSSXXX", timezone = "UTC") private Instant expires; - @Schema(example = "2020-08-04 11:13:00") - @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ss.SSSXXX", timezone = "UTC") - private Instant deleted; - @NotBlank @Schema(example = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c") private String token; diff --git a/fda-metadata-db/api/src/main/java/at/tuwien/api/database/DatabaseDto.java b/fda-metadata-db/api/src/main/java/at/tuwien/api/database/DatabaseDto.java index 9b55f61af6..5abdf33d0b 100644 --- a/fda-metadata-db/api/src/main/java/at/tuwien/api/database/DatabaseDto.java +++ b/fda-metadata-db/api/src/main/java/at/tuwien/api/database/DatabaseDto.java @@ -62,8 +62,4 @@ public class DatabaseDto { @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ss.SSSXXX", timezone = "UTC") private Instant created; - @Schema(example = "2020-08-04 11:13:00") - @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ss.SSSXXX", timezone = "UTC") - private Instant deleted; - } diff --git a/fda-metadata-db/api/src/main/java/at/tuwien/api/database/ViewBriefDto.java b/fda-metadata-db/api/src/main/java/at/tuwien/api/database/ViewBriefDto.java index fa5346ca32..2b45c7b065 100644 --- a/fda-metadata-db/api/src/main/java/at/tuwien/api/database/ViewBriefDto.java +++ b/fda-metadata-db/api/src/main/java/at/tuwien/api/database/ViewBriefDto.java @@ -53,8 +53,4 @@ public class ViewBriefDto { @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ss.SSSXXX", timezone = "UTC") private Instant lastModified; - @Schema(example = "2020-08-04 11:13:00") - @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ss.SSSXXX", timezone = "UTC") - private Instant deleted; - } diff --git a/fda-metadata-db/api/src/main/java/at/tuwien/api/database/ViewDto.java b/fda-metadata-db/api/src/main/java/at/tuwien/api/database/ViewDto.java index 1e12924bfe..fcd6e9c00a 100644 --- a/fda-metadata-db/api/src/main/java/at/tuwien/api/database/ViewDto.java +++ b/fda-metadata-db/api/src/main/java/at/tuwien/api/database/ViewDto.java @@ -56,8 +56,4 @@ public class ViewDto { @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ss.SSSXXX", timezone = "UTC") private Instant lastModified; - @Schema(example = "2020-08-04 11:13:00") - @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ss.SSSXXX", timezone = "UTC") - private Instant deleted; - } diff --git a/fda-metadata-db/api/src/main/java/at/tuwien/api/identifier/RelatedIdentifierDto.java b/fda-metadata-db/api/src/main/java/at/tuwien/api/identifier/RelatedIdentifierDto.java index c6d5c13bf1..b7ffb97c90 100644 --- a/fda-metadata-db/api/src/main/java/at/tuwien/api/identifier/RelatedIdentifierDto.java +++ b/fda-metadata-db/api/src/main/java/at/tuwien/api/identifier/RelatedIdentifierDto.java @@ -47,9 +47,6 @@ public class RelatedIdentifierDto { @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ss.SSSXXX", timezone = "UTC") private Instant lastModified; - @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ss.SSSXXX", timezone = "UTC") - private Instant deleted; - } diff --git a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/container/Container.java b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/container/Container.java index b8f9ecabe1..25d86eee19 100644 --- a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/container/Container.java +++ b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/container/Container.java @@ -22,10 +22,8 @@ import java.util.List; @ToString @AllArgsConstructor @NoArgsConstructor -@Where(clause = "deleted is null") @EntityListeners(AuditingEntityListener.class) @EqualsAndHashCode(onlyExplicitlyIncluded = true) -@SQLDelete(sql = "update mdb_containers set deleted = NOW() where id = ?") @Table(name = "mdb_containers") public class Container { @@ -75,7 +73,4 @@ public class Container { @LastModifiedDate private Instant lastModified; - @Column - private Instant deleted; - } diff --git a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/container/image/ContainerImage.java b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/container/image/ContainerImage.java index 07c389d693..f6fd50d0fd 100644 --- a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/container/image/ContainerImage.java +++ b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/container/image/ContainerImage.java @@ -26,8 +26,8 @@ public class ContainerImage { @Id @EqualsAndHashCode.Include - @GenericGenerator(name = "native", strategy = "native") - @GeneratedValue(strategy = GenerationType.AUTO, generator = "native") + @GeneratedValue(strategy = GenerationType.IDENTITY) + @Column(updatable = false, nullable = false) public Long id; @Column(nullable = false) diff --git a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/container/image/ContainerImageDate.java b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/container/image/ContainerImageDate.java index 26adee0347..e5624a464a 100644 --- a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/container/image/ContainerImageDate.java +++ b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/container/image/ContainerImageDate.java @@ -23,8 +23,8 @@ public class ContainerImageDate { @Id @EqualsAndHashCode.Include - @GenericGenerator(name = "native", strategy = "native") - @GeneratedValue(strategy = GenerationType.AUTO, generator = "native") + @GeneratedValue(strategy = GenerationType.IDENTITY) + @Column(updatable = false, nullable = false) private Long id; @Column(name = "iid") diff --git a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/container/image/ContainerImageEnvironmentItem.java b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/container/image/ContainerImageEnvironmentItem.java index 121933d4c3..a1abe5acad 100644 --- a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/container/image/ContainerImageEnvironmentItem.java +++ b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/container/image/ContainerImageEnvironmentItem.java @@ -23,8 +23,8 @@ public class ContainerImageEnvironmentItem { @Id @EqualsAndHashCode.Include - @GenericGenerator(name = "native", strategy = "native") - @GeneratedValue(strategy = GenerationType.AUTO, generator = "native") + @GeneratedValue(strategy = GenerationType.IDENTITY) + @Column(updatable = false, nullable = false) public Long id; @Id diff --git a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/database/Database.java b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/database/Database.java index 190d971539..41fe84a528 100644 --- a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/database/Database.java +++ b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/database/Database.java @@ -24,9 +24,7 @@ import java.util.List; @AllArgsConstructor @NoArgsConstructor @Document(indexName = "databaseindex", createIndex = false) -@Where(clause = "deleted is null") @EntityListeners(AuditingEntityListener.class) -@SQLDelete(sql = "update mdb_databases set deleted = NOW() where id = ?") @javax.persistence.Table(name = "mdb_databases", uniqueConstraints = { @UniqueConstraint(columnNames = {"id", "internalName"}) }) @@ -34,8 +32,8 @@ public class Database { @Id @EqualsAndHashCode.Include - @GenericGenerator(name = "native", strategy = "native") - @GeneratedValue(strategy = GenerationType.AUTO, generator = "native") + @GeneratedValue(strategy = GenerationType.IDENTITY) + @Column(updatable = false, nullable = false) private Long id; @ManyToOne(fetch = FetchType.EAGER, cascade = CascadeType.ALL) @@ -87,7 +85,4 @@ public class Database { @LastModifiedDate private Instant lastModified; - @Column - private Instant deleted; - } diff --git a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/database/View.java b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/database/View.java index 0a60f175b5..ab289dd9d2 100644 --- a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/database/View.java +++ b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/database/View.java @@ -23,8 +23,8 @@ public class View { @Id @EqualsAndHashCode.Include - @GenericGenerator(name = "native", strategy = "native") - @GeneratedValue(strategy = GenerationType.AUTO, generator = "native") + @GeneratedValue(strategy = GenerationType.IDENTITY) + @Column(updatable = false, nullable = false) private Long id; @Id @@ -69,7 +69,4 @@ public class View { @LastModifiedDate private Instant lastModified; - @Column - private Instant deleted; - } diff --git a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/database/table/Table.java b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/database/table/Table.java index 77e548c47d..eff1bce677 100644 --- a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/database/table/Table.java +++ b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/database/table/Table.java @@ -31,8 +31,8 @@ public class Table { @Id @EqualsAndHashCode.Include - @GenericGenerator(name = "native", strategy = "native") - @GeneratedValue(strategy = GenerationType.AUTO, generator = "native") + @GeneratedValue(strategy = GenerationType.IDENTITY) + @Column(updatable = false, nullable = false) private Long id; @Id diff --git a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/database/table/columns/TableColumn.java b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/database/table/columns/TableColumn.java index eb13193b15..f74fb634a5 100644 --- a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/database/table/columns/TableColumn.java +++ b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/database/table/columns/TableColumn.java @@ -32,8 +32,8 @@ public class TableColumn implements Comparable<TableColumn> { @Id @EqualsAndHashCode.Include - @GenericGenerator(name = "native", strategy = "native") - @GeneratedValue(strategy = GenerationType.AUTO, generator = "native") + @GeneratedValue(strategy = GenerationType.IDENTITY) + @Column(updatable = false, nullable = false) private Long id; @Id diff --git a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/database/table/columns/concepts/ColumnConcept.java b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/database/table/columns/concepts/ColumnConcept.java index a2ed5eb24a..1afdedcd0f 100644 --- a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/database/table/columns/concepts/ColumnConcept.java +++ b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/database/table/columns/concepts/ColumnConcept.java @@ -24,8 +24,8 @@ public class ColumnConcept implements Serializable { @Id @EqualsAndHashCode.Include - @GenericGenerator(name = "native", strategy = "native") - @GeneratedValue(strategy = GenerationType.AUTO, generator = "native") + @GeneratedValue(strategy = GenerationType.IDENTITY) + @Column(updatable = false, nullable = false) private Long cid; @Id diff --git a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/database/table/columns/concepts/Concept.java b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/database/table/columns/concepts/Concept.java index 6def65fe55..00c984934c 100644 --- a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/database/table/columns/concepts/Concept.java +++ b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/database/table/columns/concepts/Concept.java @@ -23,8 +23,8 @@ public class Concept { @Id @EqualsAndHashCode.Include - @GenericGenerator(name = "native", strategy = "native") - @GeneratedValue(strategy = GenerationType.AUTO, generator = "native") + @GeneratedValue(strategy = GenerationType.IDENTITY) + @Column(updatable = false, nullable = false) private Long id; @Column(name = "URI", nullable = false, columnDefinition = "TEXT") diff --git a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/identifier/Creator.java b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/identifier/Creator.java index 1681f68d4a..b1bd315be0 100644 --- a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/identifier/Creator.java +++ b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/identifier/Creator.java @@ -23,8 +23,8 @@ public class Creator { @Id @EqualsAndHashCode.Include - @GenericGenerator(name = "native", strategy = "native") - @GeneratedValue(strategy = GenerationType.AUTO, generator = "native") + @GeneratedValue(strategy = GenerationType.IDENTITY) + @Column(updatable = false, nullable = false) private Long id; @Id diff --git a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/identifier/Identifier.java b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/identifier/Identifier.java index 950e54da3a..44c3a096e4 100644 --- a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/identifier/Identifier.java +++ b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/identifier/Identifier.java @@ -23,9 +23,7 @@ import java.util.List; @ToString @AllArgsConstructor @NoArgsConstructor -@Where(clause = "deleted is null") @EntityListeners(AuditingEntityListener.class) -@SQLDelete(sql = "update mdb_identifiers set deleted = NOW() where id = ?") @javax.persistence.Table(name = "mdb_identifiers", uniqueConstraints = { @UniqueConstraint(columnNames = {"qid", "cid", "dbid"}) }) @@ -33,8 +31,8 @@ public class Identifier { @Id @EqualsAndHashCode.Include - @GenericGenerator(name = "native", strategy = "native") - @GeneratedValue(strategy = GenerationType.AUTO, generator = "native") + @GeneratedValue(strategy = GenerationType.IDENTITY) + @Column(updatable = false, nullable = false) private Long id; @Column(name = "cid", nullable = false) @@ -133,9 +131,6 @@ public class Identifier { @LastModifiedDate private Instant lastModified; - @Column - private Instant deleted; - } diff --git a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/identifier/RelatedIdentifier.java b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/identifier/RelatedIdentifier.java index ad318c4a22..280715c956 100644 --- a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/identifier/RelatedIdentifier.java +++ b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/identifier/RelatedIdentifier.java @@ -19,7 +19,6 @@ import java.time.Instant; @AllArgsConstructor @NoArgsConstructor @IdClass(RelatedIdentifierKey.class) -@Where(clause = "deleted is null") @EqualsAndHashCode(onlyExplicitlyIncluded = true) @EntityListeners(AuditingEntityListener.class) @Table(name = "mdb_related_identifiers", uniqueConstraints = { @@ -29,8 +28,8 @@ public class RelatedIdentifier { @Id @EqualsAndHashCode.Include - @GenericGenerator(name = "native", strategy = "native") - @GeneratedValue(strategy = GenerationType.AUTO, generator = "native") + @GeneratedValue(strategy = GenerationType.IDENTITY) + @Column(updatable = false, nullable = false) private Long id; @Id @@ -62,9 +61,6 @@ public class RelatedIdentifier { @LastModifiedDate private Instant lastModified; - @Column - private Instant deleted; - } diff --git a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/user/TimeSecret.java b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/user/TimeSecret.java index c6922b8541..53d71c8cc7 100644 --- a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/user/TimeSecret.java +++ b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/user/TimeSecret.java @@ -23,8 +23,8 @@ public class TimeSecret { @Id @EqualsAndHashCode.Include - @GenericGenerator(name = "native", strategy = "native") - @GeneratedValue(strategy = GenerationType.AUTO, generator = "native") + @GeneratedValue(strategy = GenerationType.IDENTITY) + @Column(updatable = false, nullable = false) private Long id; @Column(nullable = false) diff --git a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/user/Token.java b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/user/Token.java index bacb80fc34..241f16e777 100644 --- a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/user/Token.java +++ b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/user/Token.java @@ -16,7 +16,6 @@ import java.time.Instant; @AllArgsConstructor @NoArgsConstructor @ToString -@SQLDelete(sql = "update mdb_tokens set deleted = NOW() where id = ?") @EntityListeners(AuditingEntityListener.class) @EqualsAndHashCode(onlyExplicitlyIncluded = true) @Table(name = "mdb_tokens") @@ -24,9 +23,8 @@ public class Token { @Id @EqualsAndHashCode.Include - @Column(name = "id") - @GenericGenerator(name = "native", strategy = "native") - @GeneratedValue(strategy = GenerationType.AUTO, generator = "native") + @GeneratedValue(strategy = GenerationType.IDENTITY) + @Column(updatable = false, nullable = false) private Long id; @Column(nullable = false, updatable = false) @@ -50,7 +48,4 @@ public class Token { @Column(nullable = false, updatable = false) private Instant lastUsed; - @Column(nullable = false, updatable = false) - private Instant deleted; - } diff --git a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/user/User.java b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/user/User.java index 691bc2af6d..eb1f77d74a 100644 --- a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/user/User.java +++ b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/user/User.java @@ -25,9 +25,8 @@ public class User { @Id @EqualsAndHashCode.Include - @Column(name = "userid") - @GenericGenerator(name = "native", strategy = "native") - @GeneratedValue(strategy = GenerationType.AUTO, generator = "native") + @GeneratedValue(strategy = GenerationType.IDENTITY) + @Column(name = "userid", updatable = false, nullable = false) private Long id; @Column(unique = true, nullable = false) diff --git a/fda-metadata-db/querystore/src/main/java/at/tuwien/querystore/View.java b/fda-metadata-db/querystore/src/main/java/at/tuwien/querystore/View.java index 6a45ec9d0e..79419fca6e 100644 --- a/fda-metadata-db/querystore/src/main/java/at/tuwien/querystore/View.java +++ b/fda-metadata-db/querystore/src/main/java/at/tuwien/querystore/View.java @@ -55,9 +55,6 @@ public class View implements Serializable { @Column(nullable = false) private String query; - @Column - private Instant deleted; - @Column(nullable = false, updatable = false) @CreatedDate private Instant created; diff --git a/fda-metadata-db/setup-schema.sql b/fda-metadata-db/setup-schema.sql index b8e6d24fe5..944a6b9e07 100644 --- a/fda-metadata-db/setup-schema.sql +++ b/fda-metadata-db/setup-schema.sql @@ -1,141 +1,8 @@ BEGIN; -CREATE SEQUENCE mdb_images_environment_item_seq - START WITH 1 - INCREMENT BY 1 - NO MINVALUE - NO MAXVALUE - CACHE 1; - -CREATE SEQUENCE mdb_images_seq - START WITH 1 - INCREMENT BY 1 - NO MINVALUE - NO MAXVALUE - CACHE 1; - -CREATE SEQUENCE mdb_images_date_seq - START WITH 1 - INCREMENT BY 1 - NO MINVALUE - NO MAXVALUE - CACHE 1; - -CREATE SEQUENCE mdb_containers_seq - START WITH 1 - INCREMENT BY 1 - NO MINVALUE - NO MAXVALUE - CACHE 1; - -CREATE SEQUENCE mdb_user_seq - START WITH 1 - INCREMENT BY 1 - NO MINVALUE - NO MAXVALUE - CACHE 1; - -CREATE SEQUENCE mdb_user_role_seq - START WITH 1 - INCREMENT BY 1 - NO MINVALUE - NO MAXVALUE - CACHE 1; - -CREATE SEQUENCE mdb_data_seq - START WITH 1 - INCREMENT BY 1 - NO MINVALUE - NO MAXVALUE - CACHE 1; - -CREATE SEQUENCE mdb_databases_seq - START WITH 1 - INCREMENT BY 1 - NO MINVALUE - NO MAXVALUE - CACHE 1; - -CREATE SEQUENCE mdb_tables_seq - START WITH 1 - INCREMENT BY 1 - NO MINVALUE - NO MAXVALUE - CACHE 1; - -CREATE SEQUENCE mdb_columns_seq - START WITH 1 - INCREMENT BY 1 - NO MINVALUE - NO MAXVALUE - CACHE 1; - -CREATE SEQUENCE mdb_columns_enum_seq - START WITH 1 - INCREMENT BY 1 - NO MINVALUE - NO MAXVALUE - CACHE 1; - -CREATE SEQUENCE mdb_view_seq - START WITH 1 - INCREMENT BY 1 - NO MINVALUE - NO MAXVALUE - CACHE 1; - -CREATE SEQUENCE mdb_columns_concepts_seq - START WITH 1 - INCREMENT BY 1 - NO MINVALUE - NO MAXVALUE - CACHE 1; - -CREATE SEQUENCE mdb_identifiers_seq - START WITH 1 - INCREMENT BY 1 - NO MINVALUE - NO MAXVALUE - CACHE 1; - -CREATE SEQUENCE mdb_related_identifiers_seq - START WITH 1 - INCREMENT BY 1 - NO MINVALUE - NO MAXVALUE - CACHE 1; - -CREATE SEQUENCE mdb_creators_seq - START WITH 1 - INCREMENT BY 1 - NO MINVALUE - NO MAXVALUE - CACHE 1; - -CREATE SEQUENCE mdb_time_secrets_seq - START WITH 1 - INCREMENT BY 1 - NO MINVALUE - NO MAXVALUE - CACHE 1; - -CREATE SEQUENCE mdb_tokens_seq - START WITH 1 - INCREMENT BY 1 - NO MINVALUE - NO MAXVALUE - CACHE 1; - -CREATE SEQUENCE mdb_concepts_seq - START WITH 1 - INCREMENT BY 1 - NO MINVALUE - NO MAXVALUE - CACHE 1; - CREATE TABLE IF NOT EXISTS mdb_users ( - UserID bigint not null DEFAULT nextval(mdb_user_seq), + UserID bigint not null AUTO_INCREMENT, external_id VARCHAR(255) UNIQUE, OID bigint, username VARCHAR(255) not null, @@ -160,7 +27,7 @@ CREATE TABLE IF NOT EXISTS mdb_users CREATE TABLE mdb_images ( - id bigint NOT NULL DEFAULT nextval(mdb_images_seq), + id bigint NOT NULL AUTO_INCREMENT, repository character varying(255) NOT NULL, tag character varying(255) NOT NULL, default_port integer NOT NULL, @@ -178,7 +45,7 @@ CREATE TABLE mdb_images CREATE TABLE mdb_time_secrets ( - id bigint not null default nextval(mdb_time_secrets_seq), + id bigint not null AUTO_INCREMENT, uid bigint not null, token character varying(255) NOT NULL, processed boolean NOT NULL default false, @@ -190,20 +57,19 @@ CREATE TABLE mdb_time_secrets CREATE TABLE mdb_tokens ( - id bigint not null default nextval(mdb_tokens_seq), + id bigint not null AUTO_INCREMENT, token_hash varchar(255) NOT NULL, creator bigint not null, created timestamp NOT NULL DEFAULT NOW(), expires timestamp NOT NULL, last_used timestamp, - deleted timestamp, PRIMARY KEY (id), FOREIGN KEY (creator) REFERENCES mdb_users (UserID) ); CREATE TABLE mdb_images_date ( - id bigint NOT NULL DEFAULT nextval(mdb_images_date_seq), + id bigint NOT NULL AUTO_INCREMENT, iid bigint NOT NULL, database_format character varying(255) NOT NULL, unix_format character varying(255) NOT NULL, @@ -217,7 +83,7 @@ CREATE TABLE mdb_images_date CREATE TABLE IF NOT EXISTS mdb_containers ( - id bigint NOT NULL DEFAULT nextval(mdb_containers_seq), + id bigint NOT NULL AUTO_INCREMENT, HASH character varying(255) NOT NULL, INTERNAL_NAME character varying(255) NOT NULL, NAME character varying(255) NOT NULL, @@ -227,7 +93,6 @@ CREATE TABLE IF NOT EXISTS mdb_containers created timestamp NOT NULL DEFAULT NOW(), created_by bigint NOT NULL, LAST_MODIFIED timestamp, - deleted timestamp, PRIMARY KEY (id), FOREIGN KEY (created_by) REFERENCES mdb_users (UserID), FOREIGN KEY (image_id) REFERENCES mdb_images (id) @@ -235,7 +100,7 @@ CREATE TABLE IF NOT EXISTS mdb_containers CREATE TABLE mdb_images_environment_item ( - id bigint NOT NULL DEFAULT nextval(mdb_images_environment_item_seq), + id bigint NOT NULL AUTO_INCREMENT, `key` character varying(255) NOT NULL, value character varying(255) NOT NULL, etype ENUM ('PRIVILEGED_USERNAME', 'PRIVILEGED_PASSWORD', 'USERNAME', 'PASSWORD') NOT NULL, @@ -248,7 +113,7 @@ CREATE TABLE mdb_images_environment_item CREATE TABLE IF NOT EXISTS mdb_data ( - ID bigint DEFAULT nextval(mdb_data_seq), + ID bigint NOT NULL AUTO_INCREMENT, PROVENANCE TEXT, FileEncoding TEXT, FileType VARCHAR(100), @@ -278,7 +143,7 @@ CREATE TABLE IF NOT EXISTS mdb_licenses CREATE TABLE IF NOT EXISTS mdb_databases ( - id bigint NOT NULL DEFAULT nextval(mdb_databases_seq), + id bigint NOT NULL AUTO_INCREMENT, name character varying(255) NOT NULL, internal_name character varying(255) NOT NULL, exchange character varying(255) NOT NULL, @@ -289,7 +154,6 @@ CREATE TABLE IF NOT EXISTS mdb_databases Contactperson BIGINT, created timestamp NOT NULL DEFAULT NOW(), last_modified timestamp, - deleted timestamp NULL, PRIMARY KEY (id), FOREIGN KEY (Creator) REFERENCES mdb_users (UserID), FOREIGN KEY (Contactperson) REFERENCES mdb_users (UserID), @@ -305,7 +169,7 @@ CREATE TABLE IF NOT EXISTS mdb_databases_subjects CREATE TABLE IF NOT EXISTS mdb_tables ( - ID bigint NOT NULL DEFAULT nextval(mdb_tables_seq), + ID bigint NOT NULL AUTO_INCREMENT, tDBID bigint NOT NULL, internal_name character varying(255) NOT NULL, topic character varying(255) NOT NULL, @@ -323,14 +187,14 @@ CREATE TABLE IF NOT EXISTS mdb_tables created timestamp NOT NULL DEFAULT NOW(), created_by bigint NOT NULL, last_modified timestamp, - PRIMARY KEY (tDBID, ID), + PRIMARY KEY (ID, tDBID), FOREIGN KEY (created_by) REFERENCES mdb_users (UserID), FOREIGN KEY (tDBID) REFERENCES mdb_databases (id) ); CREATE TABLE IF NOT EXISTS mdb_columns ( - ID bigint NOT NULL DEFAULT nextval(mdb_columns_seq), + ID bigint NOT NULL AUTO_INCREMENT, cDBID bigint NOT NULL, tID bigint NOT NULL, dfID bigint, @@ -350,12 +214,12 @@ CREATE TABLE IF NOT EXISTS mdb_columns last_modified timestamp, FOREIGN KEY (cDBID, tID) REFERENCES mdb_tables (tDBID, ID), FOREIGN KEY (created_by) REFERENCES mdb_users (UserID), - PRIMARY KEY (cDBID, tID, ID) + PRIMARY KEY (ID, cDBID, tID) ); CREATE TABLE IF NOT EXISTS mdb_columns_enums ( - ID bigint NOT NULL DEFAULT nextval(mdb_columns_enum_seq), + ID bigint NOT NULL AUTO_INCREMENT, eDBID bigint NOT NULL, tID bigint NOT NULL, cID bigint NOT NULL, @@ -411,7 +275,7 @@ CREATE TABLE IF NOT EXISTS mdb_columns_cat CREATE TABLE IF NOT EXISTS mdb_concepts ( - id bigint not null default nextval(mdb_concepts_seq), + id bigint not null AUTO_INCREMENT, URI TEXT, name VARCHAR(255), created timestamp NOT NULL DEFAULT NOW(), @@ -435,7 +299,7 @@ CREATE TABLE IF NOT EXISTS mdb_columns_concepts CREATE TABLE IF NOT EXISTS mdb_view ( - id bigint NOT NULL DEFAULT nextval(mdb_view_seq), + id bigint NOT NULL AUTO_INCREMENT, vcid bigint NOT NULL, vdbid bigint NOT NULL, vName VARCHAR(255) NOT NULL, @@ -447,16 +311,15 @@ CREATE TABLE IF NOT EXISTS mdb_view InitialView BOOLEAN NOT NULL, created timestamp NOT NULL DEFAULT NOW(), last_modified timestamp, - deleted timestamp, created_by bigint NOT NULL, FOREIGN KEY (created_by) REFERENCES mdb_users (UserID), FOREIGN KEY (vdbid) REFERENCES mdb_databases (id), - PRIMARY KEY (vdbid, id) + PRIMARY KEY (id, vdbid) ); CREATE TABLE IF NOT EXISTS mdb_identifiers ( - id bigint DEFAULT nextval(mdb_identifiers_seq), + id bigint NOT NULL AUTO_INCREMENT, cid bigint NOT NULL, dbid bigint NOT NULL, qid bigint, @@ -480,7 +343,6 @@ CREATE TABLE IF NOT EXISTS mdb_identifiers created timestamp NOT NULL DEFAULT NOW(), created_by bigint NOT NULL, last_modified timestamp, - deleted timestamp, PRIMARY KEY (id), /* must be a single id from persistent identifier concept */ FOREIGN KEY (cid) REFERENCES mdb_containers (id), FOREIGN KEY (dbid) REFERENCES mdb_databases (id), @@ -490,7 +352,7 @@ CREATE TABLE IF NOT EXISTS mdb_identifiers CREATE TABLE IF NOT EXISTS mdb_related_identifiers ( - id bigint DEFAULT nextval(mdb_related_identifiers_seq), + id bigint NOT NULL AUTO_INCREMENT, iid bigint NOT NULL, value varchar(255) NOT NULL, type varchar(255), @@ -498,7 +360,6 @@ CREATE TABLE IF NOT EXISTS mdb_related_identifiers created timestamp NOT NULL DEFAULT NOW(), created_by bigint NOT NULL, last_modified timestamp, - deleted timestamp, PRIMARY KEY (id, iid), /* must be a single id from persistent identifier concept */ FOREIGN KEY (iid) REFERENCES mdb_identifiers (id), FOREIGN KEY (created_by) REFERENCES mdb_users (UserID) @@ -506,7 +367,7 @@ CREATE TABLE IF NOT EXISTS mdb_related_identifiers CREATE TABLE IF NOT EXISTS mdb_creators ( - id bigint DEFAULT nextval(mdb_creators_seq), + id bigint NOT NULL AUTO_INCREMENT, pid bigint NOT NULL, name VARCHAR(255) NOT NULL, affiliation VARCHAR(255), diff --git a/fda-metadata-db/setup-user.sh b/fda-metadata-db/setup-user.sh deleted file mode 100644 index 724f28f273..0000000000 --- a/fda-metadata-db/setup-user.sh +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/sh -mysql --user="root" --password="${METADATA_PASSWORD}" --database="${METADATA_DB}" << EOF -CREATE USER '${MARIADB_USERNAME}' IDENTIFIED BY '${MARIADB_PASSWORD}'; -GRANT SELECT ON ${METADATA_DB}.* TO '${MARIADB_USERNAME}'; -FLUSH PRIVILEGES; -EOF \ No newline at end of file -- GitLab