Comment 8 for bug 1700585

Revision history for this message
Greg Smethells (gsmethells) wrote : Re: Objects can become orphaned in Swift 2.4.0

Here is the swift-get-nodes for both files in container 1.

[root@swift-r1z1n1 ~]# swift-get-nodes /etc/swift/object.ring.gz AUTH_75673124ca7f42968e28bc264ed32331 1 1.2.840.114204.2.2.4.1.243395414945023.14589405468080000/1.2.840.114204.2.2.2.1.193684909484984.14589405855150000.dcm

Account AUTH_75673124ca7f42968e28bc264ed32331
Container 1
Object 1.2.840.114204.2.2.4.1.243395414945023.14589405468080000/1.2.840.114204.2.2.2.1.193684909484984.14589405855150000.dcm

Partition 506
Hash 7eb259c3a61b11add960a8470849b490

Server:Port Device 10.11.12.78:6000 r1z3n1-d23
Server:Port Device 10.11.12.76:6000 r1z1n1-d7
Server:Port Device 192.168.10.236:6000 r1z2n1-d25
Server:Port Device 10.11.12.76:6000 r1z1n1-d28 [Handoff]
Server:Port Device 10.11.12.78:6000 r1z3n1-d27 [Handoff]
Server:Port Device 192.168.10.236:6000 r1z2n1-d3 [Handoff]

curl -I -XHEAD "http://10.11.12.78:6000/r1z3n1-d23/506/AUTH_75673124ca7f42968e28bc264ed32331/1/1.2.840.114204.2.2.4.1.243395414945023.14589405468080000/1.2.840.114204.2.2.2.1.193684909484984.14589405855150000.dcm"
curl -I -XHEAD "http://10.11.12.76:6000/r1z1n1-d7/506/AUTH_75673124ca7f42968e28bc264ed32331/1/1.2.840.114204.2.2.4.1.243395414945023.14589405468080000/1.2.840.114204.2.2.2.1.193684909484984.14589405855150000.dcm"
curl -I -XHEAD "http://192.168.10.236:6000/r1z2n1-d25/506/AUTH_75673124ca7f42968e28bc264ed32331/1/1.2.840.114204.2.2.4.1.243395414945023.14589405468080000/1.2.840.114204.2.2.2.1.193684909484984.14589405855150000.dcm"
curl -I -XHEAD "http://10.11.12.76:6000/r1z1n1-d28/506/AUTH_75673124ca7f42968e28bc264ed32331/1/1.2.840.114204.2.2.4.1.243395414945023.14589405468080000/1.2.840.114204.2.2.2.1.193684909484984.14589405855150000.dcm" # [Handoff]
curl -I -XHEAD "http://10.11.12.78:6000/r1z3n1-d27/506/AUTH_75673124ca7f42968e28bc264ed32331/1/1.2.840.114204.2.2.4.1.243395414945023.14589405468080000/1.2.840.114204.2.2.2.1.193684909484984.14589405855150000.dcm" # [Handoff]
curl -I -XHEAD "http://192.168.10.236:6000/r1z2n1-d3/506/AUTH_75673124ca7f42968e28bc264ed32331/1/1.2.840.114204.2.2.4.1.243395414945023.14589405468080000/1.2.840.114204.2.2.2.1.193684909484984.14589405855150000.dcm" # [Handoff]

Use your own device location of servers:
such as "export DEVICE=/srv/node"
ssh 10.11.12.78 "ls -lah ${DEVICE:-/srv/node*}/r1z3n1-d23/objects/506/490/7eb259c3a61b11add960a8470849b490"
ssh 10.11.12.76 "ls -lah ${DEVICE:-/srv/node*}/r1z1n1-d7/objects/506/490/7eb259c3a61b11add960a8470849b490"
ssh 192.168.10.236 "ls -lah ${DEVICE:-/srv/node*}/r1z2n1-d25/objects/506/490/7eb259c3a61b11add960a8470849b490"
ssh 10.11.12.76 "ls -lah ${DEVICE:-/srv/node*}/r1z1n1-d28/objects/506/490/7eb259c3a61b11add960a8470849b490" # [Handoff]
ssh 10.11.12.78 "ls -lah ${DEVICE:-/srv/node*}/r1z3n1-d27/objects/506/490/7eb259c3a61b11add960a8470849b490" # [Handoff]
ssh 192.168.10.236 "ls -lah ${DEVICE:-/srv/node*}/r1z2n1-d3/objects/506/490/7eb259c3a61b11add960a8470849b490" # [Handoff]

note: `/srv/node*` is used as default value of `devices`, the real value is set in the config file on each storage node.
[root@swift-r1z1n1 ~]# swift-get-nodes /etc/swift/object.ring.gz AUTH_75673124ca7f42968e28bc264ed32331 1 1.2.840.114204.2.2.4.1.243395414945023.14589405468080000/1.2.840.114204.2.2.2.1.199754063548486.14589405856570000.dcm

Account AUTH_75673124ca7f42968e28bc264ed32331
Container 1
Object 1.2.840.114204.2.2.4.1.243395414945023.14589405468080000/1.2.840.114204.2.2.2.1.199754063548486.14589405856570000.dcm

Partition 461
Hash 737feb8aac1d14a84646f82d670ccbb4

Server:Port Device 10.11.12.76:6000 r1z1n1-d29
Server:Port Device 10.11.12.78:6000 r1z3n1-d24
Server:Port Device 192.168.10.236:6000 r1z2n1-d25
Server:Port Device 10.11.12.76:6000 r1z1n1-d5 [Handoff]
Server:Port Device 10.11.12.78:6000 swift-r1z3n1-d20 [Handoff]
Server:Port Device 192.168.10.236:6000 swift-r1z2n1-d16 [Handoff]

curl -I -XHEAD "http://10.11.12.76:6000/r1z1n1-d29/461/AUTH_75673124ca7f42968e28bc264ed32331/1/1.2.840.114204.2.2.4.1.243395414945023.14589405468080000/1.2.840.114204.2.2.2.1.199754063548486.14589405856570000.dcm"
curl -I -XHEAD "http://10.11.12.78:6000/r1z3n1-d24/461/AUTH_75673124ca7f42968e28bc264ed32331/1/1.2.840.114204.2.2.4.1.243395414945023.14589405468080000/1.2.840.114204.2.2.2.1.199754063548486.14589405856570000.dcm"
curl -I -XHEAD "http://192.168.10.236:6000/r1z2n1-d25/461/AUTH_75673124ca7f42968e28bc264ed32331/1/1.2.840.114204.2.2.4.1.243395414945023.14589405468080000/1.2.840.114204.2.2.2.1.199754063548486.14589405856570000.dcm"
curl -I -XHEAD "http://10.11.12.76:6000/r1z1n1-d5/461/AUTH_75673124ca7f42968e28bc264ed32331/1/1.2.840.114204.2.2.4.1.243395414945023.14589405468080000/1.2.840.114204.2.2.2.1.199754063548486.14589405856570000.dcm" # [Handoff]
curl -I -XHEAD "http://10.11.12.78:6000/swift-r1z3n1-d20/461/AUTH_75673124ca7f42968e28bc264ed32331/1/1.2.840.114204.2.2.4.1.243395414945023.14589405468080000/1.2.840.114204.2.2.2.1.199754063548486.14589405856570000.dcm" # [Handoff]
curl -I -XHEAD "http://192.168.10.236:6000/swift-r1z2n1-d16/461/AUTH_75673124ca7f42968e28bc264ed32331/1/1.2.840.114204.2.2.4.1.243395414945023.14589405468080000/1.2.840.114204.2.2.2.1.199754063548486.14589405856570000.dcm" # [Handoff]

Use your own device location of servers:
such as "export DEVICE=/srv/node"
ssh 10.11.12.76 "ls -lah ${DEVICE:-/srv/node*}/r1z1n1-d29/objects/461/bb4/737feb8aac1d14a84646f82d670ccbb4"
ssh 10.11.12.78 "ls -lah ${DEVICE:-/srv/node*}/r1z3n1-d24/objects/461/bb4/737feb8aac1d14a84646f82d670ccbb4"
ssh 192.168.10.236 "ls -lah ${DEVICE:-/srv/node*}/r1z2n1-d25/objects/461/bb4/737feb8aac1d14a84646f82d670ccbb4"
ssh 10.11.12.76 "ls -lah ${DEVICE:-/srv/node*}/r1z1n1-d5/objects/461/bb4/737feb8aac1d14a84646f82d670ccbb4" # [Handoff]
ssh 10.11.12.78 "ls -lah ${DEVICE:-/srv/node*}/swift-r1z3n1-d20/objects/461/bb4/737feb8aac1d14a84646f82d670ccbb4" # [Handoff]
ssh 192.168.10.236 "ls -lah ${DEVICE:-/srv/node*}/swift-r1z2n1-d16/objects/461/bb4/737feb8aac1d14a84646f82d670ccbb4" # [Handoff]

note: `/srv/node*` is used as default value of `devices`, the real value is set in the config file on each storage node.
[root@swift-r1z1n1 ~]#