@Override
    public void doLimit(String sql) throws SQLException {
        if (!enabledLimit) {
            return;
        }
        String trimmedSql = sql.trim();
        if (StringUtils.isEmpty(trimmedSql)) {
            return;
        }
        int firstTokenIndex = trimmedSql.indexOf(" ");
        if (-1 == firstTokenIndex) {
            throwException(trimmedSql);
        }
        String firstToken = trimmedSql.substring(0, firstTokenIndex).toUpperCase();
        if (allowedDmlSqls.contains(firstToken)) {
            return;
        }
        if (!allowedDdlSqls.contains(firstToken)) {
            throwException(trimmedSql);
        }
        checkSqlForSecondToken(firstTokenIndex, trimmedSql);
    }
@Test
    void testDoLimitForDisabledLimit() throws SQLException {
        MockEnvironment environment = new MockEnvironment();
        environment.setProperty("nacos.persistence.sql.derby.limit.enabled", "false");
        EnvUtil.setEnvironment(environment);
        sqlLimiter = new SqlTypeLimiter();
        sqlLimiter.doLimit("CALL SALES.TOTAL_REVENUES();");
    }