sbp commented on issue #94:
URL: 
https://github.com/apache/tooling-trusted-release/issues/94#issuecomment-2891820508

   We're not yet doing a directory move, but we would be under this new 
approach. The current approach is:
   
   * Create a revision row in the database
   * Create a new revision directory
   * Copy the prior revision directory into the new one by hard linking all of 
its files
   * Run the operation over the new revision directory
   
   The new approach would be:
   
   * Create a temporary directory
   * Copy the prior revision directory into the new one by hard linking all of 
its files
   * Run the operation over the temporary revision directory
   * Create a revision row in the database and hold the transaction open
   * Move the temporary directory to the new revision directory `[here's the 
move!]`
   * Commit the transaction for the revision row
   
   We'd still be doing a copy in the new approach, but it would allow us to (a) 
isolate and rollback from errors during the operation over the temporary 
revision directory to resolve #92, and (b) make revisions atomic solving the 
current issue.


-- 
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: dev-unsubscr...@tooling.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tooling.apache.org
For additional commands, e-mail: dev-h...@tooling.apache.org

Reply via email to