[
https://issues.apache.org/jira/browse/KYLIN-4921?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18070892#comment-18070892
]
ASF GitHub Bot commented on KYLIN-4921:
---------------------------------------
codecov-commenter commented on PR #1604:
URL: https://github.com/apache/kylin/pull/1604#issuecomment-4184721737
##
[Codecov](https://app.codecov.io/gh/apache/kylin/pull/1604?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)
Report
:x: Patch coverage is `4.70588%` with `81 lines` in your changes missing
coverage. Please review.
:white_check_mark: Project coverage is 25.40%. Comparing base
([`af1e59f`](https://app.codecov.io/gh/apache/kylin/commit/af1e59f6e96201b6a6c4912204ff7faa2ec10d5d?dropdown=coverage&el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache))
to head
([`84e7fc8`](https://app.codecov.io/gh/apache/kylin/commit/84e7fc81681a136894b1c4e192859908a081d124?dropdown=coverage&el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)).
| [Files with missing
lines](https://app.codecov.io/gh/apache/kylin/pull/1604?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)
| Patch % | Lines |
|---|---|---|
|
[...ream/core/source/StreamingSourceConfigManager.java](https://app.codecov.io/gh/apache/kylin/pull/1604?src=pr&el=tree&filepath=stream-core%2Fsrc%2Fmain%2Fjava%2Forg%2Fapache%2Fkylin%2Fstream%2Fcore%2Fsource%2FStreamingSourceConfigManager.java&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache#diff-c3RyZWFtLWNvcmUvc3JjL21haW4vamF2YS9vcmcvYXBhY2hlL2t5bGluL3N0cmVhbS9jb3JlL3NvdXJjZS9TdHJlYW1pbmdTb3VyY2VDb25maWdNYW5hZ2VyLmphdmE=)
| 0.00% | [35 Missing :warning:
](https://app.codecov.io/gh/apache/kylin/pull/1604?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)
|
|
[...e/kylin/rest/controller/StreamingV2Controller.java](https://app.codecov.io/gh/apache/kylin/pull/1604?src=pr&el=tree&filepath=server-base%2Fsrc%2Fmain%2Fjava%2Forg%2Fapache%2Fkylin%2Frest%2Fcontroller%2FStreamingV2Controller.java&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache#diff-c2VydmVyLWJhc2Uvc3JjL21haW4vamF2YS9vcmcvYXBhY2hlL2t5bGluL3Jlc3QvY29udHJvbGxlci9TdHJlYW1pbmdWMkNvbnRyb2xsZXIuamF2YQ==)
| 0.00% | [14 Missing :warning:
](https://app.codecov.io/gh/apache/kylin/pull/1604?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)
|
|
[...n/java/org/apache/kylin/tool/CubeMigrationCLI.java](https://app.codecov.io/gh/apache/kylin/pull/1604?src=pr&el=tree&filepath=tool%2Fsrc%2Fmain%2Fjava%2Forg%2Fapache%2Fkylin%2Ftool%2FCubeMigrationCLI.java&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache#diff-dG9vbC9zcmMvbWFpbi9qYXZhL29yZy9hcGFjaGUva3lsaW4vdG9vbC9DdWJlTWlncmF0aW9uQ0xJLmphdmE=)
| 0.00% | [9 Missing :warning:
](https://app.codecov.io/gh/apache/kylin/pull/1604?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)
|
|
[...ylin/stream/core/source/StreamingSourceConfig.java](https://app.codecov.io/gh/apache/kylin/pull/1604?src=pr&el=tree&filepath=stream-core%2Fsrc%2Fmain%2Fjava%2Forg%2Fapache%2Fkylin%2Fstream%2Fcore%2Fsource%2FStreamingSourceConfig.java&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache#diff-c3RyZWFtLWNvcmUvc3JjL21haW4vamF2YS9vcmcvYXBhY2hlL2t5bGluL3N0cmVhbS9jb3JlL3NvdXJjZS9TdHJlYW1pbmdTb3VyY2VDb25maWcuamF2YQ==)
| 0.00% | [8 Missing :warning:
](https://app.codecov.io/gh/apache/kylin/pull/1604?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)
|
|
[.../apache/kylin/stream/source/kafka/KafkaSource.java](https://app.codecov.io/gh/apache/kylin/pull/1604?src=pr&el=tree&filepath=stream-source-kafka%2Fsrc%2Fmain%2Fjava%2Forg%2Fapache%2Fkylin%2Fstream%2Fsource%2Fkafka%2FKafkaSource.java&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache#diff-c3RyZWFtLXNvdXJjZS1rYWZrYS9zcmMvbWFpbi9qYXZhL29yZy9hcGFjaGUva3lsaW4vc3RyZWFtL3NvdXJjZS9rYWZrYS9LYWZrYVNvdXJjZS5qYXZh)
| 0.00% | [5 Missing :warning:
](https://app.codecov.io/gh/apache/kylin/pull/1604?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)
|
|
[.../apache/kylin/rest/service/StreamingV2Service.java](https://app.codecov.io/gh/apache/kylin/pull/1604?src=pr&el=tree&filepath=server-base%2Fsrc%2Fmain%2Fjava%2Forg%2Fapache%2Fkylin%2Frest%2Fservice%2FStreamingV2Service.java&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache#diff-c2VydmVyLWJhc2Uvc3JjL21haW4vamF2YS9vcmcvYXBhY2hlL2t5bGluL3Jlc3Qvc2VydmljZS9TdHJlYW1pbmdWMlNlcnZpY2UuamF2YQ==)
| 0.00% | [4 Missing :warning:
](https://app.codecov.io/gh/apache/kylin/pull/1604?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)
|
|
[...va/org/apache/kylin/rest/service/TableService.java](https://app.codecov.io/gh/apache/kylin/pull/1604?src=pr&el=tree&filepath=server-base%2Fsrc%2Fmain%2Fjava%2Forg%2Fapache%2Fkylin%2Frest%2Fservice%2FTableService.java&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache#diff-c2VydmVyLWJhc2Uvc3JjL21haW4vamF2YS9vcmcvYXBhY2hlL2t5bGluL3Jlc3Qvc2VydmljZS9UYWJsZVNlcnZpY2UuamF2YQ==)
| 0.00% | [2 Missing :warning:
](https://app.codecov.io/gh/apache/kylin/pull/1604?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)
|
|
[.../apache/kylin/rest/controller/TableController.java](https://app.codecov.io/gh/apache/kylin/pull/1604?src=pr&el=tree&filepath=server-base%2Fsrc%2Fmain%2Fjava%2Forg%2Fapache%2Fkylin%2Frest%2Fcontroller%2FTableController.java&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache#diff-c2VydmVyLWJhc2Uvc3JjL21haW4vamF2YS9vcmcvYXBhY2hlL2t5bGluL3Jlc3QvY29udHJvbGxlci9UYWJsZUNvbnRyb2xsZXIuamF2YQ==)
| 0.00% | [1 Missing :warning:
](https://app.codecov.io/gh/apache/kylin/pull/1604?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)
|
|
[.../org/apache/kylin/rest/service/ProjectService.java](https://app.codecov.io/gh/apache/kylin/pull/1604?src=pr&el=tree&filepath=server-base%2Fsrc%2Fmain%2Fjava%2Forg%2Fapache%2Fkylin%2Frest%2Fservice%2FProjectService.java&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache#diff-c2VydmVyLWJhc2Uvc3JjL21haW4vamF2YS9vcmcvYXBhY2hlL2t5bGluL3Jlc3Qvc2VydmljZS9Qcm9qZWN0U2VydmljZS5qYXZh)
| 0.00% | [1 Missing :warning:
](https://app.codecov.io/gh/apache/kylin/pull/1604?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)
|
|
[...rg/apache/kylin/stream/server/StreamingServer.java](https://app.codecov.io/gh/apache/kylin/pull/1604?src=pr&el=tree&filepath=stream-receiver%2Fsrc%2Fmain%2Fjava%2Forg%2Fapache%2Fkylin%2Fstream%2Fserver%2FStreamingServer.java&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache#diff-c3RyZWFtLXJlY2VpdmVyL3NyYy9tYWluL2phdmEvb3JnL2FwYWNoZS9reWxpbi9zdHJlYW0vc2VydmVyL1N0cmVhbWluZ1NlcnZlci5qYXZh)
| 0.00% | [1 Missing :warning:
](https://app.codecov.io/gh/apache/kylin/pull/1604?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)
|
| ... and [1
more](https://app.codecov.io/gh/apache/kylin/pull/1604?src=pr&el=tree-more&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)
| |
<details><summary>Additional details and impacted files</summary>
```diff
@@ Coverage Diff @@
## master #1604 +/- ##
============================================
- Coverage 25.51% 25.40% -0.12%
- Complexity 6762 6764 +2
============================================
Files 1505 1508 +3
Lines 93600 93961 +361
Branches 13103 13167 +64
============================================
- Hits 23884 23871 -13
- Misses 67342 67710 +368
- Partials 2374 2380 +6
```
</details>
[:umbrella: View full report in Codecov by
Sentry](https://app.codecov.io/gh/apache/kylin/pull/1604?dropdown=coverage&src=pr&el=continue&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache).
:loudspeaker: Have feedback on the report? [Share it
here](https://about.codecov.io/codecov-pr-comment-feedback/?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache).
<details><summary> :rocket: New features to boost your workflow: </summary>
- :snowflake: [Test
Analytics](https://docs.codecov.com/docs/test-analytics): Detect flaky tests,
report on failures, and find test suite problems.
- :package: [JS Bundle
Analysis](https://docs.codecov.com/docs/javascript-bundle-analysis): Save
yourself from yourself by tracking and limiting bundle sizes in JS merges.
</details>
> stream config lost when create table with same table_name in diff project.
> --------------------------------------------------------------------------
>
> Key: KYLIN-4921
> URL: https://issues.apache.org/jira/browse/KYLIN-4921
> Project: Kylin
> Issue Type: Bug
> Components: Real-time Streaming
> Reporter: Kun Liu
> Assignee: Kun Liu
> Priority: Major
> Fix For: v3.1.2
>
>
> In project A, I have created a stream table test_table.
> When I create the table test_table in project B, the table can't be created,
> but the source config of table in project A lost.
>
> The reason:
> In the `saveStreamingConfig` function, if creating table failed, the config
> will be dropped in finally phase.
>
>
> By design:
> In order to identity one stream table `StreamingSourceConfig` in the
> metastore, kylin use the key
> `ResourceStore.STREAMING_V2_RESOURCE_ROOT + "/" + name + ".json"` as the
> identifier.
> But this design can't work in multi-project.
> [~hit_lacus] PTAL
>
> [Design
> Doc|https://docs.google.com/document/u/1/d/1QfTn5dBcHeY2EAnMUS2V0sqj9dpFQwmVuAZon7wCtns/edit#]
>
> Design:
> h1. The Rowkey of the Stream source config
>
> h1. Origin design
>
> In the project `project_test`, we create a real-time stream table with the
> name of `stream_table`, which will create two metadata, one the `tableDesc`
> and another is `streamSourceConfig`.
>
> The `tableDesc` is stored in the hbase by the path
> `table_prefix/tablename--projectname.json`, but the `streamSourceConfig` is
> stored in the hbase by the path `stream_source_prefix/tablename.json`. The
> action of creating tables with the same name in different projects is not
> allowed.
>
> h1. New design
>
> The new rowkey for storing the `streamSourceConfig` is
> `stream_source_prefix/tablename--projectname.json`.
>
> h1. How to deal with the compatibility in kylin
> h2. The type of RowKey
> * NewRowKey: `stream_source_prefix/tablename--projectname.json`
> * OldRowKey: `stream_source_prefix/tablename.json`
> h2. The type of operation
> * save source
> * update source
> * query/get source
> * delete
> h3. saveStreamingConfig:
> * store the stream source config with NewRowKey
> h3. removeStreamingConfig:
> * if the source config exist in the NewRowKey, delete the source config
> using the NewRowKey
> * if the source config exist in the OldRowKey, delete the source config
> using the OldRowKey
> h3. updateStreamingConfig:
> * removeStreamingConfig
> * saveStreamingConfig
>
> h3. reloadStreamingConfigLocal/queryStreamingConfig
> Hypothesis: The stream config must exist.
>
> * check NewRowKey, if the source config exists, return the object.
> * if the source config doesn't exist, and the source config exists in the
> OldRowKey
> * get the Source config and update the project name of the source config
> * delete the source config in the OldRowKey and resave the source config in
> the NewRowKey
>
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)