[
https://issues.apache.org/jira/browse/PHOENIX-4764?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16664230#comment-16664230
]
Kadir OZDEMIR commented on PHOENIX-4764:
----------------------------------------
This patch introduces a new system table called SYSTEM.TASK. This table is used
to store tasks and then asynchronously process them using a pool of threads.
Currently, there is only one type of task which is used to drop child views of
a dropped table or child asynchronously, and thus there is only one thread in
the pool. The initial design implies that each type of task will get its own
thread and these threads will read the system task table to find their tasks.
Based on the discussion with [~karanmehta93], we may want to change this design
when we introduces more task types, such that we create a single thread that
reads the system task table and then dispatches the tasks to a pool of worker
threads. Then the worker threads would be responsible for processing the tasks,
and finally removing them from the system task table.
> Cleanup metadata of child views for a base table that has been dropped
> ----------------------------------------------------------------------
>
> Key: PHOENIX-4764
> URL: https://issues.apache.org/jira/browse/PHOENIX-4764
> Project: Phoenix
> Issue Type: Sub-task
> Reporter: Thomas D'Silva
> Assignee: Kadir OZDEMIR
> Priority: Major
> Attachments:
> 0001-PHOENIX-4764-Revised-fix-based-on-the-review-comment.patch
>
>
> When we drop a base table, we no longer drop all the child view metadata.
> Clean up the child view metadata during compaction.
> If we try to recreate a base table that was previously dropped but whose
> child view metadata wasn't cleaned up throw an exception. Add a test for
> this.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)