)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"89ee7949f4083ade9320b723d237349349e6ef76","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"f135fcda_dba71794","updated":"2022-07-09 07:56:13.000000000","message":"Might be good to have some testing for this","commit_id":"794b8af662d44cbcf7d64351442a30e49eb21607"},{"author":{"_account_id":27339,"name":"Michal Arbet","email":"michal.arbet@ultimum.io","username":"michalarbet"},"change_message_id":"53f3fdc3d41b44355de30efd0969a91088dce63b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"e6b9f945_5081f022","updated":"2022-07-19 13:01:48.000000000","message":"Hi,\u0027\n\nCould you please comment/add +2 for this ? We are affecting this bug.\nFixed in our downstream repo, but i would be fine to be merged.","commit_id":"2f94fa353b698a9d3dfe82b09198172a7ad20601"},{"author":{"_account_id":27339,"name":"Michal Arbet","email":"michal.arbet@ultimum.io","username":"michalarbet"},"change_message_id":"5f52108e1f0fec3bb4d9a9bb952f1165796cff34","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"f5b2ab02_b2ec087e","updated":"2022-07-12 18:24:59.000000000","message":"If there is a need to provide new set of tests for this scenario, it should be proposed in another patch.\n\nFrom my perspective of view it\u0027s more important to merge and fix current bug than wait for tests implementation.\n\nSo, please, could you merge it ..so it can be backported to lower branches ? ","commit_id":"2f94fa353b698a9d3dfe82b09198172a7ad20601"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"4f8c83d84cb7ae1168be0a70cad61c2e48851958","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"62597643_cb45c178","updated":"2022-07-19 14:03:39.000000000","message":"This patch doesn\u0027t seem to address the problem described in [1]. [2] introduced the scheduler class \"StaticScheduler\", as a child of \"BgpDrAgentFilter\". However this scheduler should also inherit from \"base_scheduler.BaseChanceScheduler\" (that implements \"def schedule\") or locally implement method schedule.\n\nIn any case, if \"StaticScheduler\" is an scheduler class, it should inherit from a metaclass (BaseScheduler, for example) or any new API class that exposes the needed methods.\n\n[1]https://bugs.launchpad.net/neutron/+bug/1980235","commit_id":"2f94fa353b698a9d3dfe82b09198172a7ad20601"},{"author":{"_account_id":27339,"name":"Michal Arbet","email":"michal.arbet@ultimum.io","username":"michalarbet"},"change_message_id":"5600eaf8c8a3343e6dab1ac059b1bc8350a7ccdb","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"4b2c78a9_d89cc700","updated":"2022-07-11 15:30:20.000000000","message":"What about this, I tested in real environment and it works.","commit_id":"2f94fa353b698a9d3dfe82b09198172a7ad20601"},{"author":{"_account_id":27339,"name":"Michal Arbet","email":"michal.arbet@ultimum.io","username":"michalarbet"},"change_message_id":"3186c8ef9c5be3a671c4260f0bcc64543f188dbb","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"33f57d63_722236bb","in_reply_to":"140b5e3f_bb39e277","updated":"2022-07-19 14:22:06.000000000","message":"StaticScheduler was proposed and merged in [1] which was closing bug [2] (providing simple StaticSheduler - not fixing default automatic scheduler)\n\n[1] https://review.opendev.org/c/openstack/neutron-tempest-plugin/+/815294\n[2] https://bugs.launchpad.net/neutron/+bug/1920065\n\nBut it was not working because of missing some functions. So this patch is exactly fixing what you are talking about : \n\n1. This patch doesn\u0027t seem to address the problem described in [1]\n   - It is\n\n2.  introduced the scheduler class \"StaticScheduler\", as a child of \"BgpDrAgentFilter\". However this scheduler should also inherit from \"base_scheduler.BaseChanceScheduler\" (that implements \"def schedule\") or locally implement method schedule.\n\n   - StaticScheduler is inheriting from base_scheduler.BaseChanceScheduler as \n     BgpDrAgentFilter is inheriting from base_scheduler.BaseChanceScheduler (line 40)\n     \nSo, I don\u0027t understand where is problem ?","commit_id":"2f94fa353b698a9d3dfe82b09198172a7ad20601"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"998491d5ac4b2530032049984b00a9ecc70ed122","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"20a7a103_9eb8d65e","in_reply_to":"33f57d63_722236bb","updated":"2022-07-19 14:41:43.000000000","message":"\"StaticScheduler\" is not inheriting from \"base_scheduler.BaseChanceScheduler\" but from \"BgpDrAgentFilter\" [1] that inherits from \"BaseResourceFilter\" [2]. Those classes do not implement \"schedule\" method, that is the error reported in the bug:\n\n[req-8d9ed03d-67bd-4685-9697-69ca1e04214a - - - - -] Exception encountered during bgp_speaker rescheduling.: AttributeError: \u0027StaticScheduler\u0027 object has no attribute \u0027schedule\u0027\n\n\n[1]https://github.com/openstack/neutron-dynamic-routing/blob/608037e8faa40b2bb51e87a558d9ac14c2fe62ac/neutron_dynamic_routing/services/bgp/scheduler/bgp_dragent_scheduler.py#L223\n[2]https://github.com/openstack/neutron-dynamic-routing/blob/608037e8faa40b2bb51e87a558d9ac14c2fe62ac/neutron_dynamic_routing/services/bgp/scheduler/bgp_dragent_scheduler.py#L40","commit_id":"2f94fa353b698a9d3dfe82b09198172a7ad20601"},{"author":{"_account_id":27339,"name":"Michal Arbet","email":"michal.arbet@ultimum.io","username":"michalarbet"},"change_message_id":"79f007a58ae67e8734f245b61c10ec5b4b6f45a0","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"140b5e3f_bb39e277","in_reply_to":"62597643_cb45c178","updated":"2022-07-19 14:09:48.000000000","message":"As I said, it\u0027s solving bug which I reported because we\u0027ve fixed with this patch :)","commit_id":"2f94fa353b698a9d3dfe82b09198172a7ad20601"}],"neutron_dynamic_routing/services/bgp/scheduler/bgp_dragent_scheduler.py":[{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"a71d675f002945932b83df2a5513f902408840cf","unresolved":true,"context_lines":[{"line_number":220,"context_line":"        self._register_callbacks()"},{"line_number":221,"context_line":""},{"line_number":222,"context_line":""},{"line_number":223,"context_line":"class StaticScheduler(base_scheduler.BaseScheduler,"},{"line_number":224,"context_line":"                      BgpDrAgentFilter):"},{"line_number":225,"context_line":""},{"line_number":226,"context_line":"    def schedule_all_unscheduled_bgp_speakers(self, context):"}],"source_content_type":"text/x-python","patch_set":3,"id":"64915ff7_8f59a085","line":223,"range":{"start_line":223,"start_character":37,"end_line":223,"end_character":50},"updated":"2022-08-02 15:48:55.000000000","message":"That should work.","commit_id":"012f2358d23ef72518ef9bdef8a39f31b1fb86e2"}]}
