Paul Morel
03/25/2026, 11:59 PMRocky
03/25/2026, 11:59 PMSELECT ID and SELECT id are treated as the same query.
* Table/Catalog Names: Historically case-sensitive by default. However, starting from v4.0, StarRocks introduced the FE configuration enable_table_name_case_insensitive. When set to true, catalog, database, and table names become case-insensitive (internally stored as lowercase).
2. Iceberg and Case Sensitivity
Since Iceberg itself supports case-sensitive column names (e.g., a table could theoretically have both a Name and name column), StarRocks currently maps these to its case-insensitive schema. If an Iceberg table contains columns that differ only by case, StarRocks may encounter a name collision or default to a specific mapping (usually lowercase).
3. Plans for Case-Sensitive Column Names
As of the latest stable releases (up to v3.3/v3.4) and the v4.0 preview:
* There is no current option to enable case-sensitive column names in StarRocks.
* There are no public roadmap items explicitly targeting the support for case-sensitive column names. The focus has primarily been on making the system more flexible regarding case-insensitivity for table/catalog names (to better support users coming from different ecosystem backgrounds).
Recommended Best Practice
To avoid issues with Iceberg or other external catalogs, the recommended practice in StarRocks is to:
* Use lowercase for all column names in your source systems (like Iceberg) whenever possible.
* Avoid creating schemas in Iceberg that rely on case differences to distinguish between columns.
If you have a critical use case requiring this, it is recommended to raise a feature request on the StarRocks GitHub repository to bring it to the attention of the maintainers, as it would require a significant change to the metadata and query engine layer.
References
• administration/management/FE_configuration.md
• data_source/feature-support-data-lake-analytics.md
• data_source/catalog/iceberg/iceberg_catalog.md