Hi,
We have been observing frequent timeout error on SVN mirror. Below is the error that we get. Also attaching the screenshot.
Error has occurred that was not expected at the moment:
Timeout reading mirror data.
Last log:
parsing message
parsed: [object Object]
last message saved
next message end index: -1
data read
XHR disposed, scheduling next one
next XHR scheduled
Fetching data with GET request (will try for 15 seconds)…
XHR.onReadyStateChange([object Event]), errorState: undefined
XHR.status: 0
XHR.readyState: 1
isCompleteWithError: false
isComplete: false
isTextAvailable: false
XHR.onReadyStateChange([object Event]), errorState: undefined
XHR.status: 0
XHR.readyState: 4
isCompleteWithError: false
isComplete: true
isTextAvailable: true
XHR is complete, pollingEnabled: false
About to read data: true
typeof(xhr.responseText): string
unprocessed.length: 0
message end index: -1
data read
XHR disposed, scheduling next one
next XHR scheduled
No data was read in 15000 ms.
Giving up.
Reload
Thanks
Hello!
This is just an UI error indicating that the UI was unable to get data from the backend for some reason. It does not affect the marring operations in no way and can easily be cleared just by refreshing the page. If it appears too often, try to disable long polling in global add-on settings (Administration - SVN Mirror - Add-on Settings).
Hi,
Thank you for the inputs. We have disabled the mentioned setting and it improved the performance of the instance by a considerable amount.
Can you please thow some more light on this setting? Based on the interval value provided, does it keep polling the backend or does it poll only when we initiate a migration?
Thanks
Hi,
this setting disables long polling; here is a good explanation on how the long polling works:
https://javascript.info/long-polling
If the setting is disabled, the add-on starts using short polling requesting backend regularly.
This setting has nothing to do with the migration, it’s is completely UI-related function, it only defines how the frontend (javascript in browser) communicates with the backend (server) in order to construct and show the web interface, but it does not affect the migration itself.
Hi,
Thank you for the details.
We are still getting the errors, not as frequently but when we try to run multiple migrations.
What could be the impacts if we set Thread Pool Size under performance section in Addon settings of SVN mirror to ‘Not Limited’ ?
Thanks
Hi!
The “Thread Pool Size” add-on setting defines the maximum number of threads SVN Mirror add-on is allowed to use simultaneously for background synchronization and import tasks. By default, it’s set to 8 which means that 8 active translation processes can works at a time. I’d like to emphasize here, it’s not the number of mirrored repositories – that number is unlimited – it’s just a number of simultaneous translation processes – that is, a background SVN check for updates, new SVN revisions translation to Bitbucket or new Git commits translation to SVN. So, if there are 8 ongoing translation processes in 8 repositories and a new push comes to a 9th repository, then this new push will be waiting in queue while some of the previous 8 finishes. Setting “Thread Pool Size” to 16 will increase the number of active translation to 16, and “Unlimited” means that number of active translations is not limited and all the translation processes can run at the same time. While that seems convenient, it may significantly affect server performance if too many translation will run at the same time and that is the main impact.
Hi,
I got the same problem but also when I go to Administration - SVN Mirror.
Is there any other way to disable long polling apart from the administration UI ?
Using version 3.4.10 on bitbucket 5.15.0
Thanks
Hi Jose,
I’m afraid that no, there is no other way, can only be set in the administration UI.