*** Qiming has quit IRC | 00:20 | |
*** pratikmallya has joined #senlin | 00:37 | |
*** gongysh has quit IRC | 00:48 | |
*** Qiming has joined #senlin | 01:04 | |
*** gongysh has joined #senlin | 01:05 | |
*** gongysh has quit IRC | 01:05 | |
openstackgerrit | junxu proposed openstack/senlin: This patch adds ScalingPolicy's event property checking in 'policy_check' function. https://review.openstack.org/258823 | 01:28 |
---|---|---|
*** Yanyanhu has joined #senlin | 01:37 | |
*** pratikmallya has quit IRC | 02:04 | |
*** elynn has joined #senlin | 02:07 | |
*** pratikmallya has joined #senlin | 02:30 | |
openstackgerrit | OpenStack Proposal Bot proposed openstack/python-senlinclient: Updated from global requirements https://review.openstack.org/258069 | 02:49 |
*** pratikmallya has quit IRC | 02:58 | |
*** gongysh has joined #senlin | 03:22 | |
openstackgerrit | Merged openstack/senlin: Add blue-green deployment as a feature request https://review.openstack.org/258240 | 03:31 |
*** gongysh has quit IRC | 03:45 | |
*** gongysh has joined #senlin | 04:04 | |
*** xujun has quit IRC | 05:24 | |
*** gongysh has quit IRC | 05:46 | |
*** yuanying has quit IRC | 05:52 | |
*** xujun has joined #senlin | 06:26 | |
Qiming | hi xujun | 06:33 |
Qiming | about the patch you proposed, please sync with Yanyanhu | 06:33 |
Qiming | I hope we can come up with an elegant solution for that but I myself don't have bandwidth to review it at the moment | 06:34 |
openstackgerrit | Qiming Teng proposed openstack/python-senlinclient: Remove MANIFEST.in https://review.openstack.org/259301 | 06:36 |
xujun | ok, thanks | 06:50 |
*** gongysh has joined #senlin | 07:12 | |
*** gongysh has quit IRC | 07:17 | |
*** gongysh has joined #senlin | 07:30 | |
openstackgerrit | Qiming Teng proposed openstack/senlin: Add 'dependency' table https://review.openstack.org/259315 | 07:55 |
Qiming | Hi, guys, I'm reworking the DB dependency support by adding new DB tables | 07:57 |
Qiming | there will be patches coming in, please help review | 07:57 |
Yanyanhu | cool! | 07:58 |
Yanyanhu | definitely a way worth to try | 07:58 |
Yanyanhu | will help to review | 07:58 |
Qiming | we have to ... | 07:58 |
Yanyanhu | understand... | 07:59 |
Qiming | we cannot imagine how to let sqlalchemy to do a SQL like: UPDATE action set depends_on=<existing list minus an action> where action_id=<ID> | 08:00 |
Qiming | more over, we cannot set the action status to READY if 'depends_on' becomes empty | 08:00 |
Qiming | combined with ORM, this is not a solvable problem using a list column | 08:01 |
Yanyanhu | yea | 08:01 |
openstackgerrit | Qiming Teng proposed openstack/senlin: Temporarily disable lock stealer https://review.openstack.org/259318 | 08:07 |
elynn | Hi Qiming, What's the reason that we should disable lock stealer? ^ | 08:23 |
Qiming | it is in the locking critical path | 08:23 |
Qiming | it is calling action.set_status instead of doing db api call directly | 08:24 |
Qiming | it is doing unnecessary RPC checks of the owning engine's liveness | 08:24 |
Qiming | even I have only one engine, it is still invoking an RPC which takes a long time to respond | 08:25 |
Qiming | the execution path is interwined with the more complex issue of DB action dependency checking | 08:25 |
Qiming | so ... currently I'm disabling it for debugging | 08:25 |
Qiming | we can revisit this afterwards | 08:26 |
elynn | So you mean we should store the engine status in db and directly check with db api? | 08:26 |
Qiming | no further thought on that yet | 08:27 |
elynn | You are right, it's better to check if the owner is current engine, so that we can save a RPC call. | 08:30 |
Qiming | ORM is disgusting | 08:31 |
Qiming | when you are checking the owner, you can never be sure that the owner field has been changed from DB | 08:31 |
elynn | So you suspect lock stealer might the reason fail the functional tests? | 08:33 |
Qiming | lock stealer is one of the reasons that makes the debugging a pain | 08:34 |
elynn | I saw a spec in nova to migrate their db to use new enginefacade from oslo_db. I'm not sure that new enginefacade will help us or not. I will help to debug functional tests failure. | 08:35 |
elynn | Can you point me where to start? | 08:35 |
Qiming | enginefacade might be good | 08:35 |
Qiming | please check the oslo.db/docs/usage document | 08:36 |
Qiming | I'm not seeing the migration to oslo.db is giving us any advantage | 08:36 |
Qiming | for simple setter(writer) and getter(reader) functions, it looks helpful, but our current implementation is not that ugly | 08:37 |
Qiming | for more complicated scenarios, oslo_db is not helping us a lot | 08:37 |
Qiming | besides that, oslo.db is introducing READER and ASYNC_READER kind of options, which is further complicating the whole path of DB interaction | 08:38 |
Qiming | it would be good to understand how enginefacade is constructed, how would we use it in Senlin db to simplify the code | 08:38 |
*** Liuqing has joined #senlin | 08:40 | |
elynn | if we only use 1 senlin-engine, will functional tests fail or not? | 08:43 |
Qiming | still fails | 08:44 |
Qiming | you can check the recent log of https://review.openstack.org/#/c/258308/ | 08:45 |
elynn | My local env it passed, bug jenkins failed, so weird... | 08:45 |
Qiming | it is not reproducible | 08:45 |
Qiming | thus a problem we need to solve seriously | 08:46 |
Qiming | the root cause of this problem is about transaction isolation | 08:46 |
Qiming | sql_alchemy and oslo_db is having a lot of (invalid) assumptions and doing a lot of hacks on our behalf | 08:47 |
Qiming | for example, the auto_commit of a sqlalchemy connection is set to True, the expires_on_commit is set to False by oslo_db, and set to True in sqlalchemy be default | 08:48 |
Qiming | you will never know whether your change to a python object is persisted into database in a predictable way | 08:48 |
*** xujun has quit IRC | 08:48 | |
Qiming | using current database design, it would be impossible to have sqlalchemy generate a SQL to remove an action_id from depends_on field, for example | 08:49 |
Qiming | if we are using ORM, the whole transaction design is becoming very very fragile | 08:49 |
Qiming | I have spent the whole week on this, only to learn such a hard lesson | 08:50 |
elynn | sqlalchemy is not easy to understand... I spent a lot of time on that but still not understand that well... | 08:52 |
elynn | I will have a look to see if i can help. | 08:52 |
*** xujun has joined #senlin | 08:53 | |
Qiming | okay | 08:55 |
Qiming | the problem is that people are doing too much assumptions in each layer | 08:56 |
Qiming | I'm not thinking that adding oslo_db is making our lives any easier | 08:56 |
elynn | You mean in senlin codes or in sqlalchemy? | 08:57 |
Qiming | in senlin code | 08:59 |
Qiming | the annotation of enginefacade.reader looks charming | 08:59 |
Qiming | but most of the time, we don't have problem with such a simple function | 08:59 |
Qiming | migrating to that may help solve some simply transaction problems | 09:00 |
Qiming | we yet to evaluate that | 09:00 |
Qiming | it would be good to start with some simple functions such as cluster_get, cluster_get_all etc | 09:00 |
elynn | Thanks, hope we can solve this soon... | 09:02 |
Qiming | yep | 09:02 |
elynn | New gerrit sucks, can't find the patches that depends on current one. | 09:07 |
*** Yanyan has joined #senlin | 09:08 | |
*** Yanyanhu has quit IRC | 09:08 | |
Qiming | a lot of people will complain | 09:11 |
*** Yanyan has quit IRC | 09:14 | |
*** xujun has quit IRC | 09:20 | |
openstackgerrit | Merged openstack/senlin: Fix action dependency problem https://review.openstack.org/258308 | 09:22 |
openstackgerrit | Qiming Teng proposed openstack/senlin: Add 'dependency' table https://review.openstack.org/259315 | 09:23 |
*** gongysh has quit IRC | 09:25 | |
*** openstackgerrit has quit IRC | 09:32 | |
*** openstackgerrit has joined #senlin | 09:33 | |
*** Qiming has quit IRC | 09:38 | |
*** Liuqing has quit IRC | 09:46 | |
*** zhenguo has quit IRC | 10:02 | |
*** Qiming has joined #senlin | 10:32 | |
openstackgerrit | Merged openstack/senlin: Add 'dependency' table https://review.openstack.org/259315 | 10:40 |
*** elynn has quit IRC | 11:01 | |
openstackgerrit | Qiming Teng proposed openstack/senlin: More test cases for purge_deleted https://review.openstack.org/259386 | 11:18 |
*** lixinhui__ has joined #senlin | 12:28 | |
openstackgerrit | Merged openstack/senlin: Temporarily disable lock stealer https://review.openstack.org/259318 | 12:37 |
openstackgerrit | Qiming Teng proposed openstack/senlin: More test cases for purge_deleted https://review.openstack.org/259386 | 12:42 |
*** lixinhui__ has quit IRC | 13:24 | |
*** Qiming has quit IRC | 16:52 | |
*** bdrich has joined #senlin | 17:24 | |
*** bdrich_ has joined #senlin | 18:04 | |
*** bdrich has quit IRC | 18:08 | |
*** bdrich_ has quit IRC | 18:11 | |
*** bdrich_ has joined #senlin | 18:40 | |
*** openstackgerrit has quit IRC | 19:17 | |
*** openstackgerrit has joined #senlin | 19:18 | |
*** pratikmallya has joined #senlin | 19:47 | |
*** pratikma_ has joined #senlin | 19:49 | |
*** pratikmallya has quit IRC | 19:53 | |
*** pratikma_ has quit IRC | 21:01 | |
*** rebase has joined #senlin | 21:02 | |
*** rebase has quit IRC | 21:06 | |
*** pratikmallya has joined #senlin | 21:09 | |
*** pratikma_ has joined #senlin | 21:10 | |
*** pratikmallya has quit IRC | 21:14 | |
*** bdrich_ has quit IRC | 22:09 | |
*** pratikma_ has quit IRC | 22:56 | |
*** pratikmallya has joined #senlin | 23:02 | |
*** pratikmallya has quit IRC | 23:03 | |
*** pratikmallya has joined #senlin | 23:03 | |
*** pratikmallya has quit IRC | 23:05 | |
*** pratikmallya has joined #senlin | 23:39 |
Generated by irclog2html.py 2.14.0 by Marius Gedminas - find it at mg.pov.lt!