Grails 是否可以回滚承诺列表中的所有事务?

Grails 是否可以回滚承诺列表中的所有事务?,grails,groovy,gorm,gpars,Grails,Groovy,Gorm,Gpars,我一直在关注Grails提供的关于承诺的文档: 我有一个庞大的ID列表,我正在将其分解为不同的任务,然后在承诺列表上调用waitAll()。基于此,当一个并发任务抛出异常时,是否可以回滚所有更改 查看代码可能更容易: def promistList = [] def collatedList = hugeList.collate(100) collatedList.each { promiseList << task { DomainObject.with

我一直在关注Grails提供的关于承诺的文档:

我有一个庞大的ID列表,我正在将其分解为不同的
任务
,然后在承诺列表上调用
waitAll()
。基于此,当一个并发任务抛出异常时,是否可以回滚所有更改

查看代码可能更容易:

def promistList = []
def collatedList = hugeList.collate(100)

collatedList.each {
    promiseList << task {
        DomainObject.withTransaction {
            def domainObject = findById('test')
            // do more work
            domainObject.save()
        }
    }
}
waitAll(promiseList)  
def promistList=[]
def collatedList=hugeList.collate(100)
核对清单{
承诺人