)]}'
{"id":"openstack%2Fswift~37579","triplet_id":"openstack%2Fswift~master~Idcbb5a912d8c7d956dac96ff523c1cf1163c98a6","project":"openstack/swift","branch":"master","topic":"diskfile-mount-check","hashtags":[],"change_id":"Idcbb5a912d8c7d956dac96ff523c1cf1163c98a6","subject":"Move the mount checking into DiskFile constructor","status":"MERGED","created":"2013-07-17 21:42:14.000000000","updated":"2013-07-23 23:01:44.000000000","submitted":"2013-07-23 23:01:44.000000000","submitter":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"total_comment_count":0,"unresolved_comment_count":0,"has_review_started":true,"meta_rev_id":"34c50f10ba8fbda61561b9406d4d4e0c749a1094","_number":37579,"virtual_id_number":37579,"owner":{"_account_id":6198,"name":"Peter Portante","email":"peter.a.portante@gmail.com","username":"peter-a-portante"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"all":[{"value":2,"date":"2013-07-23 23:01:44.000000000","_account_id":3,"name":"Jenkins","username":"jenkins"},{"value":0,"_account_id":6198,"name":"Peter Portante","email":"peter.a.portante@gmail.com","username":"peter-a-portante"},{"value":0,"_account_id":2166,"name":"SmokeStack CI","username":"smokestack","tags":["SERVICE_USER"]},{"value":0,"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},{"value":0,"_account_id":2622,"name":"Samuel Merritt","email":"spam+launchpad@andcheese.org","username":"torgomatic"}],"values":{"-2":"Fails","-1":"Doesn\u0027t seem to work"," 0":"No score","+1":"Works for me","+2":"Verified"},"description":"","default_value":0,"optional":true},"Code-Review":{"approved":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"all":[{"value":0,"_account_id":3,"name":"Jenkins","username":"jenkins"},{"value":0,"date":"2013-07-23 21:10:50.000000000","permitted_voting_range":{"min":0,"max":1},"_account_id":6198,"name":"Peter Portante","email":"peter.a.portante@gmail.com","username":"peter-a-portante"},{"value":0,"_account_id":2166,"name":"SmokeStack CI","username":"smokestack","tags":["SERVICE_USER"]},{"value":2,"date":"2013-07-23 22:02:36.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},{"value":2,"date":"2013-07-22 14:07:56.000000000","_account_id":2622,"name":"Samuel Merritt","email":"spam+launchpad@andcheese.org","username":"torgomatic"}],"values":{"-2":"Do not merge","-1":"This patch needs further work before it can be merged"," 0":"No score","+1":"Looks good to me, but someone else must approve","+2":"Looks good to me (core reviewer)"},"description":"","default_value":0,"optional":true},"Workflow":{"approved":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"all":[{"value":0,"_account_id":3,"name":"Jenkins","username":"jenkins"},{"value":0,"date":"2013-07-23 21:10:50.000000000","_account_id":6198,"name":"Peter Portante","email":"peter.a.portante@gmail.com","username":"peter-a-portante"},{"value":0,"_account_id":2166,"name":"SmokeStack CI","username":"smokestack","tags":["SERVICE_USER"]},{"value":1,"date":"2013-07-23 22:02:50.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},{"value":0,"_account_id":2622,"name":"Samuel Merritt","email":"spam+launchpad@andcheese.org","username":"torgomatic"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":3,"name":"Jenkins","username":"jenkins"},{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},{"_account_id":2166,"name":"SmokeStack CI","username":"smokestack","tags":["SERVICE_USER"]},{"_account_id":2622,"name":"Samuel Merritt","email":"spam+launchpad@andcheese.org","username":"torgomatic"},{"_account_id":6198,"name":"Peter Portante","email":"peter.a.portante@gmail.com","username":"peter-a-portante"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2013-07-18 21:01:40.000000000","updated_by":{"_account_id":2166,"name":"SmokeStack CI","username":"smokestack","tags":["SERVICE_USER"]},"reviewer":{"_account_id":2166,"name":"SmokeStack CI","username":"smokestack","tags":["SERVICE_USER"]},"state":"REVIEWER"},{"updated":"2013-07-22 14:07:56.000000000","updated_by":{"_account_id":2622,"name":"Samuel Merritt","email":"spam+launchpad@andcheese.org","username":"torgomatic"},"reviewer":{"_account_id":2622,"name":"Samuel Merritt","email":"spam+launchpad@andcheese.org","username":"torgomatic"},"state":"REVIEWER"},{"updated":"2013-07-23 22:02:50.000000000","updated_by":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"reviewer":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"state":"REVIEWER"},{"updated":"2013-07-23 23:01:44.000000000","updated_by":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"reviewer":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"state":"REVIEWER"}],"messages":[{"id":"a1e1a91c57ec5679f7b72381b53f9feee7d6b513","author":{"_account_id":2622,"name":"Samuel Merritt","email":"spam+launchpad@andcheese.org","username":"torgomatic"},"date":"2013-07-17 21:45:21.000000000","message":"Patch Set 1: Looks good to me (core reviewer)\n\nSeems good.\n\nI guess there\u0027s still the one mount check in REPLICATE(), but there\u0027s no diskfile being instantiated there, so not much can be done there.","accounts_in_message":[],"_revision_number":1},{"id":"19006dcfcee42ca8125b55b73ee2055c250a2799","author":{"_account_id":2166,"name":"SmokeStack CI","username":"smokestack","tags":["SERVICE_USER"]},"date":"2013-07-17 22:05:23.000000000","message":"Patch Set 1: Works for me\n\nSmokeStack Results (patch set 1):\n\tLibvirt (Fedora 18) Success: http://smokestack.openstack.org/?go\u003d/jobs/102018\n","accounts_in_message":[],"_revision_number":1},{"id":"864da98df859540eca2911c7d8a9251376c4d26e","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2013-07-17 22:30:27.000000000","message":"Patch Set 1: Doesn\u0027t seem to work\n\nBuild failed.  For information on how to proceed, see https://wiki.openstack.org/wiki/GerritJenkinsGithub#Test_Failures\n\n- http://logs.openstack.org/37579/1/check/gate-swift-pep8/3119 : SUCCESS in 56s\n- http://docs-draft.openstack.org/37579/1/check/gate-swift-docs/2949/doc/build/html/ : SUCCESS in 1m 17s\n- http://logs.openstack.org/37579/1/check/gate-swift-python26/3195 : FAILURE in 2m 05s\n- http://logs.openstack.org/37579/1/check/gate-swift-python27/3195 : SUCCESS in 1m 42s\n- http://logs.openstack.org/37579/1/check/gate-swift-devstack-vm-functional/37 : SUCCESS in 7m 03s (non-voting)\n- http://logs.openstack.org/37579/1/check/gate-tempest-devstack-vm-full/33332 : SUCCESS in 46m 44s\n- http://logs.openstack.org/37579/1/check/gate-tempest-devstack-vm-cells-full/1096 : FAILURE in 15m 38s (non-voting)\n- http://logs.openstack.org/37579/1/check/gate-tempest-devstack-vm-neutron/4981 : SUCCESS in 17m 30s (non-voting)\n- http://logs.openstack.org/37579/1/check/gate-tempest-devstack-vm-postgres-full/33022 : SUCCESS in 48m 07s\n- http://logs.openstack.org/37579/1/check/gate-grenade-devstack-vm/19146 : SUCCESS in 26m 09s (non-voting)\n","accounts_in_message":[],"_revision_number":1},{"id":"5ab4979ab2f3543d5758835af65dfe5817fa8921","author":{"_account_id":2622,"name":"Samuel Merritt","email":"spam+launchpad@andcheese.org","username":"torgomatic"},"date":"2013-07-17 22:37:27.000000000","message":"Patch Set 1:\n\nOh look, a timing-dependent unit test failed.\n\nrecheck no bug","accounts_in_message":[],"_revision_number":1},{"id":"7b98ae62cf840938636fc6da129af26d37fcad3a","author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"date":"2013-07-17 22:42:17.000000000","message":"Patch Set 1: I would prefer that you didn\u0027t merge this\n\nI think it\u0027s natural for the DiskFile interface to define an exceptional condition that may be thrown to generically indicate some classification of storage above this single file is unavailable.  Since devices are things in the ring I think that concept will apply in some fashion to most implementors of DiskFile, so I suggest the exception be named DeviceUnavailableError.  The DeviceUnavailableError would of course indicate all of the partitions on that device are not available and the object server it\u0027s daemons and the proxy can work around it as needed.\n\nI think a DeviceUnavailableError would include an attribute .device that maps back to the thing in the ring that we\u0027re calling unavailable.  If you have .device as an attribute you can move the exception handling out of the request methods and catch it during dispatch so we get DRY\u0027d out too.\n\nI think it just happens to be the case that we do the mount_check manually now in the _diskfile helper.  This exception eventually needs to only be raised from within the DiskFile.  As such, the other mount_check call site should at least include the DeviceUnavailableError token as comment if nothing else so future grep\u0027s can know that we need to fix that too.","accounts_in_message":[],"_revision_number":1},{"id":"f189e1d21091527afb7233104670c9f855b47ec8","author":{"_account_id":6198,"name":"Peter Portante","email":"peter.a.portante@gmail.com","username":"peter-a-portante"},"date":"2013-07-18 18:06:44.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"a97bec8b651733382e95f9388e0f2957c419e783","author":{"_account_id":2166,"name":"SmokeStack CI","username":"smokestack","tags":["SERVICE_USER"]},"date":"2013-07-18 18:34:22.000000000","message":"Patch Set 2: Works for me\n\nSmokeStack Results (patch set 2):\n\tLibvirt (Fedora 18) Success: http://smokestack.openstack.org/?go\u003d/jobs/102297\n","accounts_in_message":[],"_revision_number":2},{"id":"ac0125d06ccbc22e43d76bceed4de751b6c9da16","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2013-07-18 19:03:14.000000000","message":"Patch Set 2: Works for me\n\nBuild succeeded.\n\n- http://logs.openstack.org/37579/2/check/gate-swift-pep8/3123 : SUCCESS in 1m 01s\n- http://docs-draft.openstack.org/37579/2/check/gate-swift-docs/2953/doc/build/html/ : SUCCESS in 1m 28s\n- http://logs.openstack.org/37579/2/check/gate-swift-python26/3199 : SUCCESS in 3m 34s\n- http://logs.openstack.org/37579/2/check/gate-swift-python27/3199 : SUCCESS in 1m 41s\n- http://logs.openstack.org/37579/2/check/gate-swift-devstack-vm-functional/40 : SUCCESS in 7m 44s (non-voting)\n- http://logs.openstack.org/37579/2/check/gate-tempest-devstack-vm-full/33593 : SUCCESS in 56m 25s\n- http://logs.openstack.org/37579/2/check/gate-tempest-devstack-vm-cells-full/1320 : FAILURE in 19m 48s (non-voting)\n- http://logs.openstack.org/37579/2/check/gate-tempest-devstack-vm-testr-full/173 : SUCCESS in 29m 30s (non-voting)\n- http://logs.openstack.org/37579/2/check/gate-tempest-devstack-vm-neutron/5303 : SUCCESS in 24m 23s (non-voting)\n- http://logs.openstack.org/37579/2/check/gate-tempest-devstack-vm-postgres-full/33283 : SUCCESS in 50m 02s\n- http://logs.openstack.org/37579/2/check/gate-grenade-devstack-vm/19364 : SUCCESS in 26m 13s (non-voting)\n","accounts_in_message":[],"_revision_number":2},{"id":"fff3bcc0d270bc75f70157680b5bd8918b41264d","author":{"_account_id":6198,"name":"Peter Portante","email":"peter.a.portante@gmail.com","username":"peter-a-portante"},"date":"2013-07-18 20:35:30.000000000","message":"Uploaded patch set 3.","accounts_in_message":[],"_revision_number":3},{"id":"1f41608282c70a58a6f92eff4fe8b8db2171a165","author":{"_account_id":2166,"name":"SmokeStack CI","username":"smokestack","tags":["SERVICE_USER"]},"date":"2013-07-18 21:01:40.000000000","message":"Patch Set 3: Works for me\n\nSmokeStack Results (patch set 3):\n\tLibvirt (Fedora 18) Success: http://smokestack.openstack.org/?go\u003d/jobs/102341\n","accounts_in_message":[],"_revision_number":3},{"id":"3129e2c251445c5e6d97197a46c6677b26563f5e","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2013-07-18 21:34:00.000000000","message":"Patch Set 3: Works for me\n\nBuild succeeded.\n\n- http://logs.openstack.org/37579/3/check/gate-swift-pep8/3126 : SUCCESS in 52s\n- http://docs-draft.openstack.org/37579/3/check/gate-swift-docs/2956/doc/build/html/ : SUCCESS in 1m 12s\n- http://logs.openstack.org/37579/3/check/gate-swift-python26/3202 : SUCCESS in 2m 39s\n- http://logs.openstack.org/37579/3/check/gate-swift-python27/3202 : SUCCESS in 1m 46s\n- http://logs.openstack.org/37579/3/check/gate-swift-devstack-vm-functional/43 : SUCCESS in 9m 28s (non-voting)\n- http://logs.openstack.org/37579/3/check/gate-tempest-devstack-vm-full/33635 : SUCCESS in 45m 30s\n- http://logs.openstack.org/37579/3/check/gate-tempest-devstack-vm-cells-full/1358 : FAILURE in 14m 22s (non-voting)\n- http://logs.openstack.org/37579/3/check/gate-tempest-devstack-vm-testr-full/211 : SUCCESS in 29m 28s (non-voting)\n- http://logs.openstack.org/37579/3/check/gate-tempest-devstack-vm-neutron/5354 : SUCCESS in 18m 05s (non-voting)\n- http://logs.openstack.org/37579/3/check/gate-tempest-devstack-vm-postgres-full/33325 : SUCCESS in 58m 23s\n- http://logs.openstack.org/37579/3/check/gate-grenade-devstack-vm/19400 : SUCCESS in 21m 43s (non-voting)\n","accounts_in_message":[],"_revision_number":3},{"id":"37bd7aedee81762f43cd1689c829295a6cf12a70","author":{"_account_id":2622,"name":"Samuel Merritt","email":"spam+launchpad@andcheese.org","username":"torgomatic"},"date":"2013-07-19 01:17:01.000000000","message":"Patch Set 3: Looks good to me (core reviewer)\n\nSeems sane to me.","accounts_in_message":[],"_revision_number":3},{"id":"06ce08936709b74c5f4923509fcc48f6fdc338df","author":{"_account_id":6198,"name":"Peter Portante","email":"peter.a.portante@gmail.com","username":"peter-a-portante"},"date":"2013-07-22 14:07:50.000000000","message":"Uploaded patch set 4.","accounts_in_message":[],"_revision_number":4},{"id":"3afc0789302c99a17a4fb2d63989b1c8278e3dfa","author":{"_account_id":2622,"name":"Samuel Merritt","email":"spam+launchpad@andcheese.org","username":"torgomatic"},"date":"2013-07-22 14:07:56.000000000","message":"Patch Set 4: Looks good to me (core reviewer)\n\nAutomatically re-added by Gerrit trivial rebase detection script.","accounts_in_message":[],"_revision_number":4},{"id":"3f4047e06c4b8707f5c4664b00005afea799db7a","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2013-07-22 15:16:23.000000000","message":"Patch Set 4: Works for me\n\nBuild succeeded.\n\n- http://logs.openstack.org/79/37579/4/check/gate-swift-pep8/3183 : SUCCESS in 1m 36s\n- http://docs-draft.openstack.org/79/37579/4/check/gate-swift-docs/3013/doc/build/html/ : SUCCESS in 2m 02s\n- http://logs.openstack.org/79/37579/4/check/gate-swift-python26/3259 : SUCCESS in 2m 48s\n- http://logs.openstack.org/79/37579/4/check/gate-swift-python27/3259 : SUCCESS in 1m 56s\n- http://logs.openstack.org/79/37579/4/check/gate-swift-devstack-vm-functional/94 : SUCCESS in 7m 56s (non-voting)\n- http://logs.openstack.org/79/37579/4/check/gate-tempest-devstack-vm-full/34381 : SUCCESS in 54m 04s\n- http://logs.openstack.org/79/37579/4/check/gate-tempest-devstack-vm-cells-full/1972 : FAILURE in 15m 56s (non-voting)\n- http://logs.openstack.org/79/37579/4/check/gate-tempest-devstack-vm-testr-full/818 : SUCCESS in 28m 31s (non-voting)\n- http://logs.openstack.org/79/37579/4/check/gate-tempest-devstack-vm-neutron/6194 : SUCCESS in 22m 41s (non-voting)\n- http://logs.openstack.org/79/37579/4/check/gate-tempest-devstack-vm-postgres-full/34071 : SUCCESS in 46m 29s\n- http://logs.openstack.org/79/37579/4/check/gate-grenade-devstack-vm/20075 : SUCCESS in 21m 51s\n","accounts_in_message":[],"_revision_number":4},{"id":"f231c6062acf6a94eb0737fab8a76b8a23b4fb9b","author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"date":"2013-07-23 20:39:40.000000000","message":"Patch Set 4: I would prefer that you didn\u0027t merge this\n\nBecause DiskFileError is raised (and handled) as a specific exception currently in get_data_file_size - I don\u0027t think it should also be a base class.  get_data_file_size should probably return something more specific like DiskFileCorruptError (?)\n\nI\u0027d also like to see some high-level plans on how to handle the REPLICATE verb.","accounts_in_message":[],"_revision_number":4},{"id":"db67675324a6f3958001ca98efd61a4399ffadab","author":{"_account_id":6198,"name":"Peter Portante","email":"peter.a.portante@gmail.com","username":"peter-a-portante"},"date":"2013-07-23 21:10:50.000000000","message":"Patch Set 4:\n\n\u003e Because DiskFileError is raised (and handled) as a\n\u003e specific exception currently in get_data_file_size\n\u003e - I don\u0027t think it should also be a base class.\n\u003e get_data_file_size should probably return something\n\u003e more specific like DiskFileCorruptError (?)\n\nI believe this issue was handled as part of the now\nmerged https://review.openstack.org/#/c/37760/.\nChanges were made in that commit which ensured that\nthe base exception was handled after all the others.\n\nThe proposed quarantine refactoring work proposes\na specific exception for this case removing the use\nof the base class.\n\n\u003e I\u0027d also like to see some high-level plans on how\n\u003e to handle the REPLICATE verb.\n\nI posted a proposal in the following gist (intended\nto be viewed \"raw\" so see the columns for a visual\ncomparison): https://gist.github.com/portante/5488238","accounts_in_message":[],"_revision_number":4},{"id":"76d8a6bcb4e6b1bf6ec5cd78c1f397829e50daca","author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"date":"2013-07-23 22:02:36.000000000","message":"Patch Set 4: Looks good to me (core reviewer)\n\nI don\u0027t think the referenced review really addresses the overlapping use of DiskFileError as a specific error and also a base class exception, but that\u0027s ok - I think it\u0027ll still be fine (FLW).","accounts_in_message":[],"_revision_number":4},{"id":"d889fc19a567d984ce744bace95e859e28651a5a","author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"date":"2013-07-23 22:02:50.000000000","message":"Patch Set 4: Approved\n\nclick click","accounts_in_message":[],"_revision_number":4},{"id":"231d1d1e5502466a440b1fc31493389ac74e8c0d","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2013-07-23 22:02:51.000000000","message":"Patch Set 4: No score\n\nStarting gate jobs.\nhttp://status.openstack.org/zuul/","accounts_in_message":[],"_revision_number":4},{"id":"51dcea7b196b087de49302234fe110c1814446cc","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2013-07-23 23:01:44.000000000","message":"Change has been successfully merged into the git repository.","accounts_in_message":[],"_revision_number":4},{"id":"452d8d341c86b25c558c23e4b6ca2c0a7371931d","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2013-07-23 23:01:44.000000000","message":"Patch Set 4: Verified\n\nBuild succeeded.\n\n- http://docs-draft.openstack.org/79/37579/4/gate/gate-swift-docs/3048/doc/build/html/ : SUCCESS in 1m 28s\n- http://logs.openstack.org/79/37579/4/gate/gate-swift-pep8/3218 : SUCCESS in 57s\n- http://logs.openstack.org/79/37579/4/gate/gate-swift-python26/3294 : SUCCESS in 3m 57s\n- http://logs.openstack.org/79/37579/4/gate/gate-swift-python27/3294 : SUCCESS in 2m 06s\n- http://logs.openstack.org/79/37579/4/gate/gate-tempest-devstack-vm-full/34902 : SUCCESS in 51m 01s\n- http://logs.openstack.org/79/37579/4/gate/gate-tempest-devstack-vm-neutron/6784 : SUCCESS in 19m 10s (non-voting)\n- http://logs.openstack.org/79/37579/4/gate/gate-tempest-devstack-vm-postgres-full/34592 : SUCCESS in 52m 04s\n- http://logs.openstack.org/79/37579/4/gate/gate-grenade-devstack-vm/20555 : SUCCESS in 26m 32s\n","accounts_in_message":[],"_revision_number":4}],"current_revision_number":4,"current_revision":"fc293a750c8a83ec99d3b462b4689741c1e66a9b","revisions":{"a82f761e7ef6339461188a68016bd7202ccabfe8":{"kind":"REWORK","_number":1,"created":"2013-07-17 21:42:14.000000000","uploader":{"_account_id":6198,"name":"Peter Portante","email":"peter.a.portante@gmail.com","username":"peter-a-portante"},"ref":"refs/changes/79/37579/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/79/37579/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/79/37579/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/79/37579/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/79/37579/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/79/37579/1"}}},"commit":{"parents":[{"commit":"167897bba5e766ea2af359696de3fe619c064ed7","subject":"Merge \"Refactor auditors to rely on expected gen names\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/167897bba5e766ea2af359696de3fe619c064ed7"}]}],"author":{"name":"Peter Portante","email":"peter.portante@redhat.com","date":"2013-07-17 21:41:41.000000000","tz":-240},"committer":{"name":"Peter Portante","email":"peter.portante@redhat.com","date":"2013-07-17 21:41:41.000000000","tz":-240},"subject":"Move the mount checking into the _diskfile method","message":"Move the mount checking into the _diskfile method\n\nChange-Id: Idcbb5a912d8c7d956dac96ff523c1cf1163c98a6\nSigned-off-by: Peter Portante \u003cpeter.portante@redhat.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/a82f761e7ef6339461188a68016bd7202ccabfe8"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/a82f761e7ef6339461188a68016bd7202ccabfe8"}]},"parents_data":[{"branch_name":"refs/heads/master","commit_id":"167897bba5e766ea2af359696de3fe619c064ed7","is_merged_in_target_branch":true}],"branch":"refs/heads/master"},"3af80c32fa4573cb2b50f83dd31ab98fcf1c4043":{"kind":"REWORK","_number":2,"created":"2013-07-18 18:06:44.000000000","uploader":{"_account_id":6198,"name":"Peter Portante","email":"peter.a.portante@gmail.com","username":"peter-a-portante"},"ref":"refs/changes/79/37579/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/79/37579/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/79/37579/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/79/37579/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/79/37579/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/79/37579/2"}}},"commit":{"parents":[{"commit":"c9de9f2b8da23538b82f23c724b482404d0ea916","subject":"Forklift the DiskFile interface into it\u0027s own module","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/c9de9f2b8da23538b82f23c724b482404d0ea916"}]}],"author":{"name":"Peter Portante","email":"peter.portante@redhat.com","date":"2013-07-17 21:41:41.000000000","tz":-240},"committer":{"name":"Peter Portante","email":"peter.portante@redhat.com","date":"2013-07-18 18:03:41.000000000","tz":-240},"subject":"Move the mount checking into DiskFile constructor","message":"Move the mount checking into DiskFile constructor\n\nMove the mount checking into the DiskFile object constructor. The\nREPLICATE method does not use the DiskFile object currently, so that\nmethod still has to perform its own mount check.\n\nWe also refactored the DiskFile exceptions a bit for a hierarchy.\n\nChange-Id: Idcbb5a912d8c7d956dac96ff523c1cf1163c98a6\nSigned-off-by: Peter Portante \u003cpeter.portante@redhat.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/3af80c32fa4573cb2b50f83dd31ab98fcf1c4043"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/3af80c32fa4573cb2b50f83dd31ab98fcf1c4043"}]},"parents_data":[{"branch_name":"refs/heads/master","commit_id":"c9de9f2b8da23538b82f23c724b482404d0ea916","is_merged_in_target_branch":true,"change_id":"I3962202c07c4b2fbfc26f9776c8a5c96292ae199","change_number":37691,"patch_set_number":1,"change_status":"MERGED"}],"branch":"refs/heads/master"},"9b2c7434b505eb83ceb57920516703f720b45c60":{"kind":"REWORK","_number":3,"created":"2013-07-18 20:35:30.000000000","uploader":{"_account_id":6198,"name":"Peter Portante","email":"peter.a.portante@gmail.com","username":"peter-a-portante"},"ref":"refs/changes/79/37579/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/79/37579/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/79/37579/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/79/37579/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/79/37579/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/79/37579/3"}}},"commit":{"parents":[{"commit":"c9de9f2b8da23538b82f23c724b482404d0ea916","subject":"Forklift the DiskFile interface into it\u0027s own module","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/c9de9f2b8da23538b82f23c724b482404d0ea916"}]}],"author":{"name":"Peter Portante","email":"peter.portante@redhat.com","date":"2013-07-17 21:41:41.000000000","tz":-240},"committer":{"name":"Peter Portante","email":"peter.portante@redhat.com","date":"2013-07-18 20:35:20.000000000","tz":-240},"subject":"Move the mount checking into DiskFile constructor","message":"Move the mount checking into DiskFile constructor\n\nMove the mount checking into the DiskFile object constructor. The\nREPLICATE method does not use the DiskFile object currently, so that\nmethod still has to perform its own mount check.\n\nWe also refactored the DiskFile exceptions a bit for a hierarchy.\n\nChange-Id: Idcbb5a912d8c7d956dac96ff523c1cf1163c98a6\nSigned-off-by: Peter Portante \u003cpeter.portante@redhat.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/9b2c7434b505eb83ceb57920516703f720b45c60"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/9b2c7434b505eb83ceb57920516703f720b45c60"}]},"parents_data":[{"branch_name":"refs/heads/master","commit_id":"c9de9f2b8da23538b82f23c724b482404d0ea916","is_merged_in_target_branch":true,"change_id":"I3962202c07c4b2fbfc26f9776c8a5c96292ae199","change_number":37691,"patch_set_number":1,"change_status":"MERGED"}],"branch":"refs/heads/master"},"fc293a750c8a83ec99d3b462b4689741c1e66a9b":{"kind":"TRIVIAL_REBASE","_number":4,"created":"2013-07-22 14:07:50.000000000","uploader":{"_account_id":6198,"name":"Peter Portante","email":"peter.a.portante@gmail.com","username":"peter-a-portante"},"ref":"refs/changes/79/37579/4","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/79/37579/4","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/79/37579/4 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/79/37579/4 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/79/37579/4 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/79/37579/4"}}},"commit":{"parents":[{"commit":"0fdad0d9d9e68b00f61171bb2a0dfd840ef5345f","subject":"Close SQLite cursors when creating functions.","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/0fdad0d9d9e68b00f61171bb2a0dfd840ef5345f"}]}],"author":{"name":"Peter Portante","email":"peter.portante@redhat.com","date":"2013-07-17 21:41:41.000000000","tz":-240},"committer":{"name":"Peter Portante","email":"peter.portante@redhat.com","date":"2013-07-22 14:07:45.000000000","tz":-240},"subject":"Move the mount checking into DiskFile constructor","message":"Move the mount checking into DiskFile constructor\n\nMove the mount checking into the DiskFile object constructor. The\nREPLICATE method does not use the DiskFile object currently, so that\nmethod still has to perform its own mount check.\n\nWe also refactored the DiskFile exceptions a bit for a hierarchy.\n\nChange-Id: Idcbb5a912d8c7d956dac96ff523c1cf1163c98a6\nSigned-off-by: Peter Portante \u003cpeter.portante@redhat.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/fc293a750c8a83ec99d3b462b4689741c1e66a9b"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/fc293a750c8a83ec99d3b462b4689741c1e66a9b"}]},"parents_data":[{"branch_name":"refs/heads/master","commit_id":"0fdad0d9d9e68b00f61171bb2a0dfd840ef5345f","is_merged_in_target_branch":true,"change_id":"I39210616d323691ccb745149f24430a7a61382ec","change_number":37986,"patch_set_number":1,"change_status":"MERGED"}],"branch":"refs/heads/master"}},"requirements":[],"submit_records":[],"submit_requirements":[]}
