In views_bulk_operations_queue_item_process, It's passing $operation_context with progress and rows,
$operation_context = array(
'progress' => $row['position'],
'rows' => $row['views_row'],
);
$operation->execute($entity, $operation_context);
And the max count of records is missing from $row['position'], Which causing issues to find the right total amount of records while processing more than 50 records, For first batch execution it returns the correct total of records, with second batch execution it deducts the records executed in first batch with 'total' key.
So, eventually for end of first batch execution we are getting.
$context['progress'] = array(
'total' => 100,
'current' => 50,
);
and at the end of second batch execution it shows,
$context['progress'] = array(
'total' => 50,
'current' => 100,
);
So, I guess if we can have $context['progress']['max'] = 100 with context it will help full,
To execute on condition of $context['progress']['current'] == $context['progress']['total'].
right now this condition is failing due to this issue. And i believe that this issue is followed in next version as well.
Comments
Comment #1
miteshmapComment #2
bojanz commentedThis has been fixed in the -dev release: http://cgit.drupalcode.org/views_bulk_operations/commit/?id=a7db93c
The next VBO release will be tagged this month.
Comment #3
miteshmapThanks very much. :)