There is a known regression (identified upstream) wrt to threads and python38. Running the below code will randomly hang. Out of testing it 52 times, it hung ~19.2% of the time. I confirmed that this problem also exists on 3.8.7 which is what 12.0-U3 will have. I have also confirmed that backporting 9ad58acbe8b90b4d0f2d2e139e38bb5aa32b7fb6 and 4d96b4635aeff1b8ad41d41422ce808ce0b971c8 builds cleanly and fixes the hang. I've also got an internal employee running the custom truenas version without any issues.
from multiprocessing.pool import ThreadPool from datetime import datetime class Broken(object): def __init__(self): self.pool = ThreadPool() def __del__(self): self.pool.close() self.pool.join() ohno = Broken() date = datetime.now() print(str(date), ohno)