Skip to Main Content

SQLcl: MCP Server & SQL Prompt

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

SQLcl Project: drop nonexistent constraint does not stop deployment

Tien Le6 days ago

Dear all,

I'm automating the deployment of a project. I'm writing a test that can be executed in bitbucket pipeline that each release is deployed in order (for example: deploy release 1.0.1, if it is successful, then deploy release 1.0.2). The idea is that unexpected error can be captured automatically when changes are pushed to bitbucket.

I intentionally added dropping a nonexistent check constraint in release 1.0.1. Therefore, I expect that deploying 1.0.1 will return error and stop deployment with error.

In practice, the deployment does return in log that “Alter table drop constraint, constraint not found”. And I observe that in the ruleset file where I defined the nonexistent constraint drop, other modification after dropping nonexistent constraint is not executed → this is the only behavior that I expected.

However, the progress is not stopped with error. In stead, the end of deployment says “Liquibase: Update has been successful. Rows affected: 0” → this behavior concerns me

May I ask there is anyway to stop the deployment to progress further at failing step with error message.

For example, I tested with altering nonexistent table will stop the deployment with the following error

```

Migration failed, error reported:
The specified table or view did not exist
Migration failed, error reported:
The specified table or view did not exist

No Rollback for formatted sql change type

No Rollback for formatted sql change type

UPDATE SUMMARY
Run: 0
Previously run: 0
Filtered out: 0
-------------------------------
Total change sets: 37

ERROR: Exception Details
ERROR: Exception Primary Class: DatabaseException
ERROR: Exception Primary Reason: Error occurred and continueonerror set to false, stopping execution.
ERROR: Exception Primary Source: 4.33.0

```

→ this is what I expected when dropping nonexistent constraint as well.

Comments
Post Details
Added 6 days ago
3 comments
79 views