Caideyipi opened a new pull request, #17932:
URL: https://github.com/apache/iotdb/pull/17932

   ## Description
   
   This PR avoids blocking DataNode startup while cleaning stale pipe 
hardlink/copied-file directories.
   
   Previously, startup synchronously deleted the pipe hardlink base dir. On 
deployments with a huge number of pipe object files, this can keep the main 
startup thread in recursive filesystem deletion for a long time.
   
   The new flow:
   - rename the existing pipe hardlink dir aside as `pipe.startup-cleaning-*` 
during startup
   - register stale dirs to the existing `PipePeriodicalJobExecutor`
   - delete stale dirs in throttled rounds instead of adding a new thread or 
blocking the startup thread
   - resume cleanup of interrupted `pipe.startup-cleaning-*` dirs on the next 
startup
   
   ## Verification
   
   - `mvn -Ddevelocity.off=true -DskipTests spotless:apply -pl 
iotdb-core/datanode`
   - `git diff --cached --check`
   
   `spotless:check` could not be completed in the local Windows environment 
because the JVM failed to start due to insufficient native/page-file memory.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to