Hi
Is there any specific reason for not removing any successful action from the action list.
In Method of class org.hibernate.engine.ActionQueue
private void executeActions(List list) throws HibernateException {
int size = list.size();
for ( int i = 0; i < size; i++ ) {
execute( (Executable) list.get(i) );
}
list.clear();
session.getBatcher().executeBatch();
}
Why is list being cleared in one go rather then removing after every action. something like this
private void executeActions(List list) throws HibernateException {
for(Iterator actionIter = list.iterator();actionIter.hasNext();){
execute( (Executable) actionIter .next());
actionIter.remove();
}
session.getBatcher().executeBatch();
}
Reasons i am facing issues due to this is following:
For Example in ActionQueue i have three EntityUpdateAction and my Entity is versioned
and my 3rd EntityUpdateAction Fails and say i can recover from this failure programmatically and i try to flush again. This time even my first Action will fail as it would have already updated Version No.
And even theoretically why will i want to retry a Successful Action.
I think after action is successfully executed it should be removed from the list.
Regards
Pavitar
--
Pavitar Singh
Blog: http://blog.webscale.co.in