arina-ielchiieva opened a new pull request #1439: DRILL-6492: Ensure schema / 
workspace case insensitivity in Drill
URL: https://github.com/apache/drill/pull/1439
 
 
   1. StoragePluginsRegistryImpl was updated:
   a. for backward compatibility at init to convert all existing storage 
plugins names to lower case, in case of duplicates, to log warning and skip the 
duplicate.
   b. to wrap persistent plugins registry into case insensitive store wrapper 
(CaseInsensitivePersistentStore) to ensure all given keys are converted into 
lower case when performing insert, update, delete, search operations.
   c. to load system storage plugins dynamically by @SystemStorage annotation.
   2. StoragePlugins class was updated to stored storage plugins configs by 
name in case insensitive map.
   3. SchemaUtilities.searchSchemaTree method was updated to convert all schema 
names into lower case to ensure that are they are matched case insensitively 
(all schemas are stored in Drill in lower case).
   4. FileSystemConfig was updated to store workspaces by name in case 
insensitive hash map.
   5. All plugins schema factories are now extend AbstractSchemaFactory to 
ensure that given schema name is converted to lower case.
   6. New method areTableNamesAreCaseInsensitive was added to AbstractSchema to 
indicate if schema tables names are case insensitive. By default, false. Schema 
implementation is responsible for table names case insensitive search in case 
it supports one. Currently, information_schema, sys and hive do so.
   7. System storage plugins (information_schema, sys) were refactored to 
ensure their schema, table names are case insensitive, also the annotation 
@SystemPlugin and additional constructor were added to allow dynamically load 
system plugins at storage plugin registry during init phase.
   8. MetadataProvider was updated to concert all schema filter conditions into 
lower case to ensure schema would be matched case insensitively.
   9. ShowSchemasHandler, ShowTablesHandler, DescribeTableHandler were updated 
to ensure schema / tables names (this depends if schema supports case 
insensitive table names) would be found case insensitively.
   
   Other details in 
[DRILL-6492](https://issues.apache.org/jira/browse/DRILL-6492).

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


With regards,
Apache Git Services

Reply via email to