[ 
https://issues.apache.org/jira/browse/HIVE-24302?focusedWorklogId=504793&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-504793
 ]

ASF GitHub Bot logged work on HIVE-24302:
-----------------------------------------

                Author: ASF GitHub Bot
            Created on: 26/Oct/20 16:24
            Start Date: 26/Oct/20 16:24
    Worklog Time Spent: 10m 
      Work Description: klcopp opened a new pull request #1612:
URL: https://github.com/apache/hive/pull/1612


   # What changes were proposed in this pull request?
   If the global min open txnid blocks cleaner for a certain table, then 
cleaner will skip that compaction queue entry and leave it in the queue for 
later.
   
   ### Why are the changes needed?
   If the global min open txnid blocks cleaner for a certain table, then 
cleaner "runs", doesn't delete any files, and marks compaction as succeeded as 
if everything were fine.
   
   ### Does this PR introduce _any_ user-facing change?
   Yes, if the global min open txnid blocks cleaner for a certain table, then 
cleaner will skip that compaction queue entry and leave it in the queue for 
later.
   
   ### How was this patch tested?
   Unit tests


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Issue Time Tracking
-------------------

            Worklog Id:     (was: 504793)
    Remaining Estimate: 0h
            Time Spent: 10m

> Cleaner shouldn't run if it can't remove obsolete files
> -------------------------------------------------------
>
>                 Key: HIVE-24302
>                 URL: https://issues.apache.org/jira/browse/HIVE-24302
>             Project: Hive
>          Issue Type: Bug
>            Reporter: Karen Coppage
>            Assignee: Karen Coppage
>            Priority: Major
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> Example:
>  # open txn 5, leave it open (maybe it's a long-running compaction)
>  # insert into table t in txns 6, 7 with writeids 1, 2
>  # compactor.Worker runs on table t and compacts writeids 1, 2
>  # compactor.Cleaner picks up the compaction queue entry, but doesn't delete 
> any files because the min global open txnid is 5, which cannot see writeIds 
> 1, 2.
>  # Cleaner marks the compactor queue entry as cleaned and removes the entry 
> from the queue.
> delta_1 and delta_2 will remain in the file system until another compaction 
> is run on table t.
> Step 5 should not happen, we should skip calling markCleaned() and leave it 
> in the queue in "ready to clean" state. MarkCleaned() should be called only 
> after txn 5 is closed and, following that, the cleaner runs successfully.
> This will potentially slow down the cleaner, but on the other hand it won't 
> silently "fail" i.e. not do its job.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to