Hi Dev, I'd like to start a discussion about whether we can let catalog handle temporary catalog objects. Currently temporary table/view is managed by CatalogManager, and temporary function is managed by FunctionCatalog.
This causes problems when I try to support temporary hive table/function. For example, hive function class is different from what FunctionCatalog expects. And a temp hive table needs a temp data location which CatalogManager doesn't know how to assign. Maybe we have two options to solve this problem. 1. Let catalog manage temp objects just as persistent ones. CatalogManager/FunctionCatalog still needs to maintain temp objects that are associated with a non-existing catalog. 2. CatalogManager/FunctionCatalog can continue managing all the temp objects, but needs to somehow inform the catalog when a temp object is created/altered/dropped etc. And either way, we have to make sure temp table/function is processed by the TableFactory/FunctionDefinitionFactory associated with the catalog. Looking forward to your suggestions. -- Best regards! Rui Li