Interface MultiKeyLoadSizingStrategy

    • Method Detail

      • determineOptimalBatchLoadSize

        int determineOptimalBatchLoadSize​(int numberOfKeyColumns,
                                          int numberOfKeys,
                                          boolean inClauseParameterPaddingEnabled)
        Determine the optimal batch size (number of key values) to load at a time.

        The return can be less than the total numberOfKeys to be loaded indicating that the load should be split across multiple SQL queries. E.g. if we are loading 7 keys and the strategy says the optimal size is 5, we will perform 2 queries.

        Parameters:
        numberOfKeyColumns - The number of columns to which the key is mapped
        numberOfKeys - The total number of keys we need to load
        inClauseParameterPaddingEnabled - See AvailableSettings.IN_CLAUSE_PARAMETER_PADDING
        Returns:
        The number of keys to load at once. The total number of JDBC parameters needed for that load is defined by numberOfKeys * numberOfKeyColumns. The strategy should take care to ensure that numberOfKeys * numberOfKeyColumns does not exceed any database/driver limits on the number of parameters allowed in a PreparedStatement.