Conversation
07f6203 to
25e0b25
Compare
25e0b25 to
8fd35ae
Compare
|
I looked at test |
07e94f9 to
323fc70
Compare
b04c0ff to
7467a76
Compare
cde7cac to
457c1e0
Compare
4706987 to
a27fb47
Compare
30fa6b0 to
18ff169
Compare
|
|
9000bfd to
e2488f5
Compare
|
Stateless tests release: Stateless test msan: |
tests/queries/0_stateless/02124_insert_deduplication_token_materialized_views.sql
Show resolved
Hide resolved
636ed03 to
3c509fd
Compare
4b55b78 to
92b8268
Compare
Revert "rework pushing to views #77309"
…-to-views Revert "Revert "rework pushing to views #77309""
This PR contains the preparation step on a way to implement deduplication with async inserts with materialized views.
Here I changed:
InsertDependenciesBuilder::createPostSinkcallscreatePostSink.ThreadStatus::internal_threadis removed. InsteadThreadGroup::createForMaterializedViewis used. For each MV a new designatedThreadGroupis created. All the stats are accumulated in the counters inside the thread group.logToQueryViewsLog. Now there is less code/classes to write the logs. NoViewRuntimeStatsclass is needed.materialized_views_ignore_errors, this PR includes changes from fix setting materialized_views_ignore_errors #73802*StorageLogsthat resulted in dropping the data when MV is removed.Also I faced and fixed:
LocalConnectiondid not send final stats at the endPushingAsyncPipelineExecutorhanged at the timeout withBREAKpolicy*Logstorages had wrong implementation ofcheckDependenciesmethod. It returnedtruewhen there are no dependencies at all.StorageURLSinkconnected remote url at the creating pipeline stage. I moved it to the execution stage.StorageSystemZooKeeper::writehad strange header configuration.A bit more explanation about guarantees when exception happen:
NOT_OKExample: exception happened in MV, than the data may be or may not be inserted in landing table.materialized_views_ignore_errors=true, than all exceptions in dependent tables have no effect on query execution. The landing table should have all data inserted. Query would have statusOK,system.query_views_logwould have the actual status for each dependent table.Related issue: #73015
Changelog category (leave one):
Changelog entry (a user-readable short description of the changes that goes to CHANGELOG.md):
Refactoring pushing to views.
Documentation entry for user-facing changes