You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@kylin.apache.org by "Guoliang Sun (Jira)" <ji...@apache.org> on 2025/02/19 08:12:00 UTC

[jira] [Commented] (KYLIN-6040) Logical view fails permanently after a single failure during the scheduled check.

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

Guoliang Sun commented on KYLIN-6040:
-------------------------------------

h3. Dev Design

Currently, after the first execution completes, `hasChecked` is set to `true`. If an exception is thrown, `isLogicalViewConfigLegal` is set to `false`.  
Once the issue is resolved, since `hasChecked` remains `true`, `listDatabases` will not be executed again. Additionally, because `isLogicalViewConfigLegal` is `false`, the error `DDL_CHECK_ERROR` will be thrown.  

To address this, modify the logic as follows:  
- Remove the use of `hasChecked` and `isLogicalViewConfigLegal`.  
- Always execute `listDatabases` during each invocation of `LogicalViewLoader.checkConfigIfNeed`.  
h3. Impact:

- `listDatabases` will now be executed every time `LogicalViewLoader.checkConfigIfNeed` is invoked.  

Scenarios where `LogicalViewLoader.checkConfigIfNeed` is executed:
1. Scheduled tasks:
   - Executes every `kylin.source.ddl.logical-view-catchup-interval` seconds (default value is 60 seconds) to sync views from the database via `syncViewFromDB`. This is triggered after creating, modifying, or deleting a logical view, which in turn triggers `syncViewAsync`.  
2. API endpoints:
   - `/api/spark_source/ddl/description`  
   - `/api/spark_source/ddl`

> Logical view fails permanently after a single failure during the scheduled check.
> ---------------------------------------------------------------------------------
>
>                 Key: KYLIN-6040
>                 URL: https://issues.apache.org/jira/browse/KYLIN-6040
>             Project: Kylin
>          Issue Type: Bug
>    Affects Versions: 5.0.0
>            Reporter: Guoliang Sun
>            Priority: Major
>
> - The job node was started while the Hive cluster was restarting, causing an error during the synchronization of `localview`.  
> - After a single error, in `LogicalViewLoader.checkConfigIfNeed`, the `hasChecked` flag is set to `true`, and `isLogicalViewConfigLegal` is set to `false`. As a result, every subsequent synchronization directly throws an error when reaching `checkConfigIfNeed`. 
> - Impact: Even after the Hive cluster recovers, the synchronization of `localview` continues to fail.  
> - Scope of impact: Synchronization of `localview` and creation of `localview`.



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