*** mrunge_ is now known as mrunge | 07:32 | |
opendevreview | Stephen Finucane proposed openstack/pbr master: Use sysconfig for sitedir path in test_wsgi in py3 https://review.opendev.org/c/openstack/pbr/+/940778 | 10:08 |
---|---|---|
opendevreview | Daniel Bengtsson proposed openstack/oslo.service master: Add comprehensive backend system documentation. https://review.opendev.org/c/openstack/oslo.service/+/940664 | 10:44 |
opendevreview | Merged openstack/pbr master: Run python release package build job in check and gate https://review.opendev.org/c/openstack/pbr/+/938525 | 11:14 |
opendevreview | Hervé Beraud proposed openstack/oslo.db master: Add MariaDB error 1020 handling for REPEATABLE-READ consistency https://review.opendev.org/c/openstack/oslo.db/+/955189 | 13:11 |
opendevreview | Merged openstack/pbr master: Use sysconfig for sitedir path in test_wsgi in py3 https://review.opendev.org/c/openstack/pbr/+/940778 | 13:26 |
opendevreview | Takashi Kajinami proposed openstack/osprofiler master: devstack: Drop logic for jaeger driver https://review.opendev.org/c/openstack/osprofiler/+/955196 | 14:12 |
opendevreview | Hervé Beraud proposed openstack/oslo.service master: Prevent WSGI Server usage with threading backend https://review.opendev.org/c/openstack/oslo.service/+/955199 | 14:44 |
opendevreview | Hervé Beraud proposed openstack/oslo.service master: Prevent WSGI Server usage with threading backend https://review.opendev.org/c/openstack/oslo.service/+/955199 | 14:58 |
opendevreview | Stephen Finucane proposed openstack/pbr master: Do not use the onerror parameter in shutil.rmtree() https://review.opendev.org/c/openstack/pbr/+/924803 | 15:49 |
dtantsur | Greetings folks! Does anyone have a good working knowledge of futurist? | 16:16 |
dtantsur | TheJulia and I are trying to understand what was the logic behind ThreadPoolExecutor never shrinking, essentially always getting to max_workers as the time goes by. | 16:17 |
dtantsur | I can probably fix it but I'd prefer to make sure I'm not missing something essential. | 16:17 |
dtantsur | I'm referring to this logic https://github.com/openstack/futurist/blob/master/futurist/_futures.py#L154-L155 combined with the fact that ThreadWorkers don't appear to exit until the executor is stopped | 16:18 |
hberaud[m] | dtantsur: Hey Dmitry, if by shrinking you say that its size is static, you can take a look to the section I wrote in the migration guide about the static or dynamically sized thread pool => https://removal.eventlet.org/guide/migrating-to-threading/ (see the Refactoring Concurrency Pools and Executors chapter) | 16:28 |
hberaud[m] | In short, ThreadPoolExecutor are statically sized, so I think that's why you always see the max_workers as the time goes by | 16:30 |
hberaud[m] | Where greenpool are dynamically sized | 16:31 |
hberaud[m] | That's not a futurist behaviour, that's a CPython behaviour. Futurist simply wrap the CPython stdlib | 16:32 |
hberaud[m] | to hide the logic of passing between greenpool and threadpool | 16:33 |
hberaud[m] | and vice versa | 16:33 |
dtantsur | hberaud[m]: thanks, this is helpful! Do you think we need your ResizableThreadPool in futurist? Or even: does anyone ever needs a non-resizable pool? | 16:34 |
dtantsur | an in-tree implementation could override _maybe_spin_up with something more sophisticated | 16:35 |
dtantsur | without losing access to Gatherer and other nice things like in your example | 16:35 |
hberaud[m] | Neutron implemented this logic during their migration, so if this pattern aim to repeat elsewhere in OpenStack, then, indeed, we could officially support it into futurist. | 16:35 |
dtantsur | Hmm, more sophisticated than your example actually: there is no party to call resize() | 16:36 |
hberaud[m] | yeah my example is basical | 16:36 |
dtantsur | something along the lines of the proposal I wrote for cheroot in https://github.com/cherrypy/cheroot/issues/190#issuecomment-2883903045 | 16:36 |
hberaud[m] | good idea | 16:37 |
dtantsur | I can prototype something if it doesn't sound like immediate nope | 16:37 |
hberaud[m] | WFM | 16:39 |
hberaud[m] | Apparently you are only the second person to speak about that, so I do not think there is an immediate need | 16:40 |
dtantsur | or maybe the folks don't realize it just yet :D | 16:40 |
hberaud[m] | indeed :) | 16:41 |
hberaud[m] | dtantsur: here is the Neutron implementation https://review.opendev.org/c/openstack/neutron/+/945566 . You should notice that it may have evolved since we initially discussed about that with Rodolfo months ago | 16:43 |
hberaud[m] | Indeed they changed their direction https://review.opendev.org/c/openstack/neutron/+/945566/3..9 | 16:45 |
hberaud[m] | they adopted another strategy | 16:47 |
dtantsur | I see | 16:56 |
dtantsur | Oh. You cannot actually stop one thread right now, can you | 16:56 |
opendevreview | Merged openstack/pbr master: Use packaging where possible https://review.opendev.org/c/openstack/pbr/+/954043 | 17:06 |
opendevreview | Merged openstack/pbr master: Cleanup removal of 'build_sphinx' command doc https://review.opendev.org/c/openstack/pbr/+/954044 | 17:06 |
opendevreview | Merged openstack/pbr master: Remove 'test' distutils command override https://review.opendev.org/c/openstack/pbr/+/954045 | 17:06 |
opendevreview | Hervé Beraud proposed openstack/oslo.service master: Prevent WSGI Server usage with threading backend https://review.opendev.org/c/openstack/oslo.service/+/955199 | 17:07 |
opendevreview | Dmitry Tantsur proposed openstack/futurist master: PoC: DynamicThreadPoolExecutor https://review.opendev.org/c/openstack/futurist/+/955217 | 17:11 |
dtantsur | hberaud[m], TheJulia: veeeeeery rough draft ^^^, absolutely untested, just to give you an idea | 17:12 |
opendevreview | Merged openstack/pbr master: Move fixtures to their own module https://review.opendev.org/c/openstack/pbr/+/954046 | 17:38 |
opendevreview | Merged openstack/pbr master: Remove support for custom compilers https://review.opendev.org/c/openstack/pbr/+/954047 | 17:38 |
hberaud[m] | dtantsur: Awesome! Thank you. Do you mind if we label it with the "eventlet-removal" gerrit topic? Would help to keep it handy. | 18:55 |
hberaud[m] | good initiative! | 18:57 |
Generated by irclog2html.py 4.0.0 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!