-
Notifications
You must be signed in to change notification settings - Fork 537
2.0 downgrade notes
2.0 introduces major new features which are incompatible with older versions of Riak. Several of these new features depend on a new organizational structure: bucket types.
Once bucket types are activated, downgrades are no longer possible.
A warning is issued by the riak-admin
command used to create and activate bucket types, in order to notify the database operators of the irreversible nature of activation.
Features that rely on bucket types:
- Strong consistency
- Riak Data Types (other than the older counter implementation included with Riak 1.4)
- Riak Search 2.0 (bucket types are strongly recommended but not strictly speaking mandatory)
The Bitcask backend requires external assistance to be downgraded after a 2.0 upgrade. Object storage with Bitcask has undergone some modifications in Riak 2.0, such that a data format downgrade is required to back out of an upgrade from 1.3.x or 1.4.x to 2.0. You can perform this downgrade in a rolling fashion, as part of a rolling downgrade, with the following process:
- Stop the node
- Download the downgrade escript to the node. The script can be found here on GitHub: downgrade_bitcask.erl.
- Run the escript against your Bitcask data directory. The script will recursively find all Bitcask data files under that directory and reformat them:
escript downgrade_bitcask.erl /path/to/riak/data/bitcask
Please note that you'll need to edit the path to the Bitcask data directory according to your configuration, and you'll have to do this for each Bitcask backend that you use. Check your configuration files to ensure that you downgrade each of them.
- Proceed with your downgrade: install the downloaded package, start Riak, and wait for
riak_kv
to come up. You can check to see ifriak_kv
has come up by runningriak-admin wait-for-service riak_kv node@nodename
.