Hi Alistair,
kindly find below the correct procedure to avoid these errors. Please try this in a lower environment.
Correct procedure
pg_dump/Oracle Data Pump equivalent) into the test schema.DL_DATA_LOC.DL_* tables to temporary USR_DL_* backup tables.DL_* tables and the three sequences (SEQ_MATCHGRP, DL_SEQ_FILTER, DL_SEQ_DUPS_OPERATION), noting their current values first.DL_* tables/sequences).DL_* tables from the USR_DL_* backups (excluding DL_DATA_LOC), realign the three sequences to their prior values, restart, verify, then drop the USR_DL_* backup tables.SEQ_LOADID and SEQ_BATCHID in the repository schema - if these aren't advanced past production's values, replayed loads/batches in test can collide with or reprocess production load/batch IDs.Automation note: because this involves manual SQL against internal system tables, Semarchy doesn't provide a supported one-click automation for it. If you want this repeatable, script steps 3–4 (dump/restore + the DL_ cleanup SQL) with your DB tooling (e.g. a shell/SQL wrapper or CI job) - this is safe to automate since it only touches the data location schema, not the repository.
Thanks,
Haashim
Alistair Middlemiss
We want to test new data sources in our test environment with our current production data that has been fully data stewarded to assess the impacts on existing data stewarded data.
We attempted to do a full copy over of the data location from production to test environment, and that moved the data over effectively, it caused a range of issues - the execution engine errored out due to duplicate key violations and it caused the entire test data base to be flagged as a production instance. There would probably have been other issues found but reset the instance to stop issues.
What is the best / correct procedure to copy over production data to a test environment in a consistent, and ideally automatable way?