OS dependency in cbrestore


#1

HI,
I am restoring backup taken from couchbase 3.0 on redhat linux 6 version and trying to restore on couchbase 3.0 on redhat linux 7.5 ?
I am geting following error:
list index out of range

Is cbrestore is dependent on os and platform ?
Any code fix for above error ?


#2

Hello @kulsam

As you might be aware Couchbase Server 3.0 went end of life over a year ago, I would recommend upgrading as soon as possible.

I am geting following error:
list index out of range

Can you please provide the command that is being executed and the output from it.

Is cbrestore is dependent on os and platform ?

Backups are platform independent, apart from when restoring between Linux/Windows and MacOS. Where an extra command line option is required for cbrestore but that is not the case here.

Any code fix for above error ?

Without the command and output we can’t debug this issue.


#3

First of all many thanks for replying to my question.

Though I have done work on other NOSQL databases I am beginner in couchbase. I am trying to upgrade my 3.0 version to 5.1 version for which I am thinking to take backup from 3.0 and restore to 4.1 version and then take backup from 4.1` and restore to 5.1 version.

  1. I am having 6 node cluster backup of 3.0 version

when I try to restore that backup in 3.0 version test server I am getting “ error: exception reading backup file:list index out of range error".
Even gone through pump_bfd.py file which i modified for for CBB_version=[2004,2014,2015],
since i was getting backup directory created by older release is reused.I tried using -x rehash=1(also other extra) parameter but it didn’t work.

Following is my command for restoration:

./cbrestore backupfilepath http://localhost:port -b sourcebucket  -B targetbucket

also used

./cbrestore -x rehash=1 backupfilepath http://localhost:port -b sourcebucket  -B targetbucket
  1. Also I tried restoring same backup file and with same command to 4.1(also in 5.1) version but got differant error as follows:
error: exception reading backup file: no such column: conf_res

#4

Hi pvarley,

Sorry, there was mistake from my end i guess while editing the CBB_version thats why I was facing this issue . Just now i fixed this :slight_smile:


#5

Hello @kulsam,

The rehash option is only required when restoring a backup that is from MacOs to Windows/Linux. The number of vBuckets used by MacOS is 64 where Winodws/Linux used 1024, so the keys need to be “rehashed” to different vBuckets. This is not the problem you are facing here.

The one thing to remember is that the version of cbrestore used has to be the same versions that was used to take the backup. This is because the backup file format has changed between versions.

Couchbase Server 3.0 -> cbbackup (3.0) -> cbrestore (3.0) -> Couchbase Server 4.1

An old version of cbrestore will work against a newer version of Couchbase Server.

error: exception reading backup file: no such column: conf_res

This error is because a cbrestore from Couchbase Server 4.1 is trying to restore a backup from Couchbase Server 3.X. Using the cbrestore from Couchbase Server 3.X instead and point it at the Couchbase 4.X target cluster.

I hope this helps.


#6

HI,
Thanks a lot pvarley for your reply .

I have restored backup from 3.0 version to 5.1 cluster.
I have taken backup of bucket for e.g flower and fruit.
And restore on 5.1 cluster using cbrestore.

Is there any way i can validate objects like index,docs count before and after restore?
Since there is no cbq in 3.0 version i am using curl for select query.

Are index restored using cbtranfer and cbretsore command ?
Any query to check replication , bucket and db infor like mongo system collection ?