Error reading old-style pickled ring upgrading from 1.7 to 1.10
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Object Storage (swift) |
Fix Released
|
Undecided
|
Juan J. Martínez |
Bug Description
I'm running 1.7.4 SAIO (Swift All In One) in Debian Squeeze and when I upgrade to 1.10.0 I get this error when different components try to load the ring:
Traceback (most recent call last):
File "/usr/bin/
run_
File "/usr/lib/
klass(
File "/usr/lib/
self.ring = ring.Ring(
File "/usr/lib/
self.
File "/usr/lib/
self.
File "/usr/lib/
for tier in tiers_for_dev(dev):
File "/usr/lib/
t1 = dev['region']
KeyError: 'region'
(in this example, swift-container
I don't know if this upgrade path is supported (1.7 to 1.10), and this cluster has been upgraded several time (I think first version was Bexar!), but the problem can be fixed easily with the attached patch (applies to 1.10.0).
UPDATE: seems that the problem is when loading an old-style pickled ring.
Changed in swift: | |
assignee: | nobody → Juan J. Martínez (jjmartinez) |
Changed in swift: | |
status: | New → In Progress |
summary: |
- Error reading ring upgrading from 1.7 to 1.10 + Error reading old-style pickled ring upgrading from 1.7 to 1.10 |
description: | updated |
Changed in swift: | |
milestone: | none → 1.11.0 |
Changed in swift: | |
status: | Fix Committed → Fix Released |
Uploaded the patch for review: https:/ /review. openstack. org/#/c/ 55536/