Activity log for bug #1818493

Date Who What changed Old value New value Message
2019-03-04 10:02:11 Yang Youseok bug added bug
2019-03-04 10:02:17 Yang Youseok summary Need support multiprocessing Need support multithreading
2019-03-04 10:03:23 Yang Youseok description I'm not sure it's bug on the side of osprofiler though, the problem is directly related to this project so I report it here. in osprofiler/profiler.py, there is a 'threading.local' to avoid race condition among threads. But the problem is that client side using osprofiler like openstacksdk has async API which use python threadpool. In the openstacksdk, openstack/task_manager.py there is a 'concurrent.futures.ThreadPoolExecutor' which makes the python threads. If client using this API such as 'network' does not append profiling header since profiler does not exist in the thread. Since both side (openstacksdk, osprofiler) does not care about this inconsistency, it's good time to rethink about the feature. Thanks. I'm not sure it's bug on the side of osprofiler though, the problem is directly related to this project so I report it here. in osprofiler/profiler.py, there is a 'threading.local' to avoid race condition among threads. But the problem is that client side using osprofiler like openstacksdk has async API which use python threadpool. In the openstacksdk, openstack/task_manager.py there is a 'concurrent.futures.ThreadPoolExecutor' which makes the python threads. If client uses this API such as 'network', the client does not append profiling header since profiler does not exist in the thread. Since both side (openstacksdk, osprofiler) does not care about this inconsistency, it's good time to rethink about the feature. Thanks.
2019-04-08 13:43:58 Ilya Shakhat osprofiler: status New Confirmed