You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@kylin.apache.org by "ASF subversion and git services (Jira)" <ji...@apache.org> on 2023/05/06 07:00:00 UTC

[jira] [Commented] (KYLIN-5534) When normal users export TDS, due to the lack of duplicate name verification, which is inconsistent with the behavior of Admin users

    [ https://issues.apache.org/jira/browse/KYLIN-5534?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17720133#comment-17720133 ] 

ASF subversion and git services commented on KYLIN-5534:
--------------------------------------------------------

Commit 9af54c048448711da88658430af2bd147bc8989b in kylin's branch refs/heads/kylin5 from sibingzhang
[ https://gitbox.apache.org/repos/asf?p=kylin.git;h=9af54c0484 ]

KYLIN-5534 [FOLLOW UP] Set 'kylin.model.skip-check-tds' to true

Co-authored-by: sibing.zhang <si...@qq.com>


> When normal users export TDS, due to the lack of duplicate name verification, which is inconsistent with the behavior of Admin users
> ------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: KYLIN-5534
>                 URL: https://issues.apache.org/jira/browse/KYLIN-5534
>             Project: Kylin
>          Issue Type: Bug
>          Components: Modeling
>    Affects Versions: 5.0-alpha
>            Reporter: Yaguang Jia
>            Assignee: Yaguang Jia
>            Priority: Minor
>             Fix For: 5.0-beta
>
>
> The front-end exports TDS files, and will verify various duplicate names through this interface /kylin/api/models/validate_export.
> Before verification, all the columns of the model table will be obtained and stored in a map such as Map&lt;String, Column Def&gt; model Cols Map. The Column Def in this map will have an is Hidden attribute, which is true by default, which means to hide the column in TDS.
> However, when verifying the duplicate names of metrics, table columns, and dimension names, the model Cols Map will be obtained to get the columns from it and perform column Def.is Hidden() filtering. Obviously all columns will be filtered out. Caused the mistake to avoid the duplicate name check. Therefore, an error will be reported when importing tableau.
> Fix Design
> When verifying duplicate names, remove the filtering of the model Cols Map.
>  
> 前端导出TDS文件,会通过此接口{{{}/kylin/api/models/validate_export{}}}校验各种重名问题。
> 在校验前会获取到模型表的所有列,存储在{{{}Map<String, ColumnDef> modelColsMap{}}}这样一个map中。这个map中的{{{}ColumnDef{}}}会有一个{{{}isHidden{}}}属性,默认为true,含义就是在TDS中隐藏该列。
> 但是后续在进行度量与表列以及维度名重名校验时,会获取到{{{}modelColsMap{}}}这个map从中拿到列,进行{{{}columnDef.isHidden(){}}}过滤。显然所有列都会被过滤掉。导致错误的避开了重名校验。因此,在导入tableau时会报错。
> h4. *Fix Design*
> 重名校验时,去掉对{{{}modelColsMap{}}} 的过滤。



--
This message was sent by Atlassian Jira
(v8.20.10#820010)