github-actions[bot] commented on code in PR #63744:
URL: https://github.com/apache/doris/pull/63744#discussion_r3310130606
##########
fe/fe-core/src/main/java/org/apache/doris/qe/VariableMgr.java:
##########
@@ -127,6 +128,33 @@ public class VariableMgr {
private static final Lock rlock = rwlock.readLock();
private static final Lock wlock = rwlock.writeLock();
+ // Session variables that have been removed from SessionVariable.java but
may still appear in
+ // user scripts, JDBC client connection init, or older replayed-edit logs.
Looking up these
+ // names by SET or SELECT @@ silently no-ops instead of throwing
ERR_UNKNOWN_SYSTEM_VARIABLE,
+ // so a BE-then-FE rolling upgrade does not break existing workloads. All
entries in this set
+ // must use lowercase to match the case-insensitive comparison.
+ private static final ImmutableSet<String> REMOVED_SESSION_VAR_NAMES =
ImmutableSet.of(
+ "enable_jdbc_oracle_null_predicate_push_down",
+ "use_v2_rollup",
+ "rewrite_count_distinct_to_bitmap_hll",
+ "enable_variant_access_in_original_planner",
+ "extract_wide_range_expr",
+ "auto_broadcast_join_threshold",
+ "runtime_filters_max_num",
+ "disable_inverted_index_v1_for_variant",
+ "enable_infer_predicate",
+ "limit_rows_for_single_instance",
+ "nereids_star_schema_support",
+ "enable_cbo_statistics",
+ "enable_eliminate_sort_node",
+ "drop_table_if_ctas_failed",
+ "trace_nereids",
+ "enable_sync_mv_cost_based_rewrite");
+
+ private static boolean isRemovedSessionVar(String varName) {
+ return varName != null &&
REMOVED_SESSION_VAR_NAMES.contains(varName.toLowerCase());
+ }
+
// Form map from variable name to its field in Java class.
static {
Review Comment:
Removing this session variable breaks the JDBC Oracle NULL predicate
pushdown path. `JdbcQueryBuilder` still reads
`enable_jdbc_oracle_null_predicate_push_down` from the session properties map,
but after this change `SET enable_jdbc_oracle_null_predicate_push_down=true` is
silently ignored and `VariableMgr.toMap()` no longer includes the key, so
`oracleNullPredicatePushDown` always falls back to `false`. Please keep this
variable until the connector no longer depends on it, or replace it with
another forwarded setting and update the connector at the same time.
--
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.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]