Fixed Some manual rebuild jobs never complete

Astra

Active member
In update 2.1.6, this tank has not been fixed. All the same, at the top of the forum is a strip with a proposal for manual rebuilding.
Press the button - manual rebuild and after half an hour the strip is again at the top of the forum.

fsd.png
 
Last edited:
Well the bug was a rather nasty server error so I am confident it is fixed.

If there is a manual rebuild job outstanding then the banner will display. This is the expected behaviour.

Once you continue running the jobs you need to leave your browser window open otherwise the job can’t complete.
 
Do I need to go into rebuilding the forum caches and select rebuilding reactions there? Is that all right?
Then wait until the complete rebuild and the banner after this disappears?

21.png

Or should I press manual rebuild on the banner itself?

fsd-png.215372


I just rebuilt in both the first and second cases, but the banner appeared again after half an hour.

I waited for the rebuilding and saw a green inscription about the rebuilding of reactions.

I can give all access to the forum and you yourself can check this error.

The error occurs in two forums, in the third I did not rebuild caches for 3 months and there are no bars suggesting manual rebuilds.
 
Last edited:
Can you all take a look inside your xf_job table and let us know what you see?

I’m not able to reproduce the situation you’re reporting.
 
This is indeed not related to the original bug report where these posts were made, and actually not related to changes in XF 2.1.6, but changes we made in XF 2.1.5.

I can see the issue, and should be able to provide a workaround shortly.
 
Thank you for reporting this issue, it has now been resolved. We are aiming to include any changes that have been made in a future XF release (2.1.7).

Change log:
Ensure that some jobs do not attempt to complete or otherwise change state inside a transaction.
There may be a delay before changes are rolled out to the XenForo Community.
 
In the file src/Job/ReactionIsCounted.php find:

PHP:
$db->beginTransaction();

And remove that line.

Then find:

PHP:
$reactionRepo->recalculateReactionIsCounted($this->data['type'], $reactions);

And directly above it add:
PHP:
$db->beginTransaction();
Then when you click "Continue running them" the job will finish properly.
 
I now get this error...

There are 1 missing files or files with unexpected contents. You should review these.

I assume it due to me changing this file. I should just ignore and it will fix itself next update?
 
Back
Top Bottom