Uh oh!
There was an error while loading. Please reload this page.
[refactor](cluster)(step-4) remove cluster related to Database - #27861
Conversation
morningman
commented
Dec 1, 2023
run buildall |
morningman
commented
Dec 1, 2023
run buildall |
doris-robot
commented
Dec 1, 2023
(From new machine)TeamCity pipeline, clickbench performance test result: |
morningman
commented
Dec 1, 2023
run buildall |
doris-robot
commented
Dec 1, 2023
(From new machine)TeamCity pipeline, clickbench performance test result: |
morningman
commented
Dec 1, 2023
run buildall |
doris-robot
commented
Dec 1, 2023
(From new machine)TeamCity pipeline, clickbench performance test result: |
morningman
commented
Dec 3, 2023
run buildall |
doris-robot
commented
Dec 3, 2023
(From new machine)TeamCity pipeline, clickbench performance test result: |
doris-robot
commented
Dec 4, 2023
TPC-H test result on machine: 'aliyun_ecs.c7a.8xlarge_32C64G' |
43f7c27 to
cec8613Comparemorningman
commented
Dec 4, 2023
run buildall |
morningman
commented
Dec 4, 2023
run buildall |
doris-robot
commented
Dec 4, 2023
(From new machine)TeamCity pipeline, clickbench performance test result: |
doris-robot
commented
Dec 5, 2023
TPC-H test result on machine: 'aliyun_ecs.c7a.8xlarge_32C64G' |
morningman
commented
Dec 5, 2023
run buildall |
morningman
commented
Dec 6, 2023
run buildall |
doris-robot
commented
Dec 6, 2023
(From new machine)TeamCity pipeline, clickbench performance test result: |
doris-robot
commented
Dec 6, 2023
TPC-H test result on machine: 'aliyun_ecs.c7a.8xlarge_32C64G' |
68f8ad4 to
92c7515Comparemorningman
commented
Dec 9, 2023
run buildall |
…e#27861) Issue Number: apache#19897 Remove `default_cluster` prefix related to database. When upgrading, all prefix will be removed.
…pache#28532) Introduced from apache#27861 The `dbName` saved in `CreateTableInfo` has `default_cluster` prefix, it should be removed. Also modify the entry of `getDb` in internal catalog. This is a cover-up plan in case there may still db name exist with `default_cluster` prefix.
…e#27861) Issue Number: apache#19897 Remove `default_cluster` prefix related to database. When upgrading, all prefix will be removed.
…pache#28532) Introduced from apache#27861 The `dbName` saved in `CreateTableInfo` has `default_cluster` prefix, it should be removed. Also modify the entry of `getDb` in internal catalog. This is a cover-up plan in case there may still db name exist with `default_cluster` prefix.
…8199) Use the sql to query routine load records: ``` show routine load for db.job1\G ``` return all routine load job in the db: ``` 10 rows in set (0.02 sec) ``` why the bug happen is there is no correct assignment when analyze the sql: ``` if (Strings.isNullOrEmpty(dbName)) { dbFullName = analyzer.getContext().getDatabase(); if (Strings.isNullOrEmpty(dbFullName)) { ErrorReport.reportAnalysisException(ErrorCode.ERR_NO_DB_ERROR); } } ``` dbFullName will always null if dbName is not null or empty. The bug is introduce by: #27861
…8199) Use the sql to query routine load records: ``` show routine load for db.job1\G ``` return all routine load job in the db: ``` 10 rows in set (0.02 sec) ``` why the bug happen is there is no correct assignment when analyze the sql: ``` if (Strings.isNullOrEmpty(dbName)) { dbFullName = analyzer.getContext().getDatabase(); if (Strings.isNullOrEmpty(dbFullName)) { ErrorReport.reportAnalysisException(ErrorCode.ERR_NO_DB_ERROR); } } ``` dbFullName will always null if dbName is not null or empty. The bug is introduce by: #27861
fix - when label contains dbName, will loss intro by apache#27861 - show routine load for xxx.yyy can export authentication error intro by apache#33347 Note: Cases will be added uniformly in other PRs
…e#27861) Issue Number: apache#19897 Remove `default_cluster` prefix related to database. When upgrading, all prefix will be removed.
…pache#28532) Introduced from apache#27861 The `dbName` saved in `CreateTableInfo` has `default_cluster` prefix, it should be removed. Also modify the entry of `getDb` in internal catalog. This is a cover-up plan in case there may still db name exist with `default_cluster` prefix.
…ache#38199) Use the sql to query routine load records: ``` show routine load for db.job1\G ``` return all routine load job in the db: ``` 10 rows in set (0.02 sec) ``` why the bug happen is there is no correct assignment when analyze the sql: ``` if (Strings.isNullOrEmpty(dbName)) { dbFullName = analyzer.getContext().getDatabase(); if (Strings.isNullOrEmpty(dbFullName)) { ErrorReport.reportAnalysisException(ErrorCode.ERR_NO_DB_ERROR); } } ``` dbFullName will always null if dbName is not null or empty. The bug is introduce by: apache#27861
fix - when label contains dbName, will loss intro by apache#27861 - show routine load for xxx.yyy can export authentication error intro by apache#33347 Note: Cases will be added uniformly in other PRs
### What problem does this PR solve? Issue Number: closeapache#27861 Problem Summary: After TABLE REPLACE on an IVM base table, a COMPLETE refresh fails while planning (IvmUtil.getIvmStream rejects the replaced base table). The command fails before StmtExecutor.planner() is created, and MTMVTask.createRefreshConsumer dereferences the null planner to capture the IVM plan signature, throwing "Cannot invoke NereidsPlanner.getCascadesContext() because the return value of StmtExecutor.planner() is null". The NPE is thrown from the executeCommand finally block and masks the original IvmException, making the real failure hard to diagnose. Fix: skip signature extraction when executor.planner() is null so the original command error propagates instead of being replaced by the NPE. ### Release note None ### Check List (For Author) - Test: Regression test ivm_ddl_concurrent_lifecycle_matrix - verified the NPE is gone and the task now fails with the original IvmException (IVM stream is unavailable or references a different base table) - Behavior changed: No - Does this need documentation: No
### What problem does this PR solve? Issue Number: closeapache#27861 Problem Summary: After TABLE REPLACE on an IVM base table, a COMPLETE refresh fails while planning (IvmUtil.getIvmStream rejects the replaced base table). The command fails before StmtExecutor.planner() is created, and MTMVTask.createRefreshConsumer dereferences the null planner to capture the IVM plan signature, throwing "Cannot invoke NereidsPlanner.getCascadesContext() because the return value of StmtExecutor.planner() is null". The NPE is thrown from the executeCommand finally block and masks the original IvmException, making the real failure hard to diagnose. Fix: skip signature extraction when executor.planner() is null so the original command error propagates instead of being replaced by the NPE. ### Release note None ### Check List (For Author) - Test: Regression test ivm_ddl_concurrent_lifecycle_matrix - verified the NPE is gone and the task now fails with the original IvmException (IVM stream is unavailable or references a different base table) - Behavior changed: No - Does this need documentation: No
### What problem does this PR solve? Issue Number: closeapache#27861 Problem Summary: After TABLE REPLACE on an IVM base table, a COMPLETE refresh fails while planning (IvmUtil.getIvmStream rejects the replaced base table). The command fails before StmtExecutor.planner() is created, and MTMVTask.createRefreshConsumer dereferences the null planner to capture the IVM plan signature, throwing "Cannot invoke NereidsPlanner.getCascadesContext() because the return value of StmtExecutor.planner() is null". The NPE is thrown from the executeCommand finally block and masks the original IvmException, making the real failure hard to diagnose. Fix: skip signature extraction when executor.planner() is null so the original command error propagates instead of being replaced by the NPE. ### Release note None ### Check List (For Author) - Test: Regression test ivm_ddl_concurrent_lifecycle_matrix - verified the NPE is gone and the task now fails with the original IvmException (IVM stream is unavailable or references a different base table) - Behavior changed: No - Does this need documentation: No
### What problem does this PR solve? Issue Number: closeapache#27861 Problem Summary: After TABLE REPLACE on an IVM base table, a COMPLETE refresh fails while planning (IvmUtil.getIvmStream rejects the replaced base table). The command fails before StmtExecutor.planner() is created, and MTMVTask.createRefreshConsumer dereferences the null planner to capture the IVM plan signature, throwing "Cannot invoke NereidsPlanner.getCascadesContext() because the return value of StmtExecutor.planner() is null". The NPE is thrown from the executeCommand finally block and masks the original IvmException, making the real failure hard to diagnose. Fix: skip signature extraction when executor.planner() is null so the original command error propagates instead of being replaced by the NPE. ### Release note None ### Check List (For Author) - Test: Regression test ivm_ddl_concurrent_lifecycle_matrix - verified the NPE is gone and the task now fails with the original IvmException (IVM stream is unavailable or references a different base table) - Behavior changed: No - Does this need documentation: No
### What problem does this PR solve? Issue Number: closeapache#27861 Problem Summary: After TABLE REPLACE on an IVM base table, a COMPLETE refresh fails while planning (IvmUtil.getIvmStream rejects the replaced base table). The command fails before StmtExecutor.planner() is created, and MTMVTask.createRefreshConsumer dereferences the null planner to capture the IVM plan signature, throwing "Cannot invoke NereidsPlanner.getCascadesContext() because the return value of StmtExecutor.planner() is null". The NPE is thrown from the executeCommand finally block and masks the original IvmException, making the real failure hard to diagnose. Fix: skip signature extraction when executor.planner() is null so the original command error propagates instead of being replaced by the NPE. ### Release note None ### Check List (For Author) - Test: Regression test ivm_ddl_concurrent_lifecycle_matrix - verified the NPE is gone and the task now fails with the original IvmException (IVM stream is unavailable or references a different base table) - Behavior changed: No - Does this need documentation: No
### What problem does this PR solve? Issue Number: closeapache#27861 Problem Summary: After TABLE REPLACE on an IVM base table, a COMPLETE refresh fails while planning (IvmUtil.getIvmStream rejects the replaced base table). The command fails before StmtExecutor.planner() is created, and MTMVTask.createRefreshConsumer dereferences the null planner to capture the IVM plan signature, throwing "Cannot invoke NereidsPlanner.getCascadesContext() because the return value of StmtExecutor.planner() is null". The NPE is thrown from the executeCommand finally block and masks the original IvmException, making the real failure hard to diagnose. Fix: skip signature extraction when executor.planner() is null so the original command error propagates instead of being replaced by the NPE. ### Release note None ### Check List (For Author) - Test: Regression test ivm_ddl_concurrent_lifecycle_matrix - verified the NPE is gone and the task now fails with the original IvmException (IVM stream is unavailable or references a different base table) - Behavior changed: No - Does this need documentation: No
### What problem does this PR solve? Issue Number: closeapache#27861 Problem Summary: After TABLE REPLACE on an IVM base table, a COMPLETE refresh fails while planning (IvmUtil.getIvmStream rejects the replaced base table). The command fails before StmtExecutor.planner() is created, and MTMVTask.createRefreshConsumer dereferences the null planner to capture the IVM plan signature, throwing "Cannot invoke NereidsPlanner.getCascadesContext() because the return value of StmtExecutor.planner() is null". The NPE is thrown from the executeCommand finally block and masks the original IvmException, making the real failure hard to diagnose. Fix: skip signature extraction when executor.planner() is null so the original command error propagates instead of being replaced by the NPE. ### Release note None ### Check List (For Author) - Test: Regression test ivm_ddl_concurrent_lifecycle_matrix - verified the NPE is gone and the task now fails with the original IvmException (IVM stream is unavailable or references a different base table) - Behavior changed: No - Does this need documentation: No
### What problem does this PR solve? Issue Number: closeapache#27861 Problem Summary: After TABLE REPLACE on an IVM base table, a COMPLETE refresh fails while planning (IvmUtil.getIvmStream rejects the replaced base table). The command fails before StmtExecutor.planner() is created, and MTMVTask.createRefreshConsumer dereferences the null planner to capture the IVM plan signature, throwing "Cannot invoke NereidsPlanner.getCascadesContext() because the return value of StmtExecutor.planner() is null". The NPE is thrown from the executeCommand finally block and masks the original IvmException, making the real failure hard to diagnose. Fix: skip signature extraction when executor.planner() is null so the original command error propagates instead of being replaced by the NPE. ### Release note None ### Check List (For Author) - Test: Regression test ivm_ddl_concurrent_lifecycle_matrix - verified the NPE is gone and the task now fails with the original IvmException (IVM stream is unavailable or references a different base table) - Behavior changed: No - Does this need documentation: No
### What problem does this PR solve? Issue Number: closeapache#27861 Problem Summary: After TABLE REPLACE on an IVM base table, a COMPLETE refresh fails while planning (IvmUtil.getIvmStream rejects the replaced base table). The command fails before StmtExecutor.planner() is created, and MTMVTask.createRefreshConsumer dereferences the null planner to capture the IVM plan signature, throwing "Cannot invoke NereidsPlanner.getCascadesContext() because the return value of StmtExecutor.planner() is null". The NPE is thrown from the executeCommand finally block and masks the original IvmException, making the real failure hard to diagnose. Fix: skip signature extraction when executor.planner() is null so the original command error propagates instead of being replaced by the NPE. ### Release note None ### Check List (For Author) - Test: Regression test ivm_ddl_concurrent_lifecycle_matrix - verified the NPE is gone and the task now fails with the original IvmException (IVM stream is unavailable or references a different base table) - Behavior changed: No - Does this need documentation: No
### What problem does this PR solve? Issue Number: closeapache#27861 Problem Summary: After TABLE REPLACE on an IVM base table, a COMPLETE refresh fails while planning (IvmUtil.getIvmStream rejects the replaced base table). The command fails before StmtExecutor.planner() is created, and MTMVTask.createRefreshConsumer dereferences the null planner to capture the IVM plan signature, throwing "Cannot invoke NereidsPlanner.getCascadesContext() because the return value of StmtExecutor.planner() is null". The NPE is thrown from the executeCommand finally block and masks the original IvmException, making the real failure hard to diagnose. Fix: skip signature extraction when executor.planner() is null so the original command error propagates instead of being replaced by the NPE. ### Release note None ### Check List (For Author) - Test: Regression test ivm_ddl_concurrent_lifecycle_matrix - verified the NPE is gone and the task now fails with the original IvmException (IVM stream is unavailable or references a different base table) - Behavior changed: No - Does this need documentation: No
### What problem does this PR solve? Issue Number: closeapache#27861 Problem Summary: After TABLE REPLACE on an IVM base table, a COMPLETE refresh fails while planning (IvmUtil.getIvmStream rejects the replaced base table). The command fails before StmtExecutor.planner() is created, and MTMVTask.createRefreshConsumer dereferences the null planner to capture the IVM plan signature, throwing "Cannot invoke NereidsPlanner.getCascadesContext() because the return value of StmtExecutor.planner() is null". The NPE is thrown from the executeCommand finally block and masks the original IvmException, making the real failure hard to diagnose. Fix: skip signature extraction when executor.planner() is null so the original command error propagates instead of being replaced by the NPE. ### Release note None ### Check List (For Author) - Test: Regression test ivm_ddl_concurrent_lifecycle_matrix - verified the NPE is gone and the task now fails with the original IvmException (IVM stream is unavailable or references a different base table) - Behavior changed: No - Does this need documentation: No
### What problem does this PR solve? Issue Number: closeapache#27861 Problem Summary: After TABLE REPLACE on an IVM base table, a COMPLETE refresh fails while planning (IvmUtil.getIvmStream rejects the replaced base table). The command fails before StmtExecutor.planner() is created, and MTMVTask.createRefreshConsumer dereferences the null planner to capture the IVM plan signature, throwing "Cannot invoke NereidsPlanner.getCascadesContext() because the return value of StmtExecutor.planner() is null". The NPE is thrown from the executeCommand finally block and masks the original IvmException, making the real failure hard to diagnose. Fix: skip signature extraction when executor.planner() is null so the original command error propagates instead of being replaced by the NPE. ### Release note None ### Check List (For Author) - Test: Regression test ivm_ddl_concurrent_lifecycle_matrix - verified the NPE is gone and the task now fails with the original IvmException (IVM stream is unavailable or references a different base table) - Behavior changed: No - Does this need documentation: No
Proposed changes
Issue Number: #19897
Remove
default_clusterprefix related to database.When upgrading, all prefix will be removed.
Further comments
If this is a relatively large or complex change, kick off the discussion at dev@doris.apache.org by explaining why you chose the solution you did and what alternatives you considered, etc...