)]}'
{"networking_ovn/db/hash_ring.py":[{"author":{"_account_id":8655,"name":"Jakub Libosvar","email":"libosvar@redhat.com","username":"jlibosva"},"change_message_id":"0b779d73de84eddc9535d8ef099fdf382a53251d","unresolved":false,"context_lines":[{"line_number":45,"context_line":"            models.OVNHashRing.group_name \u003d\u003d group_name).delete()"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"def _touch(hostname\u003dNone, node_uuid\u003dNone, group_name\u003dNone):"},{"line_number":49,"context_line":"    filter_args \u003d {}"},{"line_number":50,"context_line":"    if hostname:"},{"line_number":51,"context_line":"        filter_args[\u0027hostname\u0027] \u003d hostname"},{"line_number":52,"context_line":"    if node_uuid:"},{"line_number":53,"context_line":"        filter_args[\u0027node_uuid\u0027] \u003d node_uuid"},{"line_number":54,"context_line":"    if group_name:"},{"line_number":55,"context_line":"        filter_args[\u0027group_name\u0027] \u003d group_name"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"    session \u003d db_api.get_writer_session()"},{"line_number":58,"context_line":"    with session.begin():"}],"source_content_type":"text/x-python","patch_set":3,"id":"7faddb67_7b7fa0aa","line":55,"range":{"start_line":48,"start_character":11,"end_line":55,"end_character":46},"updated":"2019-07-17 13:39:06.000000000","message":"Just an idea: if we have the function defined like:\n\n def _touch(**filter_args)\n\nthen we will be more flexible by adding more columns we want to use for filtering without a need to change this function.","commit_id":"429d555e7b2af12ea1ce897237cc3f35d4470427"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"173c4c9b30dd2b8da1da8d8934273243bb184904","unresolved":false,"context_lines":[{"line_number":45,"context_line":"            models.OVNHashRing.group_name \u003d\u003d group_name).delete()"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"def _touch(hostname\u003dNone, node_uuid\u003dNone, group_name\u003dNone):"},{"line_number":49,"context_line":"    filter_args \u003d {}"},{"line_number":50,"context_line":"    if hostname:"},{"line_number":51,"context_line":"        filter_args[\u0027hostname\u0027] \u003d hostname"},{"line_number":52,"context_line":"    if node_uuid:"},{"line_number":53,"context_line":"        filter_args[\u0027node_uuid\u0027] \u003d node_uuid"},{"line_number":54,"context_line":"    if group_name:"},{"line_number":55,"context_line":"        filter_args[\u0027group_name\u0027] \u003d group_name"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"    session \u003d db_api.get_writer_session()"},{"line_number":58,"context_line":"    with session.begin():"}],"source_content_type":"text/x-python","patch_set":3,"id":"7faddb67_7efc6e3d","line":55,"range":{"start_line":48,"start_character":11,"end_line":55,"end_character":46},"in_reply_to":"7faddb67_7b7fa0aa","updated":"2019-07-17 14:07:14.000000000","message":"Good point, let\u0027s do it!","commit_id":"429d555e7b2af12ea1ce897237cc3f35d4470427"}],"networking_ovn/db/models.py":[{"author":{"_account_id":24791,"name":"Maciej Jozefczyk","email":"jeicam.pl@gmail.com","username":"maciej.jozefczyk"},"change_message_id":"387ded23f7eff5adcf8e4b7bb362ffba466ba20a","unresolved":false,"context_lines":[{"line_number":42,"context_line":""},{"line_number":43,"context_line":"class OVNHashRing(model_base.BASEV2):"},{"line_number":44,"context_line":"    __tablename__ \u003d \u0027ovn_hash_ring\u0027"},{"line_number":45,"context_line":"    node_uuid \u003d sa.Column(sa.String(36), nullable\u003dFalse, primary_key\u003dTrue)"},{"line_number":46,"context_line":"    hostname \u003d sa.Column(sa.String(256), nullable\u003dFalse)"},{"line_number":47,"context_line":"    group_name \u003d sa.Column(sa.String(256), nullable\u003dFalse)"},{"line_number":48,"context_line":"    created_at \u003d sa.Column(sa.DateTime(), default\u003dsa.func.now(),"}],"source_content_type":"text/x-python","patch_set":1,"id":"7faddb67_e7bca3dd","line":45,"range":{"start_line":45,"start_character":3,"end_line":45,"end_character":74},"updated":"2019-07-11 13:58:42.000000000","message":"This could potentially block node to be in two groups (primary_key)? Maybe we can create a key tuple (node_uuid, group_name)?","commit_id":"b1f2e11a56f0002d4bcf3afa61042582cdcc8ed3"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"ec11970ca1289ce272302836410275384411fa86","unresolved":false,"context_lines":[{"line_number":42,"context_line":""},{"line_number":43,"context_line":"class OVNHashRing(model_base.BASEV2):"},{"line_number":44,"context_line":"    __tablename__ \u003d \u0027ovn_hash_ring\u0027"},{"line_number":45,"context_line":"    node_uuid \u003d sa.Column(sa.String(36), nullable\u003dFalse, primary_key\u003dTrue)"},{"line_number":46,"context_line":"    hostname \u003d sa.Column(sa.String(256), nullable\u003dFalse)"},{"line_number":47,"context_line":"    group_name \u003d sa.Column(sa.String(256), nullable\u003dFalse)"},{"line_number":48,"context_line":"    created_at \u003d sa.Column(sa.DateTime(), default\u003dsa.func.now(),"}],"source_content_type":"text/x-python","patch_set":1,"id":"7faddb67_67cc336a","line":45,"range":{"start_line":45,"start_character":3,"end_line":45,"end_character":74},"in_reply_to":"7faddb67_e7bca3dd","updated":"2019-07-11 14:03:28.000000000","message":"Good point. I don\u0027t have any use case in mind but making it a composite primary key should be minimal effort. I will work on it!","commit_id":"b1f2e11a56f0002d4bcf3afa61042582cdcc8ed3"}],"networking_ovn/ovsdb/ovsdb_monitor.py":[{"author":{"_account_id":8655,"name":"Jakub Libosvar","email":"libosvar@redhat.com","username":"jlibosva"},"change_message_id":"0b779d73de84eddc9535d8ef099fdf382a53251d","unresolved":false,"context_lines":[{"line_number":352,"context_line":"        self.driver \u003d driver"},{"line_number":353,"context_line":"        self.notify_handler \u003d OvnDbNotifyHandler(driver)"},{"line_number":354,"context_line":"        self._node_uuid \u003d self.driver.node_uuid"},{"line_number":355,"context_line":"        self._hash_ring_group \u003d self.driver.hash_ring_group"},{"line_number":356,"context_line":"        self._hash_ring \u003d hash_ring_manager.HashRingManager("},{"line_number":357,"context_line":"            self._hash_ring_group)"},{"line_number":358,"context_line":"        self._last_touch \u003d None"}],"source_content_type":"text/x-python","patch_set":3,"id":"7faddb67_7b580055","line":355,"range":{"start_line":355,"start_character":8,"end_line":355,"end_character":29},"updated":"2019-07-17 13:39:06.000000000","message":"nit: is it used anywhere as an instance attribute?","commit_id":"429d555e7b2af12ea1ce897237cc3f35d4470427"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"173c4c9b30dd2b8da1da8d8934273243bb184904","unresolved":false,"context_lines":[{"line_number":352,"context_line":"        self.driver \u003d driver"},{"line_number":353,"context_line":"        self.notify_handler \u003d OvnDbNotifyHandler(driver)"},{"line_number":354,"context_line":"        self._node_uuid \u003d self.driver.node_uuid"},{"line_number":355,"context_line":"        self._hash_ring_group \u003d self.driver.hash_ring_group"},{"line_number":356,"context_line":"        self._hash_ring \u003d hash_ring_manager.HashRingManager("},{"line_number":357,"context_line":"            self._hash_ring_group)"},{"line_number":358,"context_line":"        self._last_touch \u003d None"}],"source_content_type":"text/x-python","patch_set":3,"id":"7faddb67_deafa227","line":355,"range":{"start_line":355,"start_character":8,"end_line":355,"end_character":29},"in_reply_to":"7faddb67_7b580055","updated":"2019-07-17 14:07:14.000000000","message":"Good eyes! Yeah I don\u0027t think it\u0027s used anywhere other than the L357","commit_id":"429d555e7b2af12ea1ce897237cc3f35d4470427"}]}
