incubator-ivy-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Geoff Reedy (JIRA)" <j...@apache.org>
Subject [jira] Created: (IVY-492) support atomic publish operation
Date Tue, 01 May 2007 21:36:15 GMT
support atomic publish operation
--------------------------------

                 Key: IVY-492
                 URL: https://issues.apache.org/jira/browse/IVY-492
             Project: Ivy
          Issue Type: New Feature
          Components: Core
            Reporter: Geoff Reedy


Some resolver types (e.g. one that uses subversion) could benefit from publishing a module
as a single atomic transaction.  Currently, each artifact (and it's checksums) are published
as separate operations, if one of the artifact uploads fail (perhaps an artifact is missing
or another user is trying to publish the same version at the same time) the ivy repository
can be in an inconsistent state with a half published module.  In addition, if uploads are
logged many entries in the log are generated for a single logical operation.

A possible implementation strategy is to add three new methods to the resolver interface:

beginPublish(ModuleRevisionId)
abortPublish()
commitPublish()

beginPublish would be called before publishing the artifacts of the module, abortPublish would
be called if there is an error while publishing the module, commitPublish would be called
if all artifacts were successfully published.  Existing resolvers could simple implement these
methods as no-ops to retain the present behavior.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message