Jenkins' homepage loading very slowly - deployment

I setup a Jenkins server and created about 1,000 jobs. The problem I have is it takes roughly 5 minutes to load its homepage while takes less than 30 seconds to load other page (for example, configuration page)
What is the reason of this problems? Is there anyway to fix them?

Create a new view with fewer jobs and set that to be your default view.
If you get the Status View plugin, you can add all jobs to it, and filter by status "Failed". This gives you a view that you can call "All Failed" and it does very well as a default view.
Unless, of course, you have 1000 failed jobs..

Related

Why does reloading a widget at midnight fail?

I have a WidgetKit widget that generates a timeline with 47 entries, spaced at half hour intervals, with a reload policy set to half an hour after the last entry. The effect is the reload should happen just after midnight every day.
The initial load works fine and the widget updates every half an hour through the day. With the debugger attached the reload occurs as expected just after midnight and the widget continues updating. But in TestFlight and app store releases the widget never reloads after midnight.
When I look at the system logs I can see the OS is trying to reload the timeline every few hours after the last entry, but is failing with this error:
Subsystem: com.apple.chrono
Category: timeline.store
[my.bundle.id:my.widget.kind:systemMedium::321.00/148.00/20.20:(null)] reload: failed with error Couldn’t communicate with a helper application.)
I've added logging to the first line of getTimeline(in:completion:), so I can see it isn't being called when the problem occurs.
How can I make my timeline reload after the last entry please?
Tapping on the widget to open the app, interacting with the app and then putting it in the background causes the widget to reload successfully, even though the app isn't calling reloadAllTimelines().
The reload happens successfully when the debugger is attached.
Any help would be massively appreciated. Thanks

When I am testing a GUI, an element appears and disappears too quickly

I am testing the GUI using the tools of Webdriver.io and mocha. The tests themselves are written in CoffeeScript. Some interface elements are loaded for a long time, and a rotating loading indicator appears. In order to continue the testing process, it is necessary to wait for the data to be fully loaded (that is, to wait until the loading indicator disappears). This process was performed using function (1):
wait_for_page_load = () ->
$('... load indicator selector ...').waitForDisplayed(20000)
$('... load indicator selector ...').waitForDisplayed(20000, true)
In the first line, I expect the moment when the download indicator becomes visible. In the second term I expect the disappearance of the loading indicator.
However, in the process, I was faced with a situation in which the download indicator appears and disappears too quickly. At the same time, I simply do not have time to “catch” the loading indicator, because at that moment, when I expect it to appear, it already disappears. At the same time, an error message is displayed in the console:
element ("... load indicator selector ...") still not displayed after 20000ms
I found a way out of this situation. When a similar problem occurred, I fixed only the disappearance of the loading indicator. This process was performed using function (2):
wait_for_page_load = () ->
$('... load indicator selector ...').waitForDisplayed(20000, true)
It should be noted that with the fast disappearance of the loading indicator, it is also impossible to do without waiting at all - in this case, new data will not have time to load.
However, in some situations, I cannot determine in advance exactly how long the loading indicator will be visible: sometimes it disappears almost immediately, and I cannot track the moment it appears, in these cases I have to use function (2); sometimes it rotates for a long time, and it is possible to track the moment of its appearance using the function (1).
Is it possible to write a universal function that will fix the appearance and disappearance of a graphic element, even if the element appears and disappears very quickly?
So far I have found the following way to solve the problem. In situations where it is necessary to wait for the loading indicator to disappear, I first time out one second, and then wait for the loading indicator to disappear.
utilities.wait_for_page_load = () ->
browser.pause(1000)
$('... селектор индикатора загрузки ...').waitForDisplayed(20000, true)
Thus, if the download indicator appeared and disappeared too quickly, then at the end of the timeout, it will no longer be on the screen, respectively, we automatically waited for the download indicator to disappear. If the download indicator hangs on the screen for a long time, then at the end of the timeout, we simply continue to wait for it to disappear.
The method is not ideal. Its main drawback is an increase in the total test run time. However, the method is universal and allows you to handle both situations described in the question.

Taking too long in navigating from one page to another in Smartface App Studio

It's taking too long time to show up an page from another. I kept only value bindings to the controls which are pre-dedigned.
Can any one please help me in increasing the performance of navigating between the pages.
Thanks in advance.
Loading images or design elemets(like map) takes a lots of time before loading page. I am trying to call empty page first and by timer start to load design elements it become not more fast but at least you don't wait until create the page . Also I use page.reset() method after i left the page it helps in some cases to reload the same pages performance. In all cases don't expect the performance of native app.

Process page, or be notified that elements are present even if page not fully loaded

The page I'm using watir-webdriver on will often not load completely for maybe like a minute because of the many external scripts I'm loading/using. This of course means that I have to wait needlessly for a minute when I could have performed the checks I wanted to in 10 seconds after the browser I'm controlling (Firefox) started loading the page.
I noticed that even though my target elements become immediately available in the page, the browser.div(:id => 'some_id').present? method hangs until the page is fully loaded. I noticed that if I press on the stop button in the browser window, watir will immediately continue successfully with my tests (the present? method un-hangs). Is there a way to avoid this behavior of the present? method and be able to tell that my target elements are present without having to wait for the page to fully load?
I've experienced this issue before as well. The method I employed, which rides on the idea you mentioned about hitting the stop button, is as follows:
begin
browser.wait_until{browser.div(:id => 'some_id').present?}
rescue
browser.send_keys :escape
end
expect(browser.div(:id=> 'some_id').present?).to be true
This, by default, gives that div 30 seconds to appear (you can insert a smaller value then 30 if you prefer), otherwise it causes watir to hit 'escape' which will stop any remaining background page loading and resume the test.
.present?
As I understand it checks to see if an element exists AND is visible.
What I would suggest you try, is
.exists?
This will simply check that the element exists, and doesnt care if its visible or not.
Just for reference, there is also a
.visible?
Which just makes sure the item is visible, though I dont ever use that one.

Show a loading animation on a Oracle ApEx IR report prior to loading

I am attempting to use the following loading animation plugin located here:
loading plugin animation
but on a Interactive Report (IR) that takes about 5 - 10 seconds to load.
So basically, when the user clicks on a menu option to run this IR, I would like to show this loading animation, indicating that the report is preparing to load and then once the IR is loaded, hide this loading animation.
How can I achieve this? My loading animation turns on, once the report has actually loaded, and not prior to actually loading.
I have selected "Fire on Page Load" and even used the event "Page Load" but to no avail.
I've managed to get this going from my menu system that kicks of the report. Using a jQuery selector dynamic action together with the loading plugin on Page 0 of my application, this is now working as required.