в чем смысл комментария "стоимость установки параметра по-русски" в MySQL Connector / J ClientPreparedStatement # executeBatchInternal? - PullRequest
0 голосов
/ 01 апреля 2020

Env: mysql -connector- java 8.0.19

Я заметил, что есть комментарий " стоимость установки параметра по-другомуcom.mysql.cj.jdbc.ClientPreparedStatement#executeBatchInternal исходном коде, когда я выполняю некоторые пакетные операции, используя PreparedStament. Фрагмент исходного кода из MySQL Connector / J, как показано ниже:

if (!this.batchHasPlainStatements && this.rewriteBatchedStatements.getValue()) {
    if (((PreparedQuery<?>) this.query).getParseInfo().canRewriteAsMultiValueInsertAtSqlLevel()) {
        return executeBatchedInserts(batchTimeout);
    }

    if (!this.batchHasPlainStatements && this.query.getBatchedArgs() != null
            && this.query.getBatchedArgs().size() > 3 /* cost of option setting rt-wise */) {
        return executePreparedBatchAsMultiStatement(batchTimeout);
    }
}

, поэтому мои вопросы таковы:

  1. каково точное значение «стоимость установки опции rt- мудрая фраза?
  2. почему MySQL Соединитель / J выбирает 3 в качестве нижней строки для перезаписи пакетных операторов, почему не 4 или другие числа?

спасибо.

...