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

Guoliang Sun edited comment on KYLIN-5997 at 2/18/25 10:42 AM:
---------------------------------------------------------------

h3. Root Cause

During the modification of the snapshot response logic for internal tables, the 
logic for `tableScan` was incorrectly altered, causing queries on pure 
streaming models to trigger NPE (Null Pointer Exception) issues.

During the modification of the snapshot response logic for internal tables, the 
code logic was optimized by replacing null checks with `isEmpty`. However, in 
certain scenarios, calling `isEmpty` can trigger a null pointer exception, and 
in some cases, it may cause logical short-circuiting.

The build issue arises because the audit log replay mechanism in real-time 
tasks filters using paths that contain the model ID. After the metadata 
restructuring, some audit log metadata paths no longer include the model ID.  
h3. Dev Design

the behavior change is reasonable, but some parts of the code were not 
thoroughly modified and require further refinement.  
In the realization selection process, the previous behavior was:

!image-2025-02-18-17-33-11-649.png|width=553,height=251!

After the modification, the expected behavior is:

!image-2025-02-18-17-33-47-075.png|width=685,height=337!

Some step cases need to be adapted, and certain logic (e.g., exact match 
judgment logic) requires adjustment.

The fix involves adding a `model_uuid` field to the audit log table. All audit 
logs related to metadata changes for real-time tasks will be tagged with 
`model_uuid`. During partial replay, filtering will be performed using 
`model_uuid`.


was (Author: JIRAUSER298470):
h3. Root Cause

During the modification of the snapshot response logic for internal tables, the 
logic for `tableScan` was incorrectly altered, causing queries on pure 
streaming models to trigger NPE (Null Pointer Exception) issues.

During the modification of the snapshot response logic for internal tables, the 
code logic was optimized by replacing null checks with `isEmpty`. However, in 
certain scenarios, calling `isEmpty` can trigger a null pointer exception, and 
in some cases, it may cause logical short-circuiting.
h3. Dev Design

the behavior change is reasonable, but some parts of the code were not 
thoroughly modified and require further refinement.  
In the realization selection process, the previous behavior was:

!image-2025-02-18-17-33-11-649.png|width=553,height=251!

After the modification, the expected behavior is:

!image-2025-02-18-17-33-47-075.png|width=685,height=337!

Some step cases need to be adapted, and certain logic (e.g., exact match 
judgment logic) requires adjustment.

> Errors in building and querying real-time models
> ------------------------------------------------
>
>                 Key: KYLIN-5997
>                 URL: https://issues.apache.org/jira/browse/KYLIN-5997
>             Project: Kylin
>          Issue Type: Bug
>    Affects Versions: 5.0.0
>            Reporter: Guoliang Sun
>            Priority: Major
>         Attachments: image-2025-02-18-17-33-11-649.png, 
> image-2025-02-18-17-33-47-075.png
>
>




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

Reply via email to