Skip to content

Conversation

catull
Copy link
Contributor

@catull catull commented Sep 30, 2024

Both variants are supported: either includeObjects or excludeObjects.

The columns are taken from "column:PATTERN" or, if both "table:" and "column:" are missing, then the entire includeObjects / excludeObjects is used to match the columns to export.

If neither includeObjects nor excludeObjects are provided, all columns are considered, which is the default case. This corresponds to todays situation.

This PR addresses issue #3371 - ey, exactly 3'000 issues apart - and issue #6310.

Impact

  • Bug fix (non-breaking change which fixes expected existing functionality)
  • Enhancement/New feature (adds functionality without impacting existing logic)
  • Breaking change (fix or feature that would cause existing functionality to change)

Description

This PR enhaces the generate-changelog for "data" export.
The current behaviour is to include all columns for this scenario.
This scenario is still support, so long no speficic "column:PATTERN" is provided in --include-objects or --exclude-objects.

However, sometimes an export must be provided that skip some columns.
In that case, you may want to express it via "column:PATTERN" in either the --include-objects or --excludeObjects.

This PR supports both cases, see the extra test case.

Things to be aware of

This PR was tested against H2, PostgreSQL and Oracle.

@filipelautert filipelautert self-assigned this Oct 14, 2024
@filipelautert
Copy link
Collaborator

Hey @catull - are you sure about fixing #3310 ? I can't see it.

Carlo Dapor and others added 20 commits January 7, 2025 11:49
…angelog "data" export

Both variants are supported: either includeObjects or excludeObjects.  The columns are taken from "column:PATTERN" or, if both "table:" and "column:" are missing, then the entire includeObjects / excludeObjects is used to match the columns to export.  If neither includeObjects nor excludeObjects are provided, all columns are considered, which is the default case.  This corresponds to todays situation.

This PR addresses issues liquibase#3310 and liquibase#6310 - ey, exaclt 3000 issues apart.
…ecutionException. Added logib to support case-sensitive matching.
Added CLI handling of --preserveNullValues.
… class in the end registers a MissingDataExternalFileChangeGenerator and do not unregister it.
…ntext as this class in the end registers a MissingDataExternalFileChangeGenerator and do not unregister it.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Archived in project
Development

Successfully merging this pull request may close these issues.

4 participants