Thanks for the vote, Josh.

So far there have been 3 +1's (Enis', mine and Josh's)

Should we start another thread on the procedure of merging or use this
thread ?
Background:
HBASE-7912 branch is way out of date.
Latest rounds of mega patch were based on then-current master branch.

Thanks

On Wed, Mar 15, 2017 at 4:22 PM, Josh Elser <els...@apache.org> wrote:

> Spent the day playing around with this on 6 nodes.
>
> I've found some rough edges: some known (the docs blocker Vlad pointed
> out) and some that I think are unknown (tooling is rough -- partially from
> wrong help messages and, I think, changes in design like Master-submitted
> MR jobs).
>
> But, Stack's assessment (and Andrew's reminder) that further tweaking
> would just throw us back into another review cycle is a real concern. It's
> unfortunate that this feature has lingered so long aside of master to get
> to this point, but I don't see any realistic resolution to this problem
> than a merge. In the future, this is something we'll have to try harder to
> avoid letting happen (looking in the mirror with quota work...)
>
> Thankfully, I can help out with development/review on the outstanding
> blockers (notably, the two I pruned from Vlad's original of five -- the
> other three still seem to be improvements). In addition to these blockers,
> I believe the documentation *must* be updated before a release to note that
> this feature is still growing -- it does not feel like a quality feature
> that I've come to expect from this community. This isn't a knock on Vlad
> and company; this is a hard problem and one that I could not have done
> better given time constraints, but it is also one that users will demand
> simplicity and the utmost correctness around. To this end, I will also try
> to help out to smooth out these issues in the following 2.x release.
>
> So, this leaves me to say: +1 to merge with the caveat that the docs are
> updated to make sure that any known, user-pitfalls are clearly documented.
> This vote also comes with as real of a promise that I can make to help
> avoid any issues with this feature that would prevent a 2.0 release.
>
> Thanks to all the giants whose shoulders I'm standing on to be able to
> make this vote.
>
> Andrew Purtell wrote:
>
>> Great, and I changed my vote to -0 because Stack made a good argument that
>> making more changes would invalidate review up to this point, and I trust
>> this will be resolved before release.
>>
>> On Tue, Mar 14, 2017 at 4:29 PM, Josh Elser<els...@apache.org>  wrote:
>>
>> Sorry Andrew, let me clarify as that didn't come out right.
>>>
>>> I didn't mean that isn't a conversation worth having _now_, just that I
>>> was intentionally avoiding it in my previous email because I didn't
>>> understand the scope of those issues that Vlad had identified. I wanted
>>> to
>>> better understand what they were really meant for a user before coming to
>>> my own decision about whether or not I think they are blockers.
>>>
>>> That aside, I would agree with you that HBASE-15227 sounds like a real
>>> blocker. Forcing a new full backup for every table sounds really bad --
>>> that's not the kind of experience we'd want a user to have.
>>>
>>> Andrew Purtell wrote:
>>>
>>> I'm going to intentional avoid addressing the discussion of shipping
>>>> partial features (related, but not relevant at the moment).
>>>>
>>>> Then we are not having the same conversation, because it is precisely
>>>> because this is a vote for this feature to go into 2.0, which is already
>>>> overdue, so should be released yesterday, that I took mention of
>>>> "blocker"
>>>> at face value. At least one of them seems to certainly approach this
>>>> definition. It will be not user friendly, to say the least, to use this
>>>> in
>>>> a large scale deployment with HBASE-15227 unfinished. HBASE-15227
>>>> currently
>>>> has a severity of BLOCKER. Despite what is going on in our politics,
>>>> words
>>>> matter and we do not get to redefine them for convenience.
>>>>
>>>> Once this work is merged in, how is HBASE-15227 not a blocker for 2.0?
>>>> Because Vlad offered to reduce its severity to make me feel better?
>>>> Currently the description on the issue is "System must be tolerant to
>>>> faults. Backup operations MUST be atomic (no partial completion state in
>>>> system table)" Sounds like a blocker to me, indeed. It is an honest
>>>> assessment and I don't think anyone is doing the community a favor by
>>>> trying to walk that back.
>>>>
>>>>
>>>> On Tue, Mar 14, 2017 at 1:57 PM, Josh Elser<els...@apache.org>   wrote:
>>>>
>>>> I took a moment to read through the "blockers" as originally identified
>>>> by
>>>>
>>>>> Vlad, and (to echo Enis' take) I read the majority of them as being
>>>>> blockers not for the next release, but for a "full-fledged feature".
>>>>> I'm
>>>>> going to intentional avoid addressing the discussion of shipping
>>>>> partial
>>>>> features (related, but not relevant at the moment).
>>>>>
>>>>> HBASE-15227 is actually the one that bothers me the most, with
>>>>> HBASE-17133
>>>>> coming in close behind. Vlad, is there any documentation you can point
>>>>> me
>>>>> to about what the current issues are with the current implementation?
>>>>> For
>>>>> example, what happens now if the system has some kind of "partial
>>>>> completion state"?
>>>>>
>>>>> Documentation is one of those that is really hard to judge. We want to
>>>>> get
>>>>> this code out for people to use (and to free up our strained dev
>>>>> resources), but what good is some feature if the docs are
>>>>> missing/incomplete?
>>>>>
>>>>> I think I could stomach the docs being inaccurate (with a clear
>>>>> disclaimer
>>>>> that the chapter is incomplete -- that's a 5min task). But, I think I
>>>>> need
>>>>> an answer about how the feature handles our common dist-sys category of
>>>>> problems before I can consider whether I'm ok with the feature hitting
>>>>> 2.0...
>>>>>
>>>>> I'll also try to throw up a few nodes and play with it to address the
>>>>> problem as an (ignorant) user ;)
>>>>>
>>>>>
>>>>> Andrew Purtell wrote:
>>>>>
>>>>> I don't like that issues were identified as "blockers" but now there is
>>>>>
>>>>>> an
>>>>>> attempt to walk that back.
>>>>>>
>>>>>> I don't like that development of this feature has lingered for a long
>>>>>> time
>>>>>> in this unfinished state when this work could have been done by now,
>>>>>> now
>>>>>> that we are trying to get a 2.0 out the door. Because this is a
>>>>>> volunteer
>>>>>> project I cannot make any demand that it should be done, but I can
>>>>>> certainly look at the current state and be nonplussed. This will be
>>>>>> yet
>>>>>> another half finished thing in 2.0 when this merge happens. Promises
>>>>>> to
>>>>>> finish the unfinished work are nice but not currency. Commits are
>>>>>> currency.
>>>>>> I hope at least the fault tolerance changes can be completed and
>>>>>> committed
>>>>>> before we spin a 2.0 RC, and without causing a 2.0 release to slip
>>>>>> further.
>>>>>>
>>>>>> Also, marking something experimental should be done on the merits of
>>>>>> that
>>>>>> evaluation, not simply to justify dropping unfinished work into a
>>>>>> release
>>>>>> branch.
>>>>>>
>>>>>> I will change my vote to -0.
>>>>>>
>>>>>>
>>>>>> On Mon, Mar 13, 2017 at 4:05 PM, Enis Söztutar<e...@apache.org>
>>>>>>   wrote:
>>>>>>
>>>>>> I think there is some misconception of using the term "blockers" for
>>>>>>
>>>>>> referring to those jiras. My understanding is that those three jiras
>>>>>>> are
>>>>>>> blockers for the backup functionality to be more mature and more
>>>>>>> usable.
>>>>>>> But they are not release blockers. Let's say we merged the code in,
>>>>>>> and
>>>>>>> for
>>>>>>> some reason those did not get addressed in time. We can still do the
>>>>>>> 2.0
>>>>>>> release without having to wait for the commits. We can instead mark
>>>>>>> the
>>>>>>> "backup" feature as experimental with known issues and go on with the
>>>>>>> release. In that sense they are not real release blockers.
>>>>>>>
>>>>>>> We are proposing the merge at this time because of the above that
>>>>>>> maintaining this in a branch is becoming extremely costly and not
>>>>>>> productive for the HBase community. Realistically, we cannot have the
>>>>>>> luxury of having to wait another couple of months and doing yet
>>>>>>> another
>>>>>>> giant round of reviews because the code base is a moving target.
>>>>>>>
>>>>>>> Enis
>>>>>>>
>>>>>>> On Mon, Mar 13, 2017 at 3:46 PM, Devaraj Das<d...@hortonworks.com>
>>>>>>> wrote:
>>>>>>>
>>>>>>> Vlad, on the first point, I think what Stack is saying is that
>>>>>>> creating
>>>>>>>
>>>>>>> the new branch (as Ted did) ignores the feedback incorporated thus
>>>>>>>> far
>>>>>>>> in
>>>>>>>> the iterations of the mega-patch. That's a wrong way to go.
>>>>>>>> On the separation into a backup module, again, that was reverted to
>>>>>>>> ease
>>>>>>>> reviews of the mega-patch, and was noted as work to be done later. I
>>>>>>>>
>>>>>>>> think
>>>>>>>>
>>>>>>> Stack just wants to make the list of remaining work more complete by
>>>>>>>
>>>>>>>> citing
>>>>>>>>
>>>>>>> that as pending work.
>>>>>>>
>>>>>>>> ________________________________________
>>>>>>>> From: Vladimir Rodionov<vladrodio...@gmail.com>
>>>>>>>> Sent: Monday, March 13, 2017 3:09 PM
>>>>>>>> To: dev@hbase.apache.org
>>>>>>>> Subject: Re: [VOTE] Backup/Restore feature for HBase 2.0, vote
>>>>>>>> closing
>>>>>>>> 3/11/2017
>>>>>>>>
>>>>>>>>     It ignores the feedback
>>>>>>>>
>>>>>>>> If I "ignore" feedback, I put my comment - why? I am always  open
>>>>>>>>> for
>>>>>>>>>
>>>>>>>>> further discussions. If reviewer does not insist on a particular
>>>>>>>> request
>>>>>>>>
>>>>>>>> -
>>>>>>>>
>>>>>>> it will be dropped. I think it is fair.
>>>>>>>
>>>>>>>> he list is incomplete because a bunch of
>>>>>>>>
>>>>>>>> follow-ons came of the review cycle (including moving backup/restore
>>>>>>>>>
>>>>>>>>>> out
>>>>>>>>>>
>>>>>>>>> of
>>>>>>>>
>>>>>>>> core to live in its own module).
>>>>>>>>
>>>>>>>>> For those who were not following our lengthy conversation on a
>>>>>>>>> review
>>>>>>>>>
>>>>>>>>> board, separation of a backup code into a separate module has been
>>>>>>>> done last year, but has been reverted back by request of a reviewer.
>>>>>>>>
>>>>>>>>
>>>>>>>> -Vladimir
>>>>>>>>
>>>>>>>> On Mon, Mar 13, 2017 at 2:23 PM, Stack<st...@duboce.net>    wrote:
>>>>>>>>
>>>>>>>> On Fri, Mar 10, 2017 at 9:09 PM, Stack<st...@duboce.net>    wrote:
>>>>>>>>
>>>>>>>> On Fri, Mar 10, 2017 at 6:01 PM, Ted Yu<yuzhih...@gmail.com>
>>>>>>>>>   wrote:
>>>>>>>>>
>>>>>>>>> HBASE-14123 branch has been created, with Vlad's mega patch v61.
>>>>>>>>>>
>>>>>>>>>> The patch put up for VOTE here was done on a branch. The call to
>>>>>>>>>>>
>>>>>>>>>>> merge
>>>>>>>>>>
>>>>>>>>> seems to have been premature given the many cycles of review and
>>>>>>>> test
>>>>>>>>
>>>>>>>> that
>>>>>>>>>
>>>>>>>>> happened subsequent (The cycles burned a bunch of dev resource).
>>>>>>>>>
>>>>>>>>>> The patch as is is now in a state where it is too big for our
>>>>>>>>>> infra;
>>>>>>>>>>
>>>>>>>>>> rb
>>>>>>>>>>
>>>>>>>>> and JIRA are creaking under the size and # of iterations.
>>>>>>>>
>>>>>>>> Adding finish of new JIRAs to this merge implies a new round of
>>>>>>>>>
>>>>>>>>>> review
>>>>>>>>>>
>>>>>>>>> and
>>>>>>>>
>>>>>>>> test of an already massive patch. Who is going to do this work?
>>>>>>>>>
>>>>>>>>>> Going back to a new branch seems wrong route to take.
>>>>>>>>>>
>>>>>>>>>> St.Ack
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> To be more explicit, this patch was developed on a branch and
>>>>>>>>>> then a
>>>>>>>>>>
>>>>>>>>>> bunch
>>>>>>>>>
>>>>>>>> of dev resources were burned getting it into a state where it could
>>>>>>>> be
>>>>>>>>
>>>>>>>>> merged to master. Going back to a branch to bulk up the merge so it
>>>>>>>>> includes more JIRAs than the many it already incorporates is the
>>>>>>>>> wrong
>>>>>>>>> direction for us to be headed in. It ignores the feedback given and
>>>>>>>>> the
>>>>>>>>> work done by Vladimir slimming down an already over-broad scope. It
>>>>>>>>> is
>>>>>>>>>
>>>>>>>>> also
>>>>>>>>>
>>>>>>>> predicated on abundant review and testing resource being on tap to
>>>>>>>>
>>>>>>>>> cycle
>>>>>>>>>
>>>>>>>> on
>>>>>>>>
>>>>>>>> a feature that is useful, but non-core.
>>>>>>>>
>>>>>>>>> The patch is ready for merge IMO. Geoffrey makes a nice list of
>>>>>>>>> what
>>>>>>>>> is
>>>>>>>>> still to do though IIRC, the list is incomplete because a bunch of
>>>>>>>>> follow-ons came of the review cycle (including moving
>>>>>>>>> backup/restore
>>>>>>>>>
>>>>>>>>> out
>>>>>>>>>
>>>>>>>> of
>>>>>>>>
>>>>>>>> core to live in its own module).
>>>>>>>>
>>>>>>>>> The patch needs three votes to merge. I am not against merge but I
>>>>>>>>> am
>>>>>>>>>
>>>>>>>>> not
>>>>>>>>>
>>>>>>>> voting for the patch because I do have any more time to spend on
>>>>>>>> this
>>>>>>>>
>>>>>>>> non-core feature and feel that a vote will have me assume a
>>>>>>>>>
>>>>>>>>> responsibility
>>>>>>>>>
>>>>>>>> I will not shirk.
>>>>>>>>
>>>>>>>>> S
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> FYI
>>>>>>>>>
>>>>>>>>>> On Fri, Mar 10, 2017 at 3:30 PM, Ted Yu<yuzhih...@gmail.com>
>>>>>>>>>>>
>>>>>>>>>>> wrote:
>>>>>>>>>>>
>>>>>>>>>> Thanks for the feedback, Andrew.
>>>>>>>>> How about the following plan:
>>>>>>>>>
>>>>>>>>>> create branch HBASE-14123 off of master with mega patch v61 as the
>>>>>>>>>>>>
>>>>>>>>>>>> first
>>>>>>>>>>>>
>>>>>>>>>>> commit (reviewed by Stack and Enis)
>>>>>>>>>>
>>>>>>>>>> Vlad and I continue development (the 3 blockers) based on
>>>>>>>>>>>
>>>>>>>>>>>> HBASE-14123
>>>>>>>>>>>>
>>>>>>>>>>>     branch
>>>>>>>>>> when all of the blockers get +1 and merged into HBASE-14123
>>>>>>>>>>
>>>>>>>>>>> branch,
>>>>>>>>>>>>
>>>>>>>>>>> we
>>>>>>>>>>
>>>>>>>>> propose to community for merging into branch-2 (master branch, if
>>>>>>>>
>>>>>>>>> branch-2
>>>>>>>>>>
>>>>>>>>>>> doesn't materialize for whatever reason) again
>>>>>>>>>>>
>>>>>>>>>>>> Cheers
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> On Fri, Mar 10, 2017 at 3:01 PM, Andrew Purtell<
>>>>>>>>>>>>
>>>>>>>>>>>> apurt...@apache.org>
>>>>>>>>>>>>
>>>>>>>>>>> wrote:
>>>>>>>>>> Thanks for the offer but I like that you were honest about
>>>>>>>>>>
>>>>>>>>>>> compiling
>>>>>>>>>>>>
>>>>>>>>>>>> a
>>>>>>>>>>>
>>>>>>>>>> list
>>>>>>>>>
>>>>>>>>>> of issues that you thought were blockers for release. Since this
>>>>>>>>>>>
>>>>>>>>>>>> proposal
>>>>>>>>>>>>>
>>>>>>>>>>>> is a merge into 2.0, and we are trying to release 2.0, I am -1
>>>>>>>>>>>> on
>>>>>>>>>>>> this
>>>>>>>>>>>>
>>>>>>>>>>>> merge until those blockers are addressed.
>>>>>>>>>>> I had a look at the list.
>>>>>>>>>>>
>>>>>>>>>>>> I think the documentation issue is important but not actually a
>>>>>>>>>>>>>
>>>>>>>>>>>>> blocker.
>>>>>>>>>>>>>
>>>>>>>>>>>> That may be a controversial opinion, but documentation can be
>>>>>>>>>>>> back-filled
>>>>>>>>>>>> worst case. So take HBASE-17133 off the list.
>>>>>>>>>>>>
>>>>>>>>>>>> Remaining are effectively HBASE-14417, HBASE-14141, and
>>>>>>>>>>>>>
>>>>>>>>>>>>> HBASE-15227.
>>>>>>>>>>>>>
>>>>>>>>>>>> They
>>>>>>>>>>>
>>>>>>>>>> all have patches attached to the respective JIRAs so completing
>>>>>>>>>>
>>>>>>>>>>> this
>>>>>>>>>>>>
>>>>>>>>>>>> work
>>>>>>>>>>>
>>>>>>>>>> won't be onerous. Get these committed and I will lift my -1. The
>>>>>>>>>>
>>>>>>>>>>> others
>>>>>>>>>>>>
>>>>>>>>>>>> who
>>>>>>>>>>> voted +1 on this thread surely can help with that.
>>>>>>>>>>>
>>>>>>>>>>>> Thanks.
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> On Fri, Mar 10, 2017 at 2:32 PM, Vladimir Rodionov<
>>>>>>>>>>>>> vladrodio...@gmail.com>
>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>> No problem I will downgrade Blockers to Majors if it scares
>>>>>>>>>>>>> you,
>>>>>>>>>>>>>
>>>>>>>>>>>>> Andrew
>>>>>>>>>>>>
>>>>>>>>>>> [image: [image: 🙂]]
>>>>>>>>>
>>>>>>>>> Sent from my iPhone
>>>>>>>>>>>>
>>>>>>>>>>>>> On Mar 10, 2017, at 1:52 PM, Andrew Purtell<
>>>>>>>>>>>>>> apurt...@apache.org
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>> ​I know the merge of this feature has lagged substantially. I
>>>>>>>>>>
>>>>>>>>>>> think
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> that
>>>>>>>>>>>>>
>>>>>>>>>>>> is
>>>>>>>>>>>
>>>>>>>>>>>> regrettable but on another thread we are lamenting that 2.0
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> is
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>> already
>>>>>>>>>>>>>
>>>>>>>>>>>> late. Unless I misunderstand, this is a proposal to merge
>>>>>>>>>
>>>>>>>>>> something
>>>>>>>>>>>>> with
>>>>>>>>>>>>>
>>>>>>>>>>>> known blockers into trunk before we branch it for 2.0 which
>>>>>>>>>>>
>>>>>>>>>>>> will
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> effectively prevent that release because these blockers will
>>>>>>>>>>>>>
>>>>>>>>>>>> be
>>>>>>>>>>
>>>>>>>>>>> there. I
>>>>>>>>>>>>>
>>>>>>>>>>>> am
>>>>>>>>>
>>>>>>>>>> inclined to veto. Probably we should not propose branch
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> merges
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>> into
>>>>>>>>>>>>>
>>>>>>>>>>>> code
>>>>>>>>>
>>>>>>>>>> we
>>>>>>>>>>>
>>>>>>>>>>>> are trying to get out the door with known blockers. Why not
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> do
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>> that
>>>>>>>>>>>>>
>>>>>>>>>>>> work
>>>>>>>>>
>>>>>>>>>> first? It seems an obvious question. Perhaps I am missing
>>>>>>>>>>>
>>>>>>>>>>>> something.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> If we can branch for 2.0 now and then merge this, and not
>>>>>>>>>>>>> into
>>>>>>>>>>>>> the
>>>>>>>>>>>>>
>>>>>>>>>>>> 2.0
>>>>>>>>>
>>>>>>>>>> branch, I would vote +1 for branch merge even with known
>>>>>>>>>>>
>>>>>>>>>>>> blockers
>>>>>>>>>>>>> pending.
>>>>>>>>>>>>>
>>>>>>>>>>>> ​
>>>>>>>>>>
>>>>>>>>>>> On Fri, Mar 10, 2017 at 1:42 PM, Vladimir Rodionov<
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> vladrodio...@gmail.com>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> They are not blockers for merge - only for 2.0. GA
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> As I said already the feature is usable right now
>>>>>>>>>>>>>>>> We would like to continue working on master and we would
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> like
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> to
>>>>>>>>>>>>>>
>>>>>>>>>>>>> see
>>>>>>>>
>>>>>>>>> a
>>>>>>>>>>
>>>>>>>>>>> commitment from community
>>>>>>>>>>>>>
>>>>>>>>>>>>>> Sent from my iPhone
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> On Mar 10, 2017, at 11:16 AM, Andrew Purtell<
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> apurt...@apache.org
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>>
>>>>>>>>>>>>> Only BLOCKERs and CRITICALs are guaranteed for HBase 2.0
>>>>>>>>>>>
>>>>>>>>>>>> release.
>>>>>>>>>>>>>>>> If we have identified blockers, why merge this before they
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> are
>>>>>>>>>>>>>
>>>>>>>>>>>>>> in?
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Otherwise we can't release 2.0, and it is overdue.
>>>>>>>>>>
>>>>>>>>>>> On Wed, Mar 8, 2017 at 1:32 PM, Vladimir Rodionov<
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> vladrodio...@gmail.com>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> Hello, HBase folks
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> For your consideration today is Backup/Restore feature for
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Apache
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> HBAse
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> 2.0.
>>>>>>>>>>>>>
>>>>>>>>>>>>>> Backup code is available as a mega patch in HBASE-14123
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> (v61),
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> applies
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> cleanly to the current master, all test PASS, patch has no
>>>>>>>>>>
>>>>>>>>>>> other
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> issues.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> The patch has gone through numerous rounds of code reviews
>>>>>>>>>>>
>>>>>>>>>>>> and
>>>>>>>>>>>>>>>> has
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> probably
>>>>>>>>>>
>>>>>>>>>>> the most lengthy discussion thread on Apache JIRA
>>>>>>>>>>>>>
>>>>>>>>>>>>>> (HBASE-14123)
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> :)
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> The work has been split into 3 phases (HBASE-14030, 14123,
>>>>>>>>>>>
>>>>>>>>>>>> 14414)
>>>>>>>>>>>>>
>>>>>>>>>>>>>> Two
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> first
>>>>>>>>>>>>>
>>>>>>>>>>>>>> are complete, third one is still in progress.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> *** Summary of work HBASE-14123
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> The new feature introduces new command-line extensions to
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> the
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> hbase
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> command
>>>>>>>>>>
>>>>>>>>>>> and, from the client side, is accessible through
>>>>>>>>>>>>>
>>>>>>>>>>>>>> command-line
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> only
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Operations:
>>>>>>>>>>
>>>>>>>>>>> * Create full backup on a list of tables or backup set
>>>>>>>>>>>>>
>>>>>>>>>>>>>> * Create incremental backup image for table list or backup
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> set
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> * Restore list of tables from a given backup image
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> * Show current backup progress
>>>>>>>>>>
>>>>>>>>>>> * Delete backup image and all related images
>>>>>>>>>>>>>>>>>> * Show history of backups
>>>>>>>>>>>>>>>>>> * Backup set operations: create backup set, add/remove
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> table
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> to/from
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> backup
>>>>>>>>>
>>>>>>>>>> set, etc
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> In the current implementation, the feature is already
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> usable,
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> meaning
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> that
>>>>>>>>>>
>>>>>>>>>>> users can backup tables and restore them using provided
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> command-line
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> tools.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Both: full and incremental backups are supported.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> This work is based on original work of IBM team
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> (HBASE-7912).
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> The
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> full
>>>>>>>>>>
>>>>>>>>>>> list
>>>>>>>>>>>>>
>>>>>>>>>>>>>> of JIRAs included in this mega patch can be found in three
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> umbrella
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> JIRAs:
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> HBASE-14030 (Phase 1), HBASE-14123 (Phase 2) and
>>>>>>>>>>>>>
>>>>>>>>>>>>>> HBASE-14414
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> (Phase 3
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> -
>>>>>>>>>
>>>>>>>>>> all
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> resolved ones made it into the patch)
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> *** What are the remaining work items
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> All remaining items can be found in Phase 3 umbrella JIRA:
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> HBASE-14414.
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> They are split into 3 groups: BLOCKER, CRITICAL, MAJOR
>>>>>>>>>>>>>>>> Only BLOCKERs and CRITICALs are guaranteed for HBase 2.0
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> release.
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> ***** BLOCKER
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> * HBASE-14417 Incremental backup and bulk loading ( Patch
>>>>>>>>>>>>>
>>>>>>>>>>>>>> available)
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> * HBASE-14135 HBase Backup/Restore Phase 3: Merge backup
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> images
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> * HBASE-14141 HBase Backup/Restore Phase 3: Filter WALs on
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> backup
>>>>>>>>>>>
>>>>>>>>>>>> to
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> include only edits from backup tables (Patch available)
>>>>>>>>>>>>>
>>>>>>>>>>>>>> * HBASE-17133 Backup documentation
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> * HBASE-15227 Fault tolerance support
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> ***** CRITICAL
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> * HBASE-16465 Disable split/merges during backup
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> We have umbrella JIRA (HBASE-14414) to track all the
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> remaining
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> work
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> All the BLOCKER and CRITICAL JIRAs currently in open state
>>>>>>>>>>
>>>>>>>>>>> will
>>>>>>>>>>>>>
>>>>>>>>>>>>>> be
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> implemented by 2.0 release time. Some MAJOR too, but it
>>>>>>>>>>>
>>>>>>>>>>>> depends
>>>>>>>>>>>>>
>>>>>>>>>>>>>> on
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> resource
>>>>>>>>>>>
>>>>>>>>>>>> availability
>>>>>>>>>>>>>
>>>>>>>>>>>>>> The former development branch (HBASE-7912) is obsolete and
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> will
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> be
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> closed/deleted after the merge.
>>>>>>>>>>>
>>>>>>>>>>>> We want backup to be a GA feature in 2.0
>>>>>>>>>>>>>
>>>>>>>>>>>>>> We are going to support full backward compatibility for
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> backup
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> tool in
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> 2.0
>>>>>>>>>>
>>>>>>>>>>> and onwards.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> **** Configuration
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Backup is disabled, by default. To enable it, the
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> following
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> configuration
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> properties must be added to hbase-site.xml:
>>>>>>>>>
>>>>>>>>>> hbase.backup.enable=true
>>>>>>>>>>>>>>>>>> hbase.master.logcleaner.plugins=YOUR_PLUGINS,org.
>>>>>>>>>>>>>>>>>> apache.hadoop.hbase.backup.master.BackupLogCleaner
>>>>>>>>>>>>>>>>>> hbase.procedure.master.classes=YOUR_CLASSES,org.
>>>>>>>>>>>>>>>>>> apache.hadoop.hbase.backup.master.
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> LogRollMasterProcedureManager
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> hbase.procedure.regionserver.classes=YOUR_CLASSES,org.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> apache.hadoop.hbase.backup.regionserver.
>>>>>>>>>>>
>>>>>>>>>>>> LogRollRegionServerProcedureMa
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> nager
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> I would like to thank IBM team and Jerry He for original
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> work,
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> Enis, Ted, Stack, Matteo, Jerry for time spent on code
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> reviews
>>>>>>>>>>
>>>>>>>>>>> Special thanks to Ted Yu for his co-development work.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> References:
>>>>>>>>>>
>>>>>>>>>>> https://issues.apache.org/jira/browse/HBASE-7912
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> (original
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> IBM,
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> contains
>>>>>>>>>
>>>>>>>>>> design doc)
>>>>>>>>>>>
>>>>>>>>>>>> https://issues.apache.org/jira/browse/HBASE-14030 (Phase
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> 1)
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> https://issues.apache.org/jira/browse/HBASE-14123 (Phase
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> 2)
>>>>>>>>>
>>>>>>>>>> https://issues.apache.org/jira/browse/HBASE-14414 (Phase
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> 3)
>>>>>>>>>
>>>>>>>>>> Please  vote +1/-1 by midnight Pacific Time (00:00
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> -0800 GMT) on March 11th  ​on whether or not we should
>>>>>>>>>
>>>>>>>>>> merge
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> this
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> into
>>>>>>>>>
>>>>>>>>>> the
>>>>>>>>>>>>>
>>>>>>>>>>>>>> current master.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> -Vladimir Rodionov
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> --
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> Best regards,
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>     - Andy
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> If you are given a choice, you believe you have acted
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> freely. -
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Raymond
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Teller (via Peter Watts)
>>>>>>>>>>
>>>>>>>>>>> --
>>>>>>>>>>>>>>> Best regards,
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>      - Andy
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> If you are given a choice, you believe you have acted
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> freely. -
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Raymond
>>>>>>>>>>>>>
>>>>>>>>>>>> Teller (via Peter Watts)
>>>>>>>>>
>>>>>>>>>> --
>>>>>>>>>>>>> Best regards,
>>>>>>>>>>>>>
>>>>>>>>>>>>>       - Andy
>>>>>>>>>>>>>
>>>>>>>>>>>>> If you are given a choice, you believe you have acted freely. -
>>>>>>>>>>>>>
>>>>>>>>>>>>> Raymond
>>>>>>>>>>>>>
>>>>>>>>>>>> Teller (via Peter Watts)
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>
>>>>
>>
>>

Reply via email to