)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":5638,"name":"Davanum Srinivas","email":"davanum@gmail.com","username":"dims-v"},"change_message_id":"8fdfce3cabae8a163b4fad1b529307af4b36600c","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Adding ability to specify the libvirt cache mode for disk devices"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"In past versions of Nova it was possible to explicitly configure"},{"line_number":10,"context_line":"the cache mode of disks via the libvirt XML template. The curent approach"},{"line_number":11,"context_line":"makes this a derived setting of either “none” or “writethrough” based"},{"line_number":12,"context_line":"on the support of O_DIRECT. Whilst this provides a good set of default"},{"line_number":13,"context_line":"settings it removes the ability of the cloud provider to use other"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"AAAAM3%2F%2FWj4%3D","line":10,"updated":"2013-01-25 22:19:18.000000000","message":"curent -\u003e current","commit_id":"d5600a8102f45e6f2d97890b46ed190526ca3563"},{"author":{"_account_id":5638,"name":"Davanum Srinivas","email":"davanum@gmail.com","username":"dims-v"},"change_message_id":"8fdfce3cabae8a163b4fad1b529307af4b36600c","unresolved":false,"context_lines":[{"line_number":15,"context_line":"configurations."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"This change allows the cache mode to be specified on a per-disk type"},{"line_number":18,"context_line":"basis. Leaving the specify_cachemode option set to False retains the"},{"line_number":19,"context_line":"current behaviour."},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"DocImpact"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"AAAAM3%2F%2FWj8%3D","line":18,"updated":"2013-01-25 22:19:18.000000000","message":"I don\u0027t see a specify_cachemode in the patch. Did i miss something?","commit_id":"d5600a8102f45e6f2d97890b46ed190526ca3563"}],"nova/tests/test_libvirt.py":[{"author":{"_account_id":1247,"name":"Mark McLoughlin","email":"markmc@redhat.com","username":"markmc"},"change_message_id":"49549112cd723d3c6697d9e4c21900c55b56953a","unresolved":false,"context_lines":[{"line_number":3328,"context_line":"        self.assertEqual(want, got)"},{"line_number":3329,"context_line":""},{"line_number":3330,"context_line":"    def test_set_cache_mode(self):"},{"line_number":3331,"context_line":"        CONF.disk_cachemodes \u003d [\u0027file\u003ddirectsync\u0027]"},{"line_number":3332,"context_line":"        conn \u003d libvirt_driver.LibvirtDriver(fake.FakeVirtAPI(), True)"},{"line_number":3333,"context_line":"        fake_conf \u003d FakeConfigGuestDisk()"},{"line_number":3334,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"AAAAM3%2F%2FC70%3D","line":3331,"updated":"2013-02-09 04:36:30.000000000","message":"Use\n\n  self.config(disk_cachemodes\u003d...)\n\nfor this","commit_id":"ccaf528463617f56c6347d042f51603c5426b3d1"},{"author":{"_account_id":1882,"name":"dave-mcnally","email":"dave.mcnally@hpe.com","username":"dave-mcnally"},"change_message_id":"4d0df1e79f5103fc0865685a9310ab76c198e6b3","unresolved":false,"context_lines":[{"line_number":3328,"context_line":"        self.assertEqual(want, got)"},{"line_number":3329,"context_line":""},{"line_number":3330,"context_line":"    def test_set_cache_mode(self):"},{"line_number":3331,"context_line":"        CONF.disk_cachemodes \u003d [\u0027file\u003ddirectsync\u0027]"},{"line_number":3332,"context_line":"        conn \u003d libvirt_driver.LibvirtDriver(fake.FakeVirtAPI(), True)"},{"line_number":3333,"context_line":"        fake_conf \u003d FakeConfigGuestDisk()"},{"line_number":3334,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"AAAAM3%2F%2ByNQ%3D","line":3331,"in_reply_to":"AAAAM3%2F%2ByTo%3D","updated":"2013-02-19 11:11:34.000000000","message":"Ah I should have spotted that, spent ages looking for self.config :)\n\nChange made.","commit_id":"ccaf528463617f56c6347d042f51603c5426b3d1"},{"author":{"_account_id":1247,"name":"Mark McLoughlin","email":"markmc@redhat.com","username":"markmc"},"change_message_id":"5791e71eeed8183a7b78f81116f28bf07ad39a9d","unresolved":false,"context_lines":[{"line_number":3328,"context_line":"        self.assertEqual(want, got)"},{"line_number":3329,"context_line":""},{"line_number":3330,"context_line":"    def test_set_cache_mode(self):"},{"line_number":3331,"context_line":"        CONF.disk_cachemodes \u003d [\u0027file\u003ddirectsync\u0027]"},{"line_number":3332,"context_line":"        conn \u003d libvirt_driver.LibvirtDriver(fake.FakeVirtAPI(), True)"},{"line_number":3333,"context_line":"        fake_conf \u003d FakeConfigGuestDisk()"},{"line_number":3334,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"AAAAM3%2F%2ByTo%3D","line":3331,"in_reply_to":"AAAAM3%2F%2FBgI%3D","updated":"2013-02-19 09:03:48.000000000","message":"I got the method name wrong, its:\n\n  self.flags(disk_cachemodes\u003d...)\n\nThere are 526 examples of its use under nova/tests :)","commit_id":"ccaf528463617f56c6347d042f51603c5426b3d1"},{"author":{"_account_id":1882,"name":"dave-mcnally","email":"dave.mcnally@hpe.com","username":"dave-mcnally"},"change_message_id":"b589c233293dc81d2c0c764ba058dfb77bdd893f","unresolved":false,"context_lines":[{"line_number":3328,"context_line":"        self.assertEqual(want, got)"},{"line_number":3329,"context_line":""},{"line_number":3330,"context_line":"    def test_set_cache_mode(self):"},{"line_number":3331,"context_line":"        CONF.disk_cachemodes \u003d [\u0027file\u003ddirectsync\u0027]"},{"line_number":3332,"context_line":"        conn \u003d libvirt_driver.LibvirtDriver(fake.FakeVirtAPI(), True)"},{"line_number":3333,"context_line":"        fake_conf \u003d FakeConfigGuestDisk()"},{"line_number":3334,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"AAAAM3%2F%2FBgI%3D","line":3331,"in_reply_to":"AAAAM3%2F%2FC70%3D","updated":"2013-02-11 10:20:53.000000000","message":"I\u0027m happy to make the change if that\u0027s the more accepted way to set config parameters in the tests. But I haven\u0027t been able to find another case where it\u0027s in use. Can you expand on the change you suggested or perhaps point me an an example?\nThanks.","commit_id":"ccaf528463617f56c6347d042f51603c5426b3d1"}],"nova/virt/libvirt/config.py":[{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"6e0c553682fff566da4bfcb2bc61e26e4887c012","unresolved":false,"context_lines":[{"line_number":26,"context_line":""},{"line_number":27,"context_line":"from lxml import etree"},{"line_number":28,"context_line":""},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAMX%2F%2F1Sc%3D","side":"PARENT","line":29,"updated":"2012-12-13 15:43:37.000000000","message":"Random whitespace removed, please don\u0027t do that unless there is a reason (which would make it non-random, of course :)","commit_id":"dc48ce7fb1f18616bde1f95cecbef49d12f73c99"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"6e0c553682fff566da4bfcb2bc61e26e4887c012","unresolved":false,"context_lines":[{"line_number":40,"context_line":"                         \u0027mount\u003dnone\u0027,"},{"line_number":41,"context_line":"                        ],"},{"line_number":42,"context_line":"                help\u003d\u0027Specific cachemodes to use for different disk types.\u0027),"},{"line_number":43,"context_line":"    ]"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"CONF \u003d cfg.CONF"},{"line_number":46,"context_line":"CONF.register_opts(libvirt_conf_opts)"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAMX%2F%2F1SQ%3D","line":43,"updated":"2012-12-13 15:43:37.000000000","message":"If you\u0027re going to have two, these should probably be in an OptGroup(\"libvirt\") as they\u0027re libvirt-specific, but that wouldn\u0027t be obvious from looking at the file. At the very least, a \"libvirt_\" prefix...","commit_id":"6055f09a5537c0ff11e5bce2f72be1caba6dbc51"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"325a4ba33f1e525d8b1fe85a99b5be30e2dd8ad0","unresolved":false,"context_lines":[{"line_number":40,"context_line":"                         \u0027mount\u003dnone\u0027,"},{"line_number":41,"context_line":"                        ],"},{"line_number":42,"context_line":"                help\u003d\u0027Specific cachemodes to use for different disk types.\u0027),"},{"line_number":43,"context_line":"    ]"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"CONF \u003d cfg.CONF"},{"line_number":46,"context_line":"CONF.register_opts(libvirt_conf_opts)"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAMX%2F%2F1Fw%3D","line":43,"in_reply_to":"AAAAMX%2F%2F1Gk%3D","updated":"2012-12-13 17:06:49.000000000","message":"grep OptGroup -r nova","commit_id":"6055f09a5537c0ff11e5bce2f72be1caba6dbc51"},{"author":{"_account_id":1882,"name":"dave-mcnally","email":"dave.mcnally@hpe.com","username":"dave-mcnally"},"change_message_id":"801ffc80bfef17543fbd3f7e2b32c6da4005d51f","unresolved":false,"context_lines":[{"line_number":40,"context_line":"                         \u0027mount\u003dnone\u0027,"},{"line_number":41,"context_line":"                        ],"},{"line_number":42,"context_line":"                help\u003d\u0027Specific cachemodes to use for different disk types.\u0027),"},{"line_number":43,"context_line":"    ]"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"CONF \u003d cfg.CONF"},{"line_number":46,"context_line":"CONF.register_opts(libvirt_conf_opts)"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAMX%2F%2F1Gk%3D","line":43,"in_reply_to":"AAAAMX%2F%2F1SQ%3D","updated":"2012-12-13 16:54:05.000000000","message":"I\u0027m afraid I\u0027m not familiar with OptGroups can you point me at anything that would help me understand when they should be used? I can\u0027t see a lot of uses in the code.","commit_id":"6055f09a5537c0ff11e5bce2f72be1caba6dbc51"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"6e0c553682fff566da4bfcb2bc61e26e4887c012","unresolved":false,"context_lines":[{"line_number":486,"context_line":"        if CONF.specify_cachemode:"},{"line_number":487,"context_line":"            for mode_str in CONF.disk_cachemodes:"},{"line_number":488,"context_line":"                disk_type, sep, cache_mode \u003d mode_str.partition(\u0027\u003d\u0027)"},{"line_number":489,"context_line":"                self.disk_cachemodes[disk_type] \u003d cache_mode"},{"line_number":490,"context_line":""},{"line_number":491,"context_line":"    def format_dom(self):"},{"line_number":492,"context_line":"        dev \u003d super(LibvirtConfigGuestDisk, self).format_dom()"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAMX%2F%2F1RU%3D","line":489,"updated":"2012-12-13 15:43:37.000000000","message":"I think you should validate the list a bit too, instead of stuffing anything they specify into your disk_cachemodes.\n\nPerhaps have a list of the supported ones here and march through the specified ones, and make it so that anything not specified takes the default behavior? That would allow you to remove the boolean opt as well as throwing a log error message if they skipped or mistyped one.","commit_id":"6055f09a5537c0ff11e5bce2f72be1caba6dbc51"},{"author":{"_account_id":1882,"name":"dave-mcnally","email":"dave.mcnally@hpe.com","username":"dave-mcnally"},"change_message_id":"801ffc80bfef17543fbd3f7e2b32c6da4005d51f","unresolved":false,"context_lines":[{"line_number":486,"context_line":"        if CONF.specify_cachemode:"},{"line_number":487,"context_line":"            for mode_str in CONF.disk_cachemodes:"},{"line_number":488,"context_line":"                disk_type, sep, cache_mode \u003d mode_str.partition(\u0027\u003d\u0027)"},{"line_number":489,"context_line":"                self.disk_cachemodes[disk_type] \u003d cache_mode"},{"line_number":490,"context_line":""},{"line_number":491,"context_line":"    def format_dom(self):"},{"line_number":492,"context_line":"        dev \u003d super(LibvirtConfigGuestDisk, self).format_dom()"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAMX%2F%2F1Gg%3D","line":489,"in_reply_to":"AAAAMX%2F%2F1RU%3D","updated":"2012-12-13 16:54:05.000000000","message":"Good point, I will add validation.","commit_id":"6055f09a5537c0ff11e5bce2f72be1caba6dbc51"}],"nova/virt/libvirt/driver.py":[{"author":{"_account_id":1779,"name":"Daniel Berrange","email":"berrange@redhat.com","username":"berrange"},"change_message_id":"c27425ea9a126f8f0eccdd96ca87e080a0092ea2","unresolved":false,"context_lines":[{"line_number":193,"context_line":"                          \u0027network\u003dnone\u0027,"},{"line_number":194,"context_line":"                          \u0027mount\u003dnone\u0027,"},{"line_number":195,"context_line":"                         ],"},{"line_number":196,"context_line":"                help\u003d\u0027Specific cachemodes to use for different disk types.\u0027),"},{"line_number":197,"context_line":"    ]"},{"line_number":198,"context_line":""},{"line_number":199,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAM3%2F%2F7IQ%3D","line":196,"updated":"2012-12-20 16:52:39.000000000","message":"Do we really need two separate config parameters for this. IMHO, we should just have \u0027disk_cachemodes\u0027 parameter and make it default to the empty list []. If someone wants to override the cache mode a particular type of disk, then they can add an entry to the list.","commit_id":"8fe417df43ae278a6195d825cd42a11535a28e4c"},{"author":{"_account_id":2889,"name":"Aeva Black","email":"aeva.online@gmail.com","username":"tenbrae"},"change_message_id":"cec1c26eb69fadf1dd792b9b58d27ebdef045fc8","unresolved":false,"context_lines":[{"line_number":193,"context_line":"                          \u0027network\u003dnone\u0027,"},{"line_number":194,"context_line":"                          \u0027mount\u003dnone\u0027,"},{"line_number":195,"context_line":"                         ],"},{"line_number":196,"context_line":"                help\u003d\u0027Specific cachemodes to use for different disk types.\u0027),"},{"line_number":197,"context_line":"    ]"},{"line_number":198,"context_line":""},{"line_number":199,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAM3%2F%2F6kg%3D","line":196,"in_reply_to":"AAAAM3%2F%2F7IQ%3D","updated":"2012-12-21 00:13:43.000000000","message":"I agree -- single config option here would be better. IMHO, the defaults for each disk type should be \"\", not be \"none\". I think it should default to \"don\u0027t change the system\", not \"set the cache to \u0027none\u0027.","commit_id":"8fe417df43ae278a6195d825cd42a11535a28e4c"},{"author":{"_account_id":2889,"name":"Aeva Black","email":"aeva.online@gmail.com","username":"tenbrae"},"change_message_id":"cec1c26eb69fadf1dd792b9b58d27ebdef045fc8","unresolved":false,"context_lines":[{"line_number":1661,"context_line":"                                          disk_dev,"},{"line_number":1662,"context_line":"                                          device_type,"},{"line_number":1663,"context_line":"                                          self.disk_cachemode)"},{"line_number":1664,"context_line":"                if CONF.specify_cachemode:"},{"line_number":1665,"context_line":"                    self.set_cache_mode(conf)"},{"line_number":1666,"context_line":"                return conf"},{"line_number":1667,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAM3%2F%2F6l8%3D","line":1664,"updated":"2012-12-21 00:13:43.000000000","message":"It seems counter-intuitive to me that disk_info should be calling set_cache_mode...","commit_id":"8fe417df43ae278a6195d825cd42a11535a28e4c"},{"author":{"_account_id":1882,"name":"dave-mcnally","email":"dave.mcnally@hpe.com","username":"dave-mcnally"},"change_message_id":"484b9610f4ac88db7522ab29cf0c884eb6119e96","unresolved":false,"context_lines":[{"line_number":1661,"context_line":"                                          disk_dev,"},{"line_number":1662,"context_line":"                                          device_type,"},{"line_number":1663,"context_line":"                                          self.disk_cachemode)"},{"line_number":1664,"context_line":"                if CONF.specify_cachemode:"},{"line_number":1665,"context_line":"                    self.set_cache_mode(conf)"},{"line_number":1666,"context_line":"                return conf"},{"line_number":1667,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAM3%2F%2F1A4%3D","line":1664,"in_reply_to":"AAAAM3%2F%2F6l8%3D","updated":"2013-01-03 14:05:36.000000000","message":"Consolidating the checks at the end of get_guest_storage_config would remove this.","commit_id":"8fe417df43ae278a6195d825cd42a11535a28e4c"},{"author":{"_account_id":2889,"name":"Aeva Black","email":"aeva.online@gmail.com","username":"tenbrae"},"change_message_id":"cec1c26eb69fadf1dd792b9b58d27ebdef045fc8","unresolved":false,"context_lines":[{"line_number":1760,"context_line":""},{"line_number":1761,"context_line":"                devices.append(diskconfig)"},{"line_number":1762,"context_line":""},{"line_number":1763,"context_line":"        return devices"},{"line_number":1764,"context_line":""},{"line_number":1765,"context_line":"    def get_guest_config(self, instance, network_info, image_meta, rescue\u003dNone,"},{"line_number":1766,"context_line":"                         block_device_info\u003dNone):"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAM3%2F%2F6l0%3D","line":1763,"updated":"2012-12-21 00:13:43.000000000","message":"Instead of adding \"if CONF.specify_cachemode...\" in three places within get_guest_storage_config, could you just iterate over devices once all the disk configs are added to it, just before returning it?","commit_id":"8fe417df43ae278a6195d825cd42a11535a28e4c"},{"author":{"_account_id":1882,"name":"dave-mcnally","email":"dave.mcnally@hpe.com","username":"dave-mcnally"},"change_message_id":"484b9610f4ac88db7522ab29cf0c884eb6119e96","unresolved":false,"context_lines":[{"line_number":1760,"context_line":""},{"line_number":1761,"context_line":"                devices.append(diskconfig)"},{"line_number":1762,"context_line":""},{"line_number":1763,"context_line":"        return devices"},{"line_number":1764,"context_line":""},{"line_number":1765,"context_line":"    def get_guest_config(self, instance, network_info, image_meta, rescue\u003dNone,"},{"line_number":1766,"context_line":"                         block_device_info\u003dNone):"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAM3%2F%2F1A8%3D","line":1763,"in_reply_to":"AAAAM3%2F%2F6l0%3D","updated":"2013-01-03 14:05:36.000000000","message":"I\u0027ll look into making this change.","commit_id":"8fe417df43ae278a6195d825cd42a11535a28e4c"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"4d574bc9013c68f25e65bd2520754b146cf57da8","unresolved":false,"context_lines":[{"line_number":188,"context_line":"                help\u003d\u0027Location where the Xen hvmloader is kept\u0027),"},{"line_number":189,"context_line":"    cfg.ListOpt(\u0027disk_cachemodes\u0027,"},{"line_number":190,"context_line":"                 default\u003d[],"},{"line_number":191,"context_line":"                help\u003d\u0027Specific cachemodes to use for different disk types \u0027"},{"line_number":192,"context_line":"                     \u0027e.g: [\"file\u003ddirectsync\",\"block\u003dnone\"]\u0027),"},{"line_number":193,"context_line":"    ]"},{"line_number":194,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAM3%2F%2FUHA%3D","line":191,"updated":"2013-01-29 12:03:14.000000000","message":"can you fix this indent to be lined up with the others, the outdent sort of throws me.","commit_id":"74c36b3611c818cec7c11db705564748489d706b"},{"author":{"_account_id":1882,"name":"dave-mcnally","email":"dave.mcnally@hpe.com","username":"dave-mcnally"},"change_message_id":"6f092395b92249f070211a07ba2a82a5d55d95ac","unresolved":false,"context_lines":[{"line_number":188,"context_line":"                help\u003d\u0027Location where the Xen hvmloader is kept\u0027),"},{"line_number":189,"context_line":"    cfg.ListOpt(\u0027disk_cachemodes\u0027,"},{"line_number":190,"context_line":"                 default\u003d[],"},{"line_number":191,"context_line":"                help\u003d\u0027Specific cachemodes to use for different disk types \u0027"},{"line_number":192,"context_line":"                     \u0027e.g: [\"file\u003ddirectsync\",\"block\u003dnone\"]\u0027),"},{"line_number":193,"context_line":"    ]"},{"line_number":194,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAM3%2F%2FT0k%3D","line":191,"in_reply_to":"AAAAM3%2F%2FUHA%3D","updated":"2013-01-29 15:32:24.000000000","message":"Done","commit_id":"74c36b3611c818cec7c11db705564748489d706b"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"4d574bc9013c68f25e65bd2520754b146cf57da8","unresolved":false,"context_lines":[{"line_number":312,"context_line":""},{"line_number":313,"context_line":"        for mode_str in CONF.disk_cachemodes:"},{"line_number":314,"context_line":"            disk_type, sep, cache_mode \u003d mode_str.partition(\u0027\u003d\u0027)"},{"line_number":315,"context_line":"            self.disk_cachemodes[disk_type] \u003d cache_mode"},{"line_number":316,"context_line":""},{"line_number":317,"context_line":"        self.valid_cachemodes \u003d [\"default\","},{"line_number":318,"context_line":"                                 \"none\","}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAM3%2F%2FUGw%3D","line":315,"updated":"2013-01-29 12:03:14.000000000","message":"I don\u0027t understand why validation is punted to another function, why don\u0027t we validate this inbound, and not added it to disk_cachemodes if it\u0027s not valid.\n\nAlso, it would be good to have a LOG.warn if an invalid mode is found, so if someone fat fingers \"wrteback\" there is some record of it, instead of silently not doing what they were expecting.","commit_id":"74c36b3611c818cec7c11db705564748489d706b"},{"author":{"_account_id":1882,"name":"dave-mcnally","email":"dave.mcnally@hpe.com","username":"dave-mcnally"},"change_message_id":"6f092395b92249f070211a07ba2a82a5d55d95ac","unresolved":false,"context_lines":[{"line_number":312,"context_line":""},{"line_number":313,"context_line":"        for mode_str in CONF.disk_cachemodes:"},{"line_number":314,"context_line":"            disk_type, sep, cache_mode \u003d mode_str.partition(\u0027\u003d\u0027)"},{"line_number":315,"context_line":"            self.disk_cachemodes[disk_type] \u003d cache_mode"},{"line_number":316,"context_line":""},{"line_number":317,"context_line":"        self.valid_cachemodes \u003d [\"default\","},{"line_number":318,"context_line":"                                 \"none\","}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAM3%2F%2FT0o%3D","line":315,"in_reply_to":"AAAAM3%2F%2FUGw%3D","updated":"2013-01-29 15:32:24.000000000","message":"Done","commit_id":"74c36b3611c818cec7c11db705564748489d706b"},{"author":{"_account_id":679,"name":"Kevin L. Mitchell","email":"klmitch@mit.edu","username":"klmitch"},"change_message_id":"7eab7ed14a0639d4a5c40213976eef9f2904b0b8","unresolved":false,"context_lines":[{"line_number":323,"context_line":"            disk_type, sep, cache_mode \u003d mode_str.partition(\u0027\u003d\u0027)"},{"line_number":324,"context_line":"            if cache_mode not in self.valid_cachemodes:"},{"line_number":325,"context_line":"                LOG.warn("},{"line_number":326,"context_line":"                         _(\"Invalid cachemode %(cache_mode)s specified \""},{"line_number":327,"context_line":"                           \"for disk type %(disk_type)s.\") % locals()"},{"line_number":328,"context_line":"                        )"},{"line_number":329,"context_line":"                continue"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAAM3%2F%2FHUY%3D","line":326,"updated":"2013-02-06 19:13:19.000000000","message":"This seems like a rather awkward line break to me.  I would rather see this formatted as:\n\n    LOG.warn(_(\"Invalid cachemode %(cache_mode)s specified \"\n               \"for disk type %(disk_type)s.\") % locals())\n\n(femtonit)","commit_id":"8862d29743fb0ccd89c1e2f43b18f87d74a4ff2e"},{"author":{"_account_id":1882,"name":"dave-mcnally","email":"dave.mcnally@hpe.com","username":"dave-mcnally"},"change_message_id":"6d7ea65dd7909d15b0a901b3c5e9134cd09fa109","unresolved":false,"context_lines":[{"line_number":323,"context_line":"            disk_type, sep, cache_mode \u003d mode_str.partition(\u0027\u003d\u0027)"},{"line_number":324,"context_line":"            if cache_mode not in self.valid_cachemodes:"},{"line_number":325,"context_line":"                LOG.warn("},{"line_number":326,"context_line":"                         _(\"Invalid cachemode %(cache_mode)s specified \""},{"line_number":327,"context_line":"                           \"for disk type %(disk_type)s.\") % locals()"},{"line_number":328,"context_line":"                        )"},{"line_number":329,"context_line":"                continue"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAAM3%2F%2FFoo%3D","line":326,"in_reply_to":"AAAAM3%2F%2FHUY%3D","updated":"2013-02-07 14:33:47.000000000","message":"Done","commit_id":"8862d29743fb0ccd89c1e2f43b18f87d74a4ff2e"}]}
