[ https://issues.apache.org/jira/browse/CALCITE-2194?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16392066#comment-16392066 ]
Julian Hyde commented on CALCITE-2194: -------------------------------------- I did a quick pass; observations: * Quite a lot of re-formatting. House style is '=' at end of line, indent 2 or 4. Please stick to it. * Periods at ends of sentences please. * Why exclude RexImpTable.java from checkstyle? * Why is SqlAccessEnum.INDIRECT_SELECT necessary? * Thanks for implementing full access control rather than just "hidden", which I know was your original preference * You have made RelOptTableImpl no longer immutable * I don't like the name Fairy, and I don't like the general practice of putting config in thread-locals. Are there any alternatives? * There are a couple of places that call {{System.getProperty("user.name")}}. Not appropriate for a server/library. * "boolean indirect" parameter is added to several methods, never explained * Changes to .gitignore are a mess > Ability to hide a schema > ------------------------ > > Key: CALCITE-2194 > URL: https://issues.apache.org/jira/browse/CALCITE-2194 > Project: Calcite > Issue Type: New Feature > Components: core > Affects Versions: 1.16.0 > Reporter: Piotr Bojko > Assignee: Piotr Bojko > Priority: Minor > > See: > [https://mail-archives.apache.org/mod_mbox/calcite-dev/201711.mbox/ajax/%3C6F6E52D4-6860-4384-A1CB-A2301D05394D%40apache.org%3E] > I've looked into the core and the notion of an user could be hard to achieved > now. > Though, I am able to implement the "hidden schema" feature through following > changes: > # JsonSchema - add a holder for the feature, boolean flag or flags field > with enum (CACHED which now exists as a separate flag - some deprecation > could be needed, HIDDEN) > # CalciteSchema - pass through of a flag > # RelOptSchema - pass through of a flag > # CalciteCatalogReader - pass through of a flag > # Other derivatives of RelOptSchema - mocked value, false > # RelOptTable and impl - pass through of a flag > # SqlValidatorImpl - validation whether object from hidden schema is used > (in the same places like validateAccess) > # ViewTableMacro.apply -> Schemas.analyzeView -> > CalcitePrepareImpl.analyzeView -> CalcitePrepareImpl.parse_ -> > CalcitePrepareImpl.CalcitePrepareImpl - this path of execution should build > SqlValidatorImpl which has the check from point 7 disabled- > Such feature could be useful for end users. > If the solution is ok - I can contribute it. -- This message was sent by Atlassian JIRA (v7.6.3#76005)