]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
unittest_osdmap aborted during OSDMapTest.BUG_42485 57988/head
authorMohit Agrawal <moagrawa@redhat.com>
Wed, 12 Jun 2024 11:49:18 +0000 (17:19 +0530)
committerMohit Agrawal <moagrawa@redhat.com>
Wed, 12 Jun 2024 11:49:18 +0000 (17:19 +0530)
commit0bef7998d4ecb4022e288b4bec0ad0478917eea0
tree37462bc697cce197536c4ca816899dc88ea35705
parent3b381601dcc73b6b8e8b15393b45970b7a5ee658
unittest_osdmap aborted during OSDMapTest.BUG_42485

The testcase is aborted during the call of clean_upmap_tp
thread. The function(clean_pg_upmaps) spawns a number
of worker threads to process a PGMapper job. The worker
thread fetch a job from the queue and then process the
job and call process_finish the job. The process function
of PGMapper class destroying the object and as worker thread
call _process_finish function it crashes because job pointer
has become a dangling pointer.

Solution: To avoid a crash destroy the object in  _process_finish
          instead of doing in _process.

Fixes: https://tracker.ceph.com/issues/62934
Signed-off-by: Mohit Agrawal <moagrawa@redhat.com>
src/osd/OSDMapMapping.cc
src/osd/OSDMapMapping.h