-
Notifications
You must be signed in to change notification settings - Fork 267
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add docker-mux related table names #627
Conversation
/azp run Azure.sonic-swss-common |
Azure Pipelines successfully started running 1 pipeline(s). |
/azp run Azure.sonic-swss-common |
Azure Pipelines successfully started running 1 pipeline(s). |
/azp run Azure.sonic-swss-common |
Azure Pipelines successfully started running 1 pipeline(s). |
/azp run Azure.sonic-swss-common |
Azure Pipelines successfully started running 1 pipeline(s). |
build failure not related to PR |
/azp run |
Azure Pipelines successfully started running 1 pipeline(s). |
@zjswhhh would you please check the build failure and merge this PR asap? This is required by 202205 |
Hi @zhangyanzhao - I have Kamil signed off on this PR, the build failure is not tied to the change. I suspected the failure was introduced by 40a685c. But haven't got a chance to reproduce. |
* Fix memory leak issue in ConfigDBConnector. (sonic-net#655) #### Why I did it Fix memory leak issue in ConfigDBConnector: [chassis] Too many open files error and unable to connect to redis socket error sonic-net/sonic-buildimage#10870 The reason of this issue is DBConnector::pubsub() will return a pointer, and following code call this method but never release the returned pointer: ``` void ConfigDBConnector_Native::db_connect(string db_name, bool wait_for_init, bool retry_on) { m_db_name = db_name; m_key_separator = m_table_name_separator = get_db_separator(db_name); SonicV2Connector_Native::connect(m_db_name, retry_on); if (wait_for_init) { auto& client = get_redis_client(m_db_name); auto pubsub = client.pubsub(); <== this pointer not delete later. ``` Also change DBConnector::pubsub() to deprecated for none SWIG scenario. #### How I did it Change DBConnector::pubsub() to return a smart pointer. #### How to verify it Pass all test case. Run following code in python and validate there is no epoll and socket leak: ``` import gc from swsscommon import swsscommon config_db = swsscommon.ConfigDBConnector_Native() config_db.connect() config_db.connect() config_db.connect() gc.collect() ``` #### Which release branch to backport (provide reason below if selected) <!-- - Note we only backport fixes to a release branch, *not* features! - Please also provide a reason for the backporting below. - e.g. - [x] 202006 --> - [ ] 201811 - [ ] 201911 - [ ] 202006 - [ ] 202012 - [ ] 202106 - [x] 202111 #### Description for the changelog Fix epoll and socket resurce leak issue: [chassis] Too many open files error and unable to connect to redis socket error sonic-net/sonic-buildimage#10870 #### Link to config_db schema for YANG module changes #### A picture of a cute animal (not mandatory but encouraged) Co-authored-by: liuh-80 <azureuser@liuh-dev-vm-02.5fg3zjdzj2xezlx1yazx5oxkzd.hx.internal.cloudapp.net> * Transfer organization from Azure to sonic-net (sonic-net#656) Transfer organization from Azure to sonic-net * Add docker-mux related table names (sonic-net#627) This PR is to add table name definitions for database entries used by docker mux processes. Sign-off: Jing Zhang [email protected] * Add libzmq dependency * Add test logs * Add libzmq3-dev dependency * Add libboost-serialization and uuid-dev dependencies * Add boost and uuid * Add installation before building docker Co-authored-by: Hua Liu <[email protected]> Co-authored-by: liuh-80 <azureuser@liuh-dev-vm-02.5fg3zjdzj2xezlx1yazx5oxkzd.hx.internal.cloudapp.net> Co-authored-by: Liu Shilong <[email protected]> Co-authored-by: Jing Zhang <[email protected]> Co-authored-by: Ubuntu <zain@zb-dev-vm.022x1jpnpm4u1iy2d325acts3c.yx.internal.cloudapp.net>
This PR is to add table name definitions for database entries used by docker mux processes. Sign-off: Jing Zhang [email protected]
Update sonic-swss-common submodule pointer to include the following: * Add docker-mux related table names ([sonic-net#627](sonic-net/sonic-swss-common#627)) * Transfer organization from Azure to sonic-net ([sonic-net#656](sonic-net/sonic-swss-common#656)) Signed-off-by: dprital <[email protected]>
Stemming from #627 This PR is to add table name definitions for database entries used by docker mux processes. Sign-off: Jing Zhang [email protected]
This PR is to add table name definitions for database entries used by docker mux processes.
Sign-off: Jing Zhang [email protected]