storm icon indicating copy to clipboard operation
storm copied to clipboard

[STORM-3771] Execute doCleanup in its own timer thread without lock.

Open bipinprasad opened this issue 3 years ago • 0 comments

What is the purpose of the change

Sometimes doCleanup can take a long time (several minutes) while holding submitLock. This slows down other "submitLock" dependent activities. Execute doCleanup without a lock and within its own timer thread. Ignore exception that may occur inside doCleanup() method.

How was the change tested

Add concurrency tests to StormTimer and HdfsBlobStoreImpl. Make a temporary code change to insert a four minute delay in topoIdsToClean() after "cleanable.addAll(Utils.OR(store.storedTopoIds(), EMPTY_STRING_SET));". Verify that doCleanup() works and logs a warning that cleanup is taking too long.

bipinprasad avatar May 12 '21 22:05 bipinprasad