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