Uploaded image for project: 'Couchbase Documentation'
  1. Couchbase Documentation
  2. DOC-48

Trouble getting cbrestore to restore properly from incremental backup

    XMLWordPrintable

Details

    • Bug
    • Resolution: Won't Fix
    • Major
    • 3.1.x
    • None
    • cli
    • None
    • TP Sprint 16, TP Sprint 17, TP Sprint 18, TP Sprint 19, TP Sprint 20, TP Sprint 21, TP Sprint 22

    Description

      Testing on GA of 3.0 (build 1209)

      I took a few incremental backups and am trying to restore.

      Under one backup directory I have 1 full and 2 diff directories, all created by repeatedly running this command after adding some data each time:
      /opt/couchbase/bin/cbbackup -u Administrator -p password http://localhost:8091 -b test -m diff -v ./

      It's not clear from the documentation what I should specify to cbrestore in order to restore the entire dataset.

      If I supply the source directory as the high-level directory, it gives me an error:
      [root@cb1 backup]# /opt/couchbase/bin/cbrestore -u Administrator -p password ./2014-10-28T061810Z -b test -B test2 http://localhost:8091 -v
      2014-10-28 06:23:50,873: mt cbrestore...
      2014-10-28 06:23:50,873: mt source : ./2014-10-28T061810Z
      2014-10-28 06:23:50,873: mt sink : http://localhost:8091
      2014-10-28 06:23:50,873: mt opts : {'username': '<xxx>', 'verbose': 1, 'dry_run': False, 'extra':

      {'max_retry': 10.0, 'rehash': 0.0, 'data_only': 0.0, 'uncompress': 0.0, 'nmv_retry': 1.0, 'conflict_resolve': 1.0, 'cbb_max_mb': 100000.0, 'mcd_compatible': 1.0, 'try_xwm': 1.0, 'backoff_cap': 10.0, 'batch_max_bytes': 400000.0, 'report_full': 2000.0, 'seqno': 0.0, 'batch_max_size': 1000.0, 'report': 5.0, 'design_doc_only': 0.0, 'recv_min_bytes': 4096.0}

      , 'from_date': None, 'bucket_destination': 'test2', 'add': False, 'vbucket_list': None, 'threads': 4, 'to_date': None, 'key': None, 'password': '<xxx>', 'id': None, 'bucket_source': 'test'}
      Traceback (most recent call last):
      File "/opt/couchbase/lib/python/cbrestore", line 12, in <module>
      pump_transfer.exit_handler(pump_transfer.Restore().main(sys.argv))
      File "/opt/couchbase/lib/python/pump_transfer.py", line 94, in main
      rv = pumpStation.run()
      File "/opt/couchbase/lib/python/pump.py", line 108, in run
      rv, source_map, sink_map = self.check_endpoints()
      File "/opt/couchbase/lib/python/pump.py", line 156, in check_endpoints
      rv, source_map = self.source_class.check(self.opts, self.source_spec)
      File "/opt/couchbase/lib/python/pump_bfd.py", line 318, in check
      bucket_dirs = glob.glob(latest_dir + "/bucket-*")
      TypeError: unsupported operand type(s) for +: 'NoneType' and 'str'

      If I specify either the 'full' or either of the 'diff' directories, it only restores that data.

      Is the problem that all of my backups are under a single top-level directory? In addition to fixing the error above, can we also update the documentation to provide examples of the "standard" way to backup incrementally and restore the whole data set?

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            amarantha.kulkarni Amarantha Kulkarni (Inactive)
            perry Perry Krug
            Votes:
            0 Vote for this issue
            Watchers:
            7 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes

                PagerDuty