JingsongLi commented on a change in pull request #8980: [FLINK-13040] promote 
blink table config
URL: https://github.com/apache/flink/pull/8980#discussion_r300527509
 
 

 ##########
 File path: 
flink-table/flink-table-runtime-blink/src/main/java/org/apache/flink/table/api/TableConfigOptions.java
 ##########
 @@ -179,81 +164,70 @@
        public static final ConfigOption<Integer> 
SQL_EXEC_WINDOW_AGG_BUFFER_SIZE_LIMIT =
                        key("sql.exec.window-agg.buffer-size.limit")
                                        .defaultValue(100 * 1000)
-                                       .withDescription("Sets the window 
elements buffer limit in size used in group window agg operator.");
+                                       .withDescription("Sets the window 
elements buffer size limit used in group window agg operator.");
 
        // 
------------------------------------------------------------------------
        //  topN Options
        // 
------------------------------------------------------------------------
-
+       @Documentation.ExcludeFromDocumentation(value = "The default cache size 
is enough in most cases. " +
+                       "And this is a temporary solution for caching. We may 
want to expose cache memory size as the configuration in the future.")
        public static final ConfigOption<Long> SQL_EXEC_TOPN_CACHE_SIZE =
                        key("sql.exec.topn.cache.size")
                                        .defaultValue(10000L)
-                                       .withDescription("Cache size of every 
topn task.");
+                                       .withDescription("TopN operator has a 
cache which caches partial state contents to reduce state access. " +
+                                                       "Cache size is the 
number of records in each TopN task.");
 
        // 
------------------------------------------------------------------------
        //  Async Lookup Options
        // 
------------------------------------------------------------------------
-
        public static final ConfigOption<Integer> 
SQL_EXEC_LOOKUP_ASYNC_BUFFER_CAPACITY =
-               key("sql.exec.lookup.async.buffer-capacity")
-               .defaultValue(100)
-               .withDescription("The max number of async i/o operation that 
the async lookup join can trigger.");
+                       key("sql.exec.lookup.async.buffer-capacity")
+                                       .defaultValue(100)
+                                       .withDescription("The max number of 
async i/o operation that the async lookup join can trigger.");
 
-       public static final ConfigOption<Long> SQL_EXEC_LOOKUP_ASYNC_TIMEOUT_MS 
=
-               key("sql.exec.lookup.async.timeout-ms")
-               .defaultValue(180_000L)
-               .withDescription("The async timeout millisecond for the 
asynchronous operation to complete.");
+       public static final ConfigOption<String> SQL_EXEC_LOOKUP_ASYNC_TIMEOUT =
+                       key("sql.exec.lookup.async.timeout")
+                                       .defaultValue("3 min")
+                                       .withDescription("The async timeout for 
the asynchronous operation to complete.");
 
        // 
------------------------------------------------------------------------
        //  MiniBatch Options
        // 
------------------------------------------------------------------------
-
-       public static final ConfigOption<Long> SQL_EXEC_MINIBATCH_ALLOW_LATENCY 
=
-                       key("sql.exec.mini-batch.allow-latency.ms")
-                                       .defaultValue(Long.MIN_VALUE)
-                                       .withDescription("MiniBatch allow 
latency(ms). Value > 0 means MiniBatch enabled.");
+       public static final ConfigOption<String> 
SQL_EXEC_MINIBATCH_ALLOW_LATENCY =
+                       key("sql.exec.mini-batch.allow-latency")
+                                       .defaultValue("-1 ms")
+                                       .withDescription("The maximum latency 
can be used for MiniBatch to buffer input records. " +
+                                                       "MiniBatch is an 
optimization to buffer input records to reduce state access. " +
+                                                       "MiniBatch is triggered 
with the allowed latency interval and when the maximum number of buffered 
records reached. " +
+                                                       "If the allow-latency 
is greater than zero, MiniBatch will be enabled, otherwise, MiniBatch is 
disabled. " +
+                                                       "NOTE: MiniBatch only 
works for non-windowed aggregations currently.");
 
        public static final ConfigOption<Long> SQL_EXEC_MINIBATCH_SIZE =
                        key("sql.exec.mini-batch.size")
-                                       .defaultValue(Long.MIN_VALUE)
-                                       .withDescription("The maximum number of 
inputs that MiniBatch buffer can accommodate.");
-
-       // 
------------------------------------------------------------------------
-       //  STATE BACKEND Options
-       // 
------------------------------------------------------------------------
-
-       public static final ConfigOption<Boolean> 
SQL_EXEC_STATE_BACKEND_ON_HEAP =
-                       key("sql.exec.statebackend.onheap")
-                                       .defaultValue(false)
-                                       .withDescription("Whether the 
statebackend is on heap.");
+                                       .defaultValue(-1L)
+                                       .withDescription("The maximum number of 
input records can be buffered for MiniBatch. " +
+                                                       "MiniBatch is an 
optimization to buffer input records to reduce state access. " +
+                                                       "MiniBatch is triggered 
with the allowed latency interval and when the maximum number of buffered 
records reached. " +
+                                                       "NOTE: MiniBatch only 
works for non-windowed aggregations currently. Its value must be positive.");
 
        // 
------------------------------------------------------------------------
        //  State Options
        // 
------------------------------------------------------------------------
-
-       public static final ConfigOption<Long> SQL_EXEC_STATE_TTL_MS =
-                       key("sql.exec.state.ttl.ms")
-                                       .defaultValue(Long.MIN_VALUE)
+       public static final ConfigOption<String> SQL_EXEC_STATE_TTL =
+                       key("sql.exec.state.ttl")
+                                       .defaultValue("-1 ms")
                                        .withDescription("The minimum time 
until state that was not updated will be retained. State" +
                                                        " might be cleared and 
removed if it was not updated for the defined period of time.");
 
-       public static final ConfigOption<Long> SQL_EXEC_STATE_TTL_MAX_MS =
-                       key("sql.exec.state.ttl.max.ms")
-                                       .defaultValue(Long.MIN_VALUE)
-                                       .withDescription("The maximum time 
until state which was not updated will be retained." +
-                                                       "State will be cleared 
and removed if it was not updated for the defined " +
-                                                       "period of time.");
-
        // 
------------------------------------------------------------------------
        //  Other Exec Options
        // 
------------------------------------------------------------------------
-
+       @Documentation.ExcludeFromDocumentation(value = "Only for tests.")
 
 Review comment:
   As far as I know. It is used in production widely.. User can force to use 
`SortMergeJoin`.

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


With regards,
Apache Git Services

Reply via email to