)]}'
{"gnocchi/storage/ceph.py":[{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"ad9dd87d6f56255d271bad87516499d44287a384","unresolved":false,"context_lines":[{"line_number":90,"context_line":""},{"line_number":91,"context_line":"    def _store_metric_measures(self, metric, aggregation, data):"},{"line_number":92,"context_line":"        with self._get_ioctx() as ioctx:"},{"line_number":93,"context_line":"            name \u003d self._get_object_name(metric, aggregation)"},{"line_number":94,"context_line":"            ioctx.write_full(name, data)"},{"line_number":95,"context_line":""},{"line_number":96,"context_line":"    def delete_metric(self, metric):"}],"source_content_type":"text/x-python","patch_set":3,"id":"5a890539_0f5253de","line":93,"updated":"2014-12-05 14:48:03.000000000","message":"nitpick, this could be before the with.","commit_id":"ac05ab0ef0a2d7958a52bdf3f420af9260f2da09"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"7fb176ba94d2a77def72dde8626ee8164ca87d79","unresolved":false,"context_lines":[{"line_number":90,"context_line":""},{"line_number":91,"context_line":"    def _store_metric_measures(self, metric, aggregation, data):"},{"line_number":92,"context_line":"        with self._get_ioctx() as ioctx:"},{"line_number":93,"context_line":"            name \u003d self._get_object_name(metric, aggregation)"},{"line_number":94,"context_line":"            ioctx.write_full(name, data)"},{"line_number":95,"context_line":""},{"line_number":96,"context_line":"    def delete_metric(self, metric):"}],"source_content_type":"text/x-python","patch_set":3,"id":"5a890539_a44fa169","line":93,"in_reply_to":"5a890539_0f5253de","updated":"2014-12-05 16:02:17.000000000","message":"Done","commit_id":"ac05ab0ef0a2d7958a52bdf3f420af9260f2da09"},{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"63190ba2384bd6bf39b7f51406f6ceb0b6b479eb","unresolved":false,"context_lines":[{"line_number":25,"context_line":"from gnocchi import storage"},{"line_number":26,"context_line":"from gnocchi.storage import _carbonara"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"LOG \u003d log.getLogger(__name__)"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"# NOTE(sileht): rados module is not available on pypi"},{"line_number":31,"context_line":"rados \u003d importutils.try_import(\u0027rados\u0027)"}],"source_content_type":"text/x-python","patch_set":5,"id":"3a961159_98992b71","line":28,"updated":"2014-12-08 10:42:48.000000000","message":"You\u0027re actually not logging anything.","commit_id":"e386544b769e5c18c5fd180bc49bbfa960ff1ea3"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"e63b721c3b1184ac8eb834ffb87d294431b9e1ff","unresolved":false,"context_lines":[{"line_number":25,"context_line":"from gnocchi import storage"},{"line_number":26,"context_line":"from gnocchi.storage import _carbonara"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"LOG \u003d log.getLogger(__name__)"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"# NOTE(sileht): rados module is not available on pypi"},{"line_number":31,"context_line":"rados \u003d importutils.try_import(\u0027rados\u0027)"}],"source_content_type":"text/x-python","patch_set":5,"id":"3a961159_d4ed378d","line":28,"in_reply_to":"3a961159_98992b71","updated":"2014-12-08 14:38:45.000000000","message":"Done","commit_id":"e386544b769e5c18c5fd180bc49bbfa960ff1ea3"},{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"63190ba2384bd6bf39b7f51406f6ceb0b6b479eb","unresolved":false,"context_lines":[{"line_number":51,"context_line":"class CephStorage(_carbonara.CarbonaraBasedStorage):"},{"line_number":52,"context_line":"    def __init__(self, conf):"},{"line_number":53,"context_line":"        super(CephStorage, self).__init__(conf)"},{"line_number":54,"context_line":"        self.conf \u003d conf"},{"line_number":55,"context_line":"        self.pool \u003d conf.ceph_pool"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"    @contextlib.contextmanager"}],"source_content_type":"text/x-python","patch_set":5,"id":"3a961159_58b6e3dd","line":54,"updated":"2014-12-08 10:42:48.000000000","message":"You do this in __init__ in the next patch, you should think about removing it here or in the next patch.","commit_id":"e386544b769e5c18c5fd180bc49bbfa960ff1ea3"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"e63b721c3b1184ac8eb834ffb87d294431b9e1ff","unresolved":false,"context_lines":[{"line_number":51,"context_line":"class CephStorage(_carbonara.CarbonaraBasedStorage):"},{"line_number":52,"context_line":"    def __init__(self, conf):"},{"line_number":53,"context_line":"        super(CephStorage, self).__init__(conf)"},{"line_number":54,"context_line":"        self.conf \u003d conf"},{"line_number":55,"context_line":"        self.pool \u003d conf.ceph_pool"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"    @contextlib.contextmanager"}],"source_content_type":"text/x-python","patch_set":5,"id":"3a961159_f401533a","line":54,"in_reply_to":"3a961159_58b6e3dd","updated":"2014-12-08 14:38:45.000000000","message":"Done","commit_id":"e386544b769e5c18c5fd180bc49bbfa960ff1ea3"},{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"63190ba2384bd6bf39b7f51406f6ceb0b6b479eb","unresolved":false,"context_lines":[{"line_number":63,"context_line":"        r \u003d rados.Rados(conffile\u003dself.conf.ceph_conffile,"},{"line_number":64,"context_line":"                        rados_id\u003dself.conf.ceph_username,"},{"line_number":65,"context_line":"                        conf\u003doptions)"},{"line_number":66,"context_line":"        r.connect()"},{"line_number":67,"context_line":"        try:"},{"line_number":68,"context_line":"            ctx \u003d r.open_ioctx(self.pool)"},{"line_number":69,"context_line":"            try:"}],"source_content_type":"text/x-python","patch_set":5,"id":"3a961159_d8c9f35b","line":66,"updated":"2014-12-08 10:42:48.000000000","message":"I wonder, why don\u0027t you connect in __init__() ? It sounds slow to connect each time you want to do I/O.","commit_id":"e386544b769e5c18c5fd180bc49bbfa960ff1ea3"},{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"c45293ed92f2e6bde8e68ad91afa3bd0120a9d1b","unresolved":false,"context_lines":[{"line_number":63,"context_line":"        r \u003d rados.Rados(conffile\u003dself.conf.ceph_conffile,"},{"line_number":64,"context_line":"                        rados_id\u003dself.conf.ceph_username,"},{"line_number":65,"context_line":"                        conf\u003doptions)"},{"line_number":66,"context_line":"        r.connect()"},{"line_number":67,"context_line":"        try:"},{"line_number":68,"context_line":"            ctx \u003d r.open_ioctx(self.pool)"},{"line_number":69,"context_line":"            try:"}],"source_content_type":"text/x-python","patch_set":5,"id":"3a961159_deaab8d3","line":66,"in_reply_to":"3a961159_68ee6eee","updated":"2014-12-08 13:27:17.000000000","message":"Ok, feel free to add TODO with that here :)","commit_id":"e386544b769e5c18c5fd180bc49bbfa960ff1ea3"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"35536df032e89ddf5b6093f3bd4d740cedd4f358","unresolved":false,"context_lines":[{"line_number":63,"context_line":"        r \u003d rados.Rados(conffile\u003dself.conf.ceph_conffile,"},{"line_number":64,"context_line":"                        rados_id\u003dself.conf.ceph_username,"},{"line_number":65,"context_line":"                        conf\u003doptions)"},{"line_number":66,"context_line":"        r.connect()"},{"line_number":67,"context_line":"        try:"},{"line_number":68,"context_line":"            ctx \u003d r.open_ioctx(self.pool)"},{"line_number":69,"context_line":"            try:"}],"source_content_type":"text/x-python","patch_set":5,"id":"3a961159_68ee6eee","line":66,"in_reply_to":"3a961159_d8c9f35b","updated":"2014-12-08 12:27:47.000000000","message":"I have not yet understand how works the connection error handling of librados, I will improve that once I have understand what can be raised and what is the reconnection behavior.","commit_id":"e386544b769e5c18c5fd180bc49bbfa960ff1ea3"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"e63b721c3b1184ac8eb834ffb87d294431b9e1ff","unresolved":false,"context_lines":[{"line_number":63,"context_line":"        r \u003d rados.Rados(conffile\u003dself.conf.ceph_conffile,"},{"line_number":64,"context_line":"                        rados_id\u003dself.conf.ceph_username,"},{"line_number":65,"context_line":"                        conf\u003doptions)"},{"line_number":66,"context_line":"        r.connect()"},{"line_number":67,"context_line":"        try:"},{"line_number":68,"context_line":"            ctx \u003d r.open_ioctx(self.pool)"},{"line_number":69,"context_line":"            try:"}],"source_content_type":"text/x-python","patch_set":5,"id":"3a961159_949acf12","line":66,"in_reply_to":"3a961159_deaab8d3","updated":"2014-12-08 14:38:45.000000000","message":"Finally, it\u0027s safe to move it to __init__, done","commit_id":"e386544b769e5c18c5fd180bc49bbfa960ff1ea3"}],"gnocchi/tests/base.py":[{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"dc92e516f61b5a5b73ec45eb5fa9902494a2349d","unresolved":false,"context_lines":[{"line_number":89,"context_line":"        def __init__(self, kvs):"},{"line_number":90,"context_line":"            self.kvs \u003d kvs"},{"line_number":91,"context_line":""},{"line_number":92,"context_line":"        def connect(self):"},{"line_number":93,"context_line":"            pass"},{"line_number":94,"context_line":""},{"line_number":95,"context_line":"        def shutdown(self):"}],"source_content_type":"text/x-python","patch_set":4,"id":"5a890539_04923558","line":92,"updated":"2014-12-05 16:12:51.000000000","message":"@staticmethod\n\nnitpick though","commit_id":"9f8de6f4cea50b603b50d0b722013d814eadc343"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"28e21b32ad53d8f4c7e1de9fc9bbd1e96af80220","unresolved":false,"context_lines":[{"line_number":89,"context_line":"        def __init__(self, kvs):"},{"line_number":90,"context_line":"            self.kvs \u003d kvs"},{"line_number":91,"context_line":""},{"line_number":92,"context_line":"        def connect(self):"},{"line_number":93,"context_line":"            pass"},{"line_number":94,"context_line":""},{"line_number":95,"context_line":"        def shutdown(self):"}],"source_content_type":"text/x-python","patch_set":4,"id":"5a890539_b83ee289","line":92,"in_reply_to":"5a890539_04923558","updated":"2014-12-05 17:40:02.000000000","message":"Done","commit_id":"9f8de6f4cea50b603b50d0b722013d814eadc343"},{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"dc92e516f61b5a5b73ec45eb5fa9902494a2349d","unresolved":false,"context_lines":[{"line_number":92,"context_line":"        def connect(self):"},{"line_number":93,"context_line":"            pass"},{"line_number":94,"context_line":""},{"line_number":95,"context_line":"        def shutdown(self):"},{"line_number":96,"context_line":"            pass"},{"line_number":97,"context_line":""},{"line_number":98,"context_line":"        def open_ioctx(self, pool):"}],"source_content_type":"text/x-python","patch_set":4,"id":"5a890539_8485450c","line":95,"updated":"2014-12-05 16:12:51.000000000","message":"@staticmethod","commit_id":"9f8de6f4cea50b603b50d0b722013d814eadc343"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"28e21b32ad53d8f4c7e1de9fc9bbd1e96af80220","unresolved":false,"context_lines":[{"line_number":92,"context_line":"        def connect(self):"},{"line_number":93,"context_line":"            pass"},{"line_number":94,"context_line":""},{"line_number":95,"context_line":"        def shutdown(self):"},{"line_number":96,"context_line":"            pass"},{"line_number":97,"context_line":""},{"line_number":98,"context_line":"        def open_ioctx(self, pool):"}],"source_content_type":"text/x-python","patch_set":4,"id":"5a890539_983926a6","line":95,"in_reply_to":"5a890539_8485450c","updated":"2014-12-05 17:40:02.000000000","message":"Done","commit_id":"9f8de6f4cea50b603b50d0b722013d814eadc343"}]}
