)]}'
{"quantum/plugins/cisco/db/api.py":[{"author":{"_account_id":261,"name":"Salvatore Orlando","email":"salv.orlando@gmail.com","username":"salvatore-orlando"},"unresolved":false,"context_lines":[{"line_number":103,"context_line":"                all())"},{"line_number":104,"context_line":"    if networks:"},{"line_number":105,"context_line":"        return networks"},{"line_number":106,"context_line":"    else:"},{"line_number":107,"context_line":"        raise q_exc.NetworkNotFound(net_name\u003dnet_name)"},{"line_number":108,"context_line":""},{"line_number":109,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAOn%2F%2FraM%3D","line":106,"updated":"2013-04-29 14:41:48.000000000","message":"The else statement is not necessary","commit_id":"287f08ea4ff11959c11eabeae7730de1764fa66a"},{"author":{"_account_id":6849,"name":"Roman Podoliaka","email":"roman.podoliaka@gmail.com","username":"rpodolyaka"},"change_message_id":"06a63eb33c0e2f41cb10322899c94faf74373c22","unresolved":false,"context_lines":[{"line_number":103,"context_line":"                all())"},{"line_number":104,"context_line":"    if networks:"},{"line_number":105,"context_line":"        return networks"},{"line_number":106,"context_line":"    else:"},{"line_number":107,"context_line":"        raise q_exc.NetworkNotFound(net_name\u003dnet_name)"},{"line_number":108,"context_line":""},{"line_number":109,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAOn%2F%2FrUc%3D","line":106,"in_reply_to":"AAAAOn%2F%2FraM%3D","updated":"2013-04-29 15:51:10.000000000","message":"Done","commit_id":"287f08ea4ff11959c11eabeae7730de1764fa66a"}],"quantum/plugins/cisco/db/l2network_db.py":[{"author":{"_account_id":261,"name":"Salvatore Orlando","email":"salv.orlando@gmail.com","username":"salvatore-orlando"},"unresolved":false,"context_lines":[{"line_number":135,"context_line":"    \"\"\"Lists all the vlan to network associations.\"\"\""},{"line_number":136,"context_line":"    LOG.debug(_(\"get_all_vlan_bindings() called\"))"},{"line_number":137,"context_line":"    session \u003d db.get_session()"},{"line_number":138,"context_line":"    bindings \u003d session.query(l2network_models.VlanBinding).all()"},{"line_number":139,"context_line":"    return bindings"},{"line_number":140,"context_line":""},{"line_number":141,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAOn%2F%2FrZ4%3D","line":138,"updated":"2013-04-29 14:41:48.000000000","message":"perhaps you can just return at line 138","commit_id":"287f08ea4ff11959c11eabeae7730de1764fa66a"},{"author":{"_account_id":6849,"name":"Roman Podoliaka","email":"roman.podoliaka@gmail.com","username":"rpodolyaka"},"change_message_id":"06a63eb33c0e2f41cb10322899c94faf74373c22","unresolved":false,"context_lines":[{"line_number":135,"context_line":"    \"\"\"Lists all the vlan to network associations.\"\"\""},{"line_number":136,"context_line":"    LOG.debug(_(\"get_all_vlan_bindings() called\"))"},{"line_number":137,"context_line":"    session \u003d db.get_session()"},{"line_number":138,"context_line":"    bindings \u003d session.query(l2network_models.VlanBinding).all()"},{"line_number":139,"context_line":"    return bindings"},{"line_number":140,"context_line":""},{"line_number":141,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAOn%2F%2FrUE%3D","line":138,"in_reply_to":"AAAAOn%2F%2FrZ4%3D","updated":"2013-04-29 15:51:10.000000000","message":"Done","commit_id":"287f08ea4ff11959c11eabeae7730de1764fa66a"},{"author":{"_account_id":261,"name":"Salvatore Orlando","email":"salv.orlando@gmail.com","username":"salvatore-orlando"},"unresolved":false,"context_lines":[{"line_number":205,"context_line":"    session \u003d db.get_session()"},{"line_number":206,"context_line":"    qoss \u003d (session.query(l2network_models.QoS)."},{"line_number":207,"context_line":"            filter_by(tenant_id\u003dtenant_id).all())"},{"line_number":208,"context_line":"    return qoss"},{"line_number":209,"context_line":""},{"line_number":210,"context_line":""},{"line_number":211,"context_line":"def get_qos(tenant_id, qos_id):"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAOn%2F%2FrZ0%3D","line":208,"updated":"2013-04-29 14:41:48.000000000","message":"same as above","commit_id":"287f08ea4ff11959c11eabeae7730de1764fa66a"},{"author":{"_account_id":6849,"name":"Roman Podoliaka","email":"roman.podoliaka@gmail.com","username":"rpodolyaka"},"change_message_id":"06a63eb33c0e2f41cb10322899c94faf74373c22","unresolved":false,"context_lines":[{"line_number":205,"context_line":"    session \u003d db.get_session()"},{"line_number":206,"context_line":"    qoss \u003d (session.query(l2network_models.QoS)."},{"line_number":207,"context_line":"            filter_by(tenant_id\u003dtenant_id).all())"},{"line_number":208,"context_line":"    return qoss"},{"line_number":209,"context_line":""},{"line_number":210,"context_line":""},{"line_number":211,"context_line":"def get_qos(tenant_id, qos_id):"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAOn%2F%2FrUA%3D","line":208,"in_reply_to":"AAAAOn%2F%2FrZ0%3D","updated":"2013-04-29 15:51:10.000000000","message":"Done","commit_id":"287f08ea4ff11959c11eabeae7730de1764fa66a"},{"author":{"_account_id":261,"name":"Salvatore Orlando","email":"salv.orlando@gmail.com","username":"salvatore-orlando"},"unresolved":false,"context_lines":[{"line_number":275,"context_line":"    session \u003d db.get_session()"},{"line_number":276,"context_line":"    creds \u003d (session.query(l2network_models.Credential)."},{"line_number":277,"context_line":"             filter_by(tenant_id\u003dtenant_id).all())"},{"line_number":278,"context_line":"    return creds"},{"line_number":279,"context_line":""},{"line_number":280,"context_line":""},{"line_number":281,"context_line":"def get_credential(tenant_id, credential_id):"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAOn%2F%2FrZw%3D","line":278,"updated":"2013-04-29 14:41:48.000000000","message":"same as above","commit_id":"287f08ea4ff11959c11eabeae7730de1764fa66a"},{"author":{"_account_id":6849,"name":"Roman Podoliaka","email":"roman.podoliaka@gmail.com","username":"rpodolyaka"},"change_message_id":"06a63eb33c0e2f41cb10322899c94faf74373c22","unresolved":false,"context_lines":[{"line_number":275,"context_line":"    session \u003d db.get_session()"},{"line_number":276,"context_line":"    creds \u003d (session.query(l2network_models.Credential)."},{"line_number":277,"context_line":"             filter_by(tenant_id\u003dtenant_id).all())"},{"line_number":278,"context_line":"    return creds"},{"line_number":279,"context_line":""},{"line_number":280,"context_line":""},{"line_number":281,"context_line":"def get_credential(tenant_id, credential_id):"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAOn%2F%2FrT8%3D","line":278,"in_reply_to":"AAAAOn%2F%2FrZw%3D","updated":"2013-04-29 15:51:10.000000000","message":"Done","commit_id":"287f08ea4ff11959c11eabeae7730de1764fa66a"}],"quantum/plugins/cisco/db/network_db_v2.py":[{"author":{"_account_id":261,"name":"Salvatore Orlando","email":"salv.orlando@gmail.com","username":"salvatore-orlando"},"unresolved":false,"context_lines":[{"line_number":55,"context_line":"    LOG.debug(_(\"get_all_vlanids() called\"))"},{"line_number":56,"context_line":"    session \u003d db.get_session()"},{"line_number":57,"context_line":"    vlanids \u003d session.query(network_models_v2.VlanID).all()"},{"line_number":58,"context_line":"    return vlanids"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"def is_vlanid_used(vlan_id):"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAOn%2F%2FrZs%3D","line":58,"updated":"2013-04-29 14:41:48.000000000","message":"consider returning at line 57","commit_id":"287f08ea4ff11959c11eabeae7730de1764fa66a"},{"author":{"_account_id":6849,"name":"Roman Podoliaka","email":"roman.podoliaka@gmail.com","username":"rpodolyaka"},"change_message_id":"06a63eb33c0e2f41cb10322899c94faf74373c22","unresolved":false,"context_lines":[{"line_number":55,"context_line":"    LOG.debug(_(\"get_all_vlanids() called\"))"},{"line_number":56,"context_line":"    session \u003d db.get_session()"},{"line_number":57,"context_line":"    vlanids \u003d session.query(network_models_v2.VlanID).all()"},{"line_number":58,"context_line":"    return vlanids"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"def is_vlanid_used(vlan_id):"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAOn%2F%2FrT0%3D","line":58,"in_reply_to":"AAAAOn%2F%2FrZs%3D","updated":"2013-04-29 15:51:10.000000000","message":"Done","commit_id":"287f08ea4ff11959c11eabeae7730de1764fa66a"},{"author":{"_account_id":261,"name":"Salvatore Orlando","email":"salv.orlando@gmail.com","username":"salvatore-orlando"},"unresolved":false,"context_lines":[{"line_number":125,"context_line":"    session \u003d db.get_session()"},{"line_number":126,"context_line":"    vlanids \u003d (session.query(network_models_v2.VlanID)."},{"line_number":127,"context_line":"               filter_by(vlan_used\u003dTrue).all())"},{"line_number":128,"context_line":"    return vlanids"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":""},{"line_number":131,"context_line":"def get_all_vlan_bindings():"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAOn%2F%2FrZo%3D","line":128,"updated":"2013-04-29 14:41:48.000000000","message":"same as above","commit_id":"287f08ea4ff11959c11eabeae7730de1764fa66a"},{"author":{"_account_id":6849,"name":"Roman Podoliaka","email":"roman.podoliaka@gmail.com","username":"rpodolyaka"},"change_message_id":"06a63eb33c0e2f41cb10322899c94faf74373c22","unresolved":false,"context_lines":[{"line_number":125,"context_line":"    session \u003d db.get_session()"},{"line_number":126,"context_line":"    vlanids \u003d (session.query(network_models_v2.VlanID)."},{"line_number":127,"context_line":"               filter_by(vlan_used\u003dTrue).all())"},{"line_number":128,"context_line":"    return vlanids"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":""},{"line_number":131,"context_line":"def get_all_vlan_bindings():"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAOn%2F%2FrTw%3D","line":128,"in_reply_to":"AAAAOn%2F%2FrZo%3D","updated":"2013-04-29 15:51:10.000000000","message":"Done","commit_id":"287f08ea4ff11959c11eabeae7730de1764fa66a"},{"author":{"_account_id":261,"name":"Salvatore Orlando","email":"salv.orlando@gmail.com","username":"salvatore-orlando"},"unresolved":false,"context_lines":[{"line_number":133,"context_line":"    LOG.debug(_(\"get_all_vlan_bindings() called\"))"},{"line_number":134,"context_line":"    session \u003d db.get_session()"},{"line_number":135,"context_line":"    bindings \u003d session.query(network_models_v2.Vlan_Binding).all()"},{"line_number":136,"context_line":"    return bindings"},{"line_number":137,"context_line":""},{"line_number":138,"context_line":""},{"line_number":139,"context_line":"def get_vlan_binding(netid):"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAOn%2F%2FrZk%3D","line":136,"updated":"2013-04-29 14:41:48.000000000","message":"same as above","commit_id":"287f08ea4ff11959c11eabeae7730de1764fa66a"},{"author":{"_account_id":6849,"name":"Roman Podoliaka","email":"roman.podoliaka@gmail.com","username":"rpodolyaka"},"change_message_id":"06a63eb33c0e2f41cb10322899c94faf74373c22","unresolved":false,"context_lines":[{"line_number":133,"context_line":"    LOG.debug(_(\"get_all_vlan_bindings() called\"))"},{"line_number":134,"context_line":"    session \u003d db.get_session()"},{"line_number":135,"context_line":"    bindings \u003d session.query(network_models_v2.Vlan_Binding).all()"},{"line_number":136,"context_line":"    return bindings"},{"line_number":137,"context_line":""},{"line_number":138,"context_line":""},{"line_number":139,"context_line":"def get_vlan_binding(netid):"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAOn%2F%2FrTs%3D","line":136,"in_reply_to":"AAAAOn%2F%2FrZk%3D","updated":"2013-04-29 15:51:10.000000000","message":"Done","commit_id":"287f08ea4ff11959c11eabeae7730de1764fa66a"},{"author":{"_account_id":261,"name":"Salvatore Orlando","email":"salv.orlando@gmail.com","username":"salvatore-orlando"},"unresolved":false,"context_lines":[{"line_number":202,"context_line":"    session \u003d db.get_session()"},{"line_number":203,"context_line":"    qoss \u003d (session.query(network_models_v2.QoS)."},{"line_number":204,"context_line":"            filter_by(tenant_id\u003dtenant_id).all())"},{"line_number":205,"context_line":"    return qoss"},{"line_number":206,"context_line":""},{"line_number":207,"context_line":""},{"line_number":208,"context_line":"def get_qos(tenant_id, qos_id):"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAOn%2F%2FrZg%3D","line":205,"updated":"2013-04-29 14:41:48.000000000","message":"same as above","commit_id":"287f08ea4ff11959c11eabeae7730de1764fa66a"},{"author":{"_account_id":6849,"name":"Roman Podoliaka","email":"roman.podoliaka@gmail.com","username":"rpodolyaka"},"change_message_id":"06a63eb33c0e2f41cb10322899c94faf74373c22","unresolved":false,"context_lines":[{"line_number":202,"context_line":"    session \u003d db.get_session()"},{"line_number":203,"context_line":"    qoss \u003d (session.query(network_models_v2.QoS)."},{"line_number":204,"context_line":"            filter_by(tenant_id\u003dtenant_id).all())"},{"line_number":205,"context_line":"    return qoss"},{"line_number":206,"context_line":""},{"line_number":207,"context_line":""},{"line_number":208,"context_line":"def get_qos(tenant_id, qos_id):"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAOn%2F%2FrTo%3D","line":205,"in_reply_to":"AAAAOn%2F%2FrZg%3D","updated":"2013-04-29 15:51:10.000000000","message":"Done","commit_id":"287f08ea4ff11959c11eabeae7730de1764fa66a"},{"author":{"_account_id":261,"name":"Salvatore Orlando","email":"salv.orlando@gmail.com","username":"salvatore-orlando"},"unresolved":false,"context_lines":[{"line_number":272,"context_line":"    session \u003d db.get_session()"},{"line_number":273,"context_line":"    creds \u003d (session.query(network_models_v2.Credential)."},{"line_number":274,"context_line":"             filter_by(tenant_id\u003dtenant_id).all())"},{"line_number":275,"context_line":"    return creds"},{"line_number":276,"context_line":""},{"line_number":277,"context_line":""},{"line_number":278,"context_line":"def get_credential(tenant_id, credential_id):"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAOn%2F%2FrZc%3D","line":275,"updated":"2013-04-29 14:41:48.000000000","message":"same as above","commit_id":"287f08ea4ff11959c11eabeae7730de1764fa66a"},{"author":{"_account_id":6849,"name":"Roman Podoliaka","email":"roman.podoliaka@gmail.com","username":"rpodolyaka"},"change_message_id":"06a63eb33c0e2f41cb10322899c94faf74373c22","unresolved":false,"context_lines":[{"line_number":272,"context_line":"    session \u003d db.get_session()"},{"line_number":273,"context_line":"    creds \u003d (session.query(network_models_v2.Credential)."},{"line_number":274,"context_line":"             filter_by(tenant_id\u003dtenant_id).all())"},{"line_number":275,"context_line":"    return creds"},{"line_number":276,"context_line":""},{"line_number":277,"context_line":""},{"line_number":278,"context_line":"def get_credential(tenant_id, credential_id):"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAOn%2F%2FrTk%3D","line":275,"in_reply_to":"AAAAOn%2F%2FrZc%3D","updated":"2013-04-29 15:51:10.000000000","message":"Done","commit_id":"287f08ea4ff11959c11eabeae7730de1764fa66a"},{"author":{"_account_id":261,"name":"Salvatore Orlando","email":"salv.orlando@gmail.com","username":"salvatore-orlando"},"unresolved":false,"context_lines":[{"line_number":356,"context_line":"    session \u003d db.get_session()"},{"line_number":357,"context_line":"    bindings \u003d (session.query(ovs_models_v2.VlanAllocation)."},{"line_number":358,"context_line":"                filter_by(allocated\u003dTrue)."},{"line_number":359,"context_line":"                all())"},{"line_number":360,"context_line":"    return [binding.vlan_id for binding in bindings]"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAOn%2F%2FrZQ%3D","line":359,"updated":"2013-04-29 14:41:48.000000000","message":"perhaps select only vlan_id from the query - otherwise it\u0027s fine as you\u0027re doing now","commit_id":"287f08ea4ff11959c11eabeae7730de1764fa66a"},{"author":{"_account_id":6849,"name":"Roman Podoliaka","email":"roman.podoliaka@gmail.com","username":"rpodolyaka"},"change_message_id":"06a63eb33c0e2f41cb10322899c94faf74373c22","unresolved":false,"context_lines":[{"line_number":356,"context_line":"    session \u003d db.get_session()"},{"line_number":357,"context_line":"    bindings \u003d (session.query(ovs_models_v2.VlanAllocation)."},{"line_number":358,"context_line":"                filter_by(allocated\u003dTrue)."},{"line_number":359,"context_line":"                all())"},{"line_number":360,"context_line":"    return [binding.vlan_id for binding in bindings]"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAOn%2F%2FrTc%3D","line":359,"in_reply_to":"AAAAOn%2F%2FrZQ%3D","updated":"2013-04-29 15:51:10.000000000","message":"Done","commit_id":"287f08ea4ff11959c11eabeae7730de1764fa66a"}],"quantum/plugins/cisco/db/nexus_db_v2.py":[{"author":{"_account_id":261,"name":"Salvatore Orlando","email":"salv.orlando@gmail.com","username":"salvatore-orlando"},"unresolved":false,"context_lines":[{"line_number":49,"context_line":""},{"line_number":50,"context_line":"    #TODO(rpodolyaka): fix raising of NexusPortBindingNotFound exception. It"},{"line_number":51,"context_line":"    #                  hasn\u0027t been raised before due to incorrect usage of"},{"line_number":52,"context_line":"    #                  all(). The exception message doesn\u0027t contain %(vlan_id)s"},{"line_number":53,"context_line":"    return binding"},{"line_number":54,"context_line":""},{"line_number":55,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAOn%2F%2FrYw%3D","line":52,"updated":"2013-04-29 14:41:48.000000000","message":"This (and all the similar one below) should be FIXME instead of TODO (and a bug report would be welcome)","commit_id":"287f08ea4ff11959c11eabeae7730de1764fa66a"},{"author":{"_account_id":6849,"name":"Roman Podoliaka","email":"roman.podoliaka@gmail.com","username":"rpodolyaka"},"change_message_id":"06a63eb33c0e2f41cb10322899c94faf74373c22","unresolved":false,"context_lines":[{"line_number":49,"context_line":""},{"line_number":50,"context_line":"    #TODO(rpodolyaka): fix raising of NexusPortBindingNotFound exception. It"},{"line_number":51,"context_line":"    #                  hasn\u0027t been raised before due to incorrect usage of"},{"line_number":52,"context_line":"    #                  all(). The exception message doesn\u0027t contain %(vlan_id)s"},{"line_number":53,"context_line":"    return binding"},{"line_number":54,"context_line":""},{"line_number":55,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAOn%2F%2FrTU%3D","line":52,"in_reply_to":"AAAAOn%2F%2FrYw%3D","updated":"2013-04-29 15:51:10.000000000","message":"Done","commit_id":"287f08ea4ff11959c11eabeae7730de1764fa66a"}],"quantum/plugins/openvswitch/ovs_db_v2.py":[{"author":{"_account_id":385,"name":"Jason Kölker","email":"jason@koelker.net","username":"jason-koelker"},"change_message_id":"097382648dfa069a6f97b265c71cdbfb78ae9f8d","unresolved":false,"context_lines":[{"line_number":362,"context_line":""},{"line_number":363,"context_line":"def _generate_tunnel_id(session):"},{"line_number":364,"context_line":"    tunnels \u003d session.query(ovs_models_v2.TunnelEndpoint.id)"},{"line_number":365,"context_line":"    tunnel_ids \u003d [tunnel.id for tunnel in tunnels]"},{"line_number":366,"context_line":""},{"line_number":367,"context_line":"    if tunnel_ids:"},{"line_number":368,"context_line":"        id \u003d max(tunnel_ids)"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAOn%2F%2Fryo%3D","line":365,"updated":"2013-04-29 08:57:46.000000000","message":"Totes unrelated to this cleanup, but we could use sqlalchemy.functions.max here to reduce the post processing on the query return.","commit_id":"287f08ea4ff11959c11eabeae7730de1764fa66a"},{"author":{"_account_id":6849,"name":"Roman Podoliaka","email":"roman.podoliaka@gmail.com","username":"rpodolyaka"},"change_message_id":"06a63eb33c0e2f41cb10322899c94faf74373c22","unresolved":false,"context_lines":[{"line_number":362,"context_line":""},{"line_number":363,"context_line":"def _generate_tunnel_id(session):"},{"line_number":364,"context_line":"    tunnels \u003d session.query(ovs_models_v2.TunnelEndpoint.id)"},{"line_number":365,"context_line":"    tunnel_ids \u003d [tunnel.id for tunnel in tunnels]"},{"line_number":366,"context_line":""},{"line_number":367,"context_line":"    if tunnel_ids:"},{"line_number":368,"context_line":"        id \u003d max(tunnel_ids)"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAOn%2F%2FrUw%3D","line":365,"in_reply_to":"AAAAOn%2F%2FrYk%3D","updated":"2013-04-29 15:51:10.000000000","message":"You are right, guys, but please take a look at https://bugs.launchpad.net/quantum/+bug/1174315 first","commit_id":"287f08ea4ff11959c11eabeae7730de1764fa66a"},{"author":{"_account_id":261,"name":"Salvatore Orlando","email":"salv.orlando@gmail.com","username":"salvatore-orlando"},"unresolved":false,"context_lines":[{"line_number":362,"context_line":""},{"line_number":363,"context_line":"def _generate_tunnel_id(session):"},{"line_number":364,"context_line":"    tunnels \u003d session.query(ovs_models_v2.TunnelEndpoint.id)"},{"line_number":365,"context_line":"    tunnel_ids \u003d [tunnel.id for tunnel in tunnels]"},{"line_number":366,"context_line":""},{"line_number":367,"context_line":"    if tunnel_ids:"},{"line_number":368,"context_line":"        id \u003d max(tunnel_ids)"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAOn%2F%2FrYk%3D","line":365,"in_reply_to":"AAAAOn%2F%2Fryo%3D","updated":"2013-04-29 14:41:48.000000000","message":"Sounds like I\u0027ve found something to do after dinner","commit_id":"287f08ea4ff11959c11eabeae7730de1764fa66a"},{"author":{"_account_id":2592,"name":"Mark McClain","email":"mark@mcclain.xyz","username":"markmcclain"},"unresolved":false,"context_lines":[{"line_number":362,"context_line":""},{"line_number":363,"context_line":"def _generate_tunnel_id(session):"},{"line_number":364,"context_line":"    tunnels \u003d session.query(ovs_models_v2.TunnelEndpoint.id)"},{"line_number":365,"context_line":"    tunnel_ids \u003d [tunnel.id for tunnel in tunnels]"},{"line_number":366,"context_line":""},{"line_number":367,"context_line":"    if tunnel_ids:"},{"line_number":368,"context_line":"        id \u003d max(tunnel_ids)"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAOn%2F%2FpTE%3D","line":365,"updated":"2013-04-30 19:05:15.000000000","message":"This should not be done within python code.  Max should be run within the database.\n\nfrom sqlalchemy import func \n\nsession.query(func.max(ovs_models_v2.TunnelEndpoint.id))","commit_id":"28ce867c5e72d0ed5fe869b0d08ef159d0b8ba1f"},{"author":{"_account_id":2592,"name":"Mark McClain","email":"mark@mcclain.xyz","username":"markmcclain"},"unresolved":false,"context_lines":[{"line_number":362,"context_line":""},{"line_number":363,"context_line":"def _generate_tunnel_id(session):"},{"line_number":364,"context_line":"    tunnels \u003d session.query(ovs_models_v2.TunnelEndpoint.id)"},{"line_number":365,"context_line":"    tunnel_ids \u003d [tunnel.id for tunnel in tunnels]"},{"line_number":366,"context_line":""},{"line_number":367,"context_line":"    if tunnel_ids:"},{"line_number":368,"context_line":"        id \u003d max(tunnel_ids)"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAOn%2F%2Fnfg%3D","line":365,"in_reply_to":"AAAAOn%2F%2Fn0Q%3D","updated":"2013-05-02 19:00:55.000000000","message":"sounds good","commit_id":"28ce867c5e72d0ed5fe869b0d08ef159d0b8ba1f"},{"author":{"_account_id":6849,"name":"Roman Podoliaka","email":"roman.podoliaka@gmail.com","username":"rpodolyaka"},"change_message_id":"06a63eb33c0e2f41cb10322899c94faf74373c22","unresolved":false,"context_lines":[{"line_number":362,"context_line":""},{"line_number":363,"context_line":"def _generate_tunnel_id(session):"},{"line_number":364,"context_line":"    tunnels \u003d session.query(ovs_models_v2.TunnelEndpoint.id)"},{"line_number":365,"context_line":"    tunnel_ids \u003d [tunnel.id for tunnel in tunnels]"},{"line_number":366,"context_line":""},{"line_number":367,"context_line":"    if tunnel_ids:"},{"line_number":368,"context_line":"        id \u003d max(tunnel_ids)"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAOn%2F%2Fn0Q%3D","line":365,"in_reply_to":"AAAAOn%2F%2FpTE%3D","updated":"2013-05-01 15:56:49.000000000","message":"Salvatore\u0027s commit fixing this has already been merged into master. I\u0027ll rebase my change and upload a new version.","commit_id":"28ce867c5e72d0ed5fe869b0d08ef159d0b8ba1f"}]}
