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

Improved handling of endDelimiter="/" #3118

Merged
merged 3 commits into from Aug 1, 2022

Conversation

nvoxland
Copy link
Contributor

@nvoxland nvoxland commented Jul 27, 2022

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

If people put endDelimiter="/", they really mean the oracle-style syntax of:

statement 1
/
statement2
/

and we should treat that as such and not actually use "/" as a simple delimiter. Otherwise, something like:

create table x id int default 2/4
/

splits in the wrong spot.

Fixes #2688

Things to be aware of

  • Only impacts split logic when endDelimiter is /
  • The default end delimiter already handles / like this, this change just extends that to explicitly specifying endDelimiter="/"

Things to worry about

  • Nothing

…inning of a line. Not in the middle and likely a division sign
…inning of a line. Not in the middle and likely a division sign
@github-actions
Copy link

github-actions bot commented Jul 27, 2022

Unit Test Results

  4 620 files  ±  0    4 620 suites  ±0   31m 11s ⏱️ - 2m 59s
  4 599 tests +  5    4 380 ✔️ +  1     219 💤 +4  0 ±0 
54 360 runs  +60  49 336 ✔️ +56  5 024 💤 +4  0 ±0 

Results for commit d9a0f32. ± Comparison against base commit 28631d9.

♻️ This comment has been updated with latest results.

@kataggart kataggart added this to To Do in Conditioning++ via automation Jul 27, 2022
@kataggart kataggart added this to the NEXT milestone Jul 27, 2022
…inning of a line. Not in the middle and likely a division sign
Copy link
Contributor

@XDelphiGrl XDelphiGrl left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  • Fix improves handling of the Oracle end delimiter / by checking to see if the / is at the beginning of a line and not within a statement.
  • New unit tests added.
  • No additional testing required.

APPROVED

Passing Functional Tests
Passing Test Harness Execution

@nvoxland nvoxland merged commit e3f2d2c into master Aug 1, 2022
Conditioning++ automation moved this from To Do to Done Aug 1, 2022
@nvoxland nvoxland deleted the handle-division-with-slash-delimiter branch August 1, 2022 14:56
@db-geek
Copy link

db-geek commented Aug 8, 2022

Thank you for the fix.

I tested Liquibase 4.15 with my Oracle database setup and the problem has been resolved.

@Sumitkrchaudhary
Copy link

This issue is seen again in 4.24 and 4.25. Is there something that broke this ?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Archived in project
6 participants