Couchbase-cli with 4.5.0

Does couchbase-cli work as normal with the new 4.5.0 release?

Building on the docker image found at couchbase/server:4.5.0, couchbase-cli seems to be producing some rather strange errors. E.g.:

couchbase-cli server-list -c $HOST:$PORT -u $ADMIN_LOGIN -p $ADMIN_PASSWORD

Yields

ERROR: command: server-list: localhost:8091, 'error_msg'

Other commands that worked on 4.0.0 such as the server-info command no longer work, with strange messages:

ERROR: command: server-info: 127.0.0.1:8091, 'dict' object has no attribute 'dumps'

Notably, the current docs for couchbase-cli don’t even list server-info as an option, so I’m wondering if other things have changed about 4.5.0 or if there are some release notes that speak to couchbase-cli that I’m missing.

The couchbase-cli I’m using is located at /opt/couchbase/bin/couchbase-cli inside of the docker container in question.

1 Like

Another issue discovered:

Couchbase 4.5.0 has memory-optimized indexes http://developer.couchbase.com/documentation/server/4.5-dp/in-memory-indexes.html

But couchbase-cli doesn’t appear to permit setting this setting:
http://developer.couchbase.com/documentation/server/4.5/cli/cbcli/setting-index.html

JIRA reference, this is causing errors related to being unable to create indexes without setting this setting first: https://issues.couchbase.com/browse/MB-18803

It’s possible using the REST API to set the setting (without couchbase-cli) and get around this at the moment, but shouldn’t couchbase-cli support this? Or does it already and the website documentation just isn’t up to date?

I have a script that works around this. You can adapt it from there.

Thanks - these work-arounds are useful, I’m doing something similar right now in exploration of 4.5.0. But I think the bigger question is, when 4.5.0 came, did it come with a couchbase-cli that knew how to work with it? Wondering if this is considered a separate project or something, and if it’s lagging, when it would be updated.

Alternatively, if “couchbase-cli” in the end is a thin set of python wrappers around the REST API, maybe I shouldn’t use it at all? :slight_smile:

FWIW, couchbase-cli “cluster-init” supports the memory optimized indexes (–index-storage-setting). I updated your Jira ticket (https://issues.couchbase.com/browse/MB-20062) with that as well.

1 Like

Those other errors look a bit curious. I’m using the same commands in my own scripts and they work without issue. I’ll have our tools engineer take a look.

We just ran into this issue. Upgraded from 4.1 -> 4.5 and our autopilot scripts started hanging.

$ couchbase-cli server-info -c 127.0.0.1:8091 -u admin -p password
ERROR: command: server-info: 127.0.0.1:8091, 'dict' object has no attribute 'dumps'