<!--- This environment context section helps us quickly review your PR. 
      Please take a minute to fill-out this information. -->

## Environment
**Liquibase Version**: `4.1.1`

**Liquibase Integration & Version**: Spring Boot

**Database Vendor & Version**: Postgres 12.3

**Operating System Type & Version**: Ubuntu 20.04

## Description
There's a regression after upgrading from `4.1.0` to `4.1.1` that is causing `StackOverflowError` while generating Postgres statement during processing a large SQL file-based changeset.  It seems to be a regression
introduced in #912  while trying to fix [CORE-3379](https://liquibase.jira.com/browse/CORE-3379).

## Steps To Reproduce
Create a changeset:

```xml
<changeSet id="StackOverflowError" author="goostleek">
    <sqlFile path="large.sql" relativeToChangelogFile="true"/>
</changeSet>
```

The `sqlFile` is ~200kb. It's been included in [the file](https://github.com/liquibase/liquibase/blob/2bb6acad174723e770f43411fbeae2a68e2af691/liquibase-core/src/test/resources/liquibase/change/long-statement.sql) in the PR #1508 which introduces a failing unit test presenting the error.

## Actual Behavior
`StackOverflowError` is thrown during SpringBoot application startup while applying the changest.

## Expected/Desired Behavior
The changeset is executed successfully like it was before upgrading to Liquibase 4.1.1.

## Additional Context
See #912, #1508


/**
     * Calculates the checksum based on the contained SQL.
     *
     * @see liquibase.change.AbstractChange#generateCheckSum()
     */
    @Override
    public CheckSum generateCheckSum() {
        InputStream stream = null;
        try {
            stream = openSqlStream();
            String sql = this.sql;
            if ((stream == null) && (sql == null)) {
                sql = "";
            }
            if (sql != null) {
                stream = new ByteArrayInputStream(sql.getBytes(GlobalConfiguration.OUTPUT_FILE_ENCODING.getCurrentValue())
                );
            }
            return CheckSum.compute(new NormalizingStream(this.getEndDelimiter(), this.isSplitStatements(), this.isStripComments(), stream), false);
        } catch (IOException e) {
            throw new UnexpectedLiquibaseException(e);
        } finally {
            if (stream != null) {
                try {
                    stream.close();
                } catch (IOException e) {
                    Scope.getCurrentScope().getLog(getClass()).fine("Error closing stream", e);
                }
            }
        }