includeObjects/excludeObjects not respecting order of objects when multiple objects are provided
Description
Environment
CentOS Linux release 7.7.1908 (Core)
Derived from Red Hat Enterprise Linux 7.7 (Source)
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"
CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"
CentOS Linux release 7.7.1908 (Core)
CentOS Linux release 7.7.1908 (Core)
cpe:/o:centos:centos:7
kernel: 3.10.0-1062.12.1.el7.x86_64
liquibase --version
Starting Liquibase at Wed, 26 Feb 2020 16:03:58 PST (version 3.8.6 #49 built at Fri Feb 07 05:16:10 UTC 2020)
Liquibase Version: 3.8.6
Liquibase Community 3.8.6 by Datical
Running Java under /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.242.b08-0.el7_7.x86_64/jre (Version 1.8.0_242)
When using the includeObjects to while using the updateSQL, Liquibase will generate the create statements in alphabetical order from the objects included in the includeObjects="".
For example if I have views that I need to be created in a specific order includeObjects will not respect the order I use.
views: {a,b,c,d}
--includeObjects="d,c,a,b"
Liquibase will do the following:
CREATE VIEW a;
CREATE VIEW b;
CREATE VIEW c;
CREATE VIEW d;
Where I actually need it to do this:
CREATE VIEW d;
CREATE VIEW c;
CREATE VIEW a;
CREATE VIEW b;