Switch interval_start/interval_end from LocalDateTime to Instant across the entire metering data stack (entity, DTOs, parser, repository, services, controllers). This eliminates DST-related unique constraint violations that occurred when two different wall-clock times mapped to the same epoch millis during CET/CEST transitions. Key changes: - MeteringData entity: intervalStart/intervalEnd now Instant - XlsxMeteringDataParser: produces Instant via JVM timezone conversion - MeteringDataRepository: all queries use Instant parameters - MeteringDataService: simplified deduplicate() (Instant has no DST ambiguity) - Added hibernate.jdbc.time_zone=UTC and test profile for in-memory H2 - Added MeteringDataUploadIntegrationTest with real H2 database - Added DST-specific parser and service tests - All 216 tests passing
13 lines
276 B
YAML
13 lines
276 B
YAML
spring:
|
|
datasource:
|
|
url: jdbc:h2:mem:testdb_upload;MODE=PostgreSQL;DB_CLOSE_DELAY=-1
|
|
driver-class-name: org.h2.Driver
|
|
username: sa
|
|
password:
|
|
jpa:
|
|
hibernate:
|
|
ddl-auto: create
|
|
properties:
|
|
hibernate.jdbc.time_zone: UTC
|
|
show-sql: false
|