Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Generated YAML changelogs do not contain necessary modifySql items #108

Open
SanjayVas opened this issue Apr 21, 2022 · 3 comments
Open
Labels
known limitation Known limitation or unsupported feature that cannot easily be supported

Comments

@SanjayVas
Copy link

I'm trying to generate an initial YAML changelog from an existing Spanner database. I find that the generated YAML doesn't contain the necessary modifySql items for things like INTERLEAVE IN PARENT or OPTIONS (allow_commit_timestamp = true).

@SanjayVas
Copy link
Author

Likely related to #85

@olavloite olavloite added the known limitation Known limitation or unsupported feature that cannot easily be supported label May 20, 2022
@olavloite
Copy link
Collaborator

Likely related to #85

This is indeed the same issue as #85. Interleaved tables and column options are Spanner specific features that don't really fit that well into the model of Liquibase, as they cannot really be mapped directly to a generic SQL feature. (Column options might actually be a little easier than interleaved tables)

@SanjayVas
Copy link
Author

SanjayVas commented May 23, 2022

I believe the expectation is that changelogs should be round-trippable. That is to say that if you have DB A created from a Liquibase changelog and try to create a DB B from A with Liquibase (e.g. using generate-changelog) then B should be equivalent to A.

My concern is that the limitations of the current implementation would also mean that operations such as diff, snapshot, etc. won't work as expected. At minimum, this should be clearly documented in limitations.md. Right now, it's unclear that these operations would not work as expected. In fact, the doc seems to imply that it would work as it describes how these Spanner features can be represented in a Liquibase changelog.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
known limitation Known limitation or unsupported feature that cannot easily be supported
Projects
None yet
Development

No branches or pull requests

2 participants