masp
masp

Reputation: 350

Couchbase Community Server Upgrade from CE5.1.1/CE6.0.0 to CE6.5.1 fails

I am running a single node dev system under couchbase server CE5.1.1 (Community Edition) with the official docker image. I now wanted to upgrade to CE6.5.1. I did so following the upgrade guide by first upgrading to CE6.0.0 and after that upgrading to CE6.5.1. I do upgrade a single node by just shutting down the container, change container version und startup container again.

The first step from CE5.1.1 to CE6.0.0 works and all my existing buckets are migrated. But the 2nd step from CE6.0.0 to CE6.5.1 fails at warmup after starting the CE6.5.1 image. The messages in babysitter.log show:

memcached<0.114.0>: 2020-06-27T13:00:56.812806+00:00 CRITICAL () Warmup::createVBuckets aborting warmup as vb:2 datafile is unusable, name-spacing is not enabled.

multiple times for all buckets. I took a look at the kvengine source and only found a comment, that collections and repl needs “namespace” as an attribute in the vBucket.

So is there a way to upgrade to CE6.5.1 while keeping my existing buckets? How would I add “namespace” to a bucket in CE5.1.1 or CE6.0.0? Or Do I have to make a full backup of CE6.0.0 and a CE6.5.1 restore?

Upvotes: 2

Views: 61

Answers (1)

masp
masp

Reputation: 350

After investigating this problem in details I finally found a solution:

Shutdown your database container and backup your data :slight_smile:

Start your database with the new 6.5.1 CE docker image. The database will not start, as there is a new thing called “namespace” with needs to be updated in your data. So we do this manually.

docker into your running container with docker exec -it bash

Stop the running instance with /opt/couchbase/bin/install/systemd-ctl stop

Start the update process with /opt/couchbase/bin/cbupgrade -c /opt/couchbase/var/lib/couchbase/config/ This will start the update interactively. just answer the questions with yes and the update will run.

After upgrade finishes exit the shell and restart the container with docker restart

The db server now start normally and should warmup as usual.

Upvotes: 0

Related Questions