<!--- 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


SqlStatement[] statements = change.generateStatements(new MSSQLDatabase());
        assertEquals(1, statements.length);
        assertEquals("LINE 1;\r\n\r\nLINE 2;\r\nLINE 3;", ((RawSqlStatement) statements[0]).getSql());
    }
    @Test
    public void normalizeSql() throws IOException {
        assertNormalizingStreamCorrect("single line String", "single line String");
        assertNormalizingStreamCorrect("single line string with whitespace", "single line string with      whitespace");
        assertNormalizingStreamCorrect("multiple line string", "\r\nmultiple\r\nline\r\nstring\r\n");
        assertNormalizingStreamCorrect("multiple line string", "\rmultiple\rline\rstring\r");
        assertNormalizingStreamCorrect("multiple line string", "\nmultiple\nline\nstring\n");
        assertNormalizingStreamCorrect("a line with double newlines", "\n\na\nline \n with \r\n \r\n double \n \n \n \n newlines");
        assertNormalizingStreamCorrect("", "    ");
        assertNormalizingStreamCorrect("", " \n \n \n   \n  ");
        
        String longSpaceString = "a line with a lot of: wait for it....                                                                                                                                                                                                                                                                                         spaces";
        assertNormalizingStreamCorrect("a line with a lot of: wait for it.... spaces", longSpaceString);
        String versionNormalized = "INSERT INTO recommendation_list(instanceId, name, publicId) SELECT DISTINCT instanceId, \"default\" as name, \"default\" as publicId FROM recommendation;";
        String version1 = "INSERT INTO recommendation_list(instanceId, name, publicId)\n" +
                "SELECT DISTINCT instanceId, \"default\" as name, \"default\" as publicId\n" +
                "FROM recommendation;";
        assertNormalizingStreamCorrect(versionNormalized, version1);
        String version2 = "INSERT INTO \n" +
                "    recommendation_list(instanceId, name, publicId)\n" +
                "SELECT \n" +
                "    DISTINCT \n" +
                "        instanceId, \n" +
                "          \"default\" as name, \n" +
                "          \"default\" as publicId\n" +
                "   FROM \n" +