ninsmiracle opened a new pull request, #1961: URL: https://github.com/apache/incubator-pegasus/pull/1961
### What problem does this PR solve? <!--add issue link with summary if exists--> #1665 And cause the misstake operate of PR #1666, I closed it and forced pull it. So I have to re pull in another pull request. ### What is changed and how does it work? I add another string in `meta_store` (meta_store is a column families which persist pegasus_last_manual_compact_finish_time and so on). So that we can read the value from meta_store when we recover a replica after replica migrate. ### Checklist <!--REMOVE the items that are not applicable--> ##### Tests <!-- At least one of them must be included. --> - Manual test 1.Create table,and put some data in it. 2.Let table begin to do manual compaction 3.Finish manual compaction and view the replica relationship of this table. 4.Stop a node,and check the progress of compaction. 5.Wait a few minutes,and check if still have some replica can not show a Finish status. Test Result ``` Pegasus-AdminCli-1.2.0 » manual-compaction query -a gns Table gns manual compaction progress is 100 Pegasus-AdminCli-1.2.0 » manual-compaction query -a gns Table gns manual compaction progress is 83 Pegasus-AdminCli-1.2.0 » manual-compaction query -a gns Table gns manual compaction progress is 83 Pegasus-AdminCli-1.2.0 » manual-compaction query -a gns Table gns manual compaction progress is 100 ``` ##### Code changes - try to read `LAST_MANUAL_COMPACT_USED_TIME` from meta_store when DB exist. - Set `LAST_MANUAL_COMPACT_USED_TIME` to zero when DB not exist. - Set `LAST_MANUAL_COMPACT_USED_TIME` to the time replica last used. - Generate a new checkpoint after we change LAST_MANUAL_COMPACT_USED_TIME in func `do_manual_compact` -- 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. To unsubscribe, e-mail: dev-unsubscr...@pegasus.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@pegasus.apache.org For additional commands, e-mail: dev-h...@pegasus.apache.org