Apologies for the slow release of this (been rather busy personally) but 24.1.0 is out with what I think should be a fix for this issue.
If you have any feedback it'd be appreciated. -Chad On Mon, 19 Feb 2024, 15:15 'Wolfgang Achinger' via go-cd, < go-cd@googlegroups.com> wrote: > Hello, > > this is actually incredible news for us. We will look forward to the > release with the fix. > Thanks for the support. > > The workarounds seem not to be viable for us, since we use the environment > for a lot of global variables and customizations. > > Regards > > Am Sa., 17. Feb. 2024 um 18:08 Uhr schrieb Chad Wilson < > ch...@thoughtworks.com>: > >> Hiya folks >> >> I've been able to replicate this problem and should be able to fix it for >> a subsequent release - thanks for the help debugging. >> >> The problem appears to arrive when there is a large number of pipelines* >> mapped to an environment;* and also a large number of agents for that >> environment. The logic for calculating the API response agents > >> environments is accidentally very, very inefficient (I think it's O(n^2 x >> m^2) or something crazy. I replicated something similar to what you >> describe with 5,000 pipelines and 60 or so agents, all mapped into the >> same, single, logical environment. >> >> [image: image.png] >> >> >> In your case if you have all say 1,690 pipelines mapped to a single >> environment (from your stats below), and all of your 95 agents are in the >> same environment, you'd definitely trigger this issue. I can't tell exactly >> from what you have shared how the pipelines and agents are mapped to >> environments, so this is a guess - can you confirm how many agents and >> pipelines are mapped to the environment below? >> >> "Number of pipelines": 1690, >> "Number of environments": 1, >> "Number of agents": 95, >> >> >> If it's the same problem, you will probably find that *untagging the >> agents from the environment *also has a similar speed-up effect to >> deleting all of the agents (although then the pipelines requiring that >> environment won't schedule either, obviously). >> >> Another workaround in the meantime, *if you don't rely on the >> environment* >> >> - to define environment variables/secure environment variables that >> apply across all pipelines/jobs >> - to affect whether jobs are scheduled to special agents >> >> ... may be to untag all pipelines and agents from the environment you use >> and just use the default/empty environment. >> >> -Chad >> >> On Fri, Feb 16, 2024 at 3:40 PM 'Wolfgang Achinger' via go-cd < >> go-cd@googlegroups.com> wrote: >> >>> > By 'resources' I am referring to the GoCD functionality where you can >>> tag agents with resources that they offer, which are then matched to >>> pipeline jobs that say they *require* those resources to run as part of >>> agent assignment. >>> 10 Agents have 5 resources attached >>> 85 have 1 resource attached >>> >>> We use the resources to different special agents. They do the same as >>> the rest, but they are placed in dedicated networks. >>> >>> > To make sure I understand you, are you saying that the problem has >>> been here for the last year, perhaps gradually getting worse a story add >>> more agents or pipelines - but not an issue suddenly created after a >>> particular upgrade or change? >>> That's correct. It's more an over-time issue than a sudden issue. >>> >>> I sent the additional information out, but not directly, they come from >>> a different mail address over a secure transfer method. >>> >>> Am Do., 15. Feb. 2024 um 17:57 Uhr schrieb Chad Wilson < >>> ch...@thoughtworks.com>: >>> >>>> Cool, thanks! Just trying to gather enough information to see if I can >>>> replicate or find the issue in a dedicated chunk of time this weekend. >>>> >>>> You can email it to me, and/or encrypt with my GPG key if you'd like ( >>>> https://github.com/chadlwilson/chadlwilson/blob/main/gpg-public-key.asc >>>> ) >>>> >>>> By 'resources' I am referring to the GoCD functionality where you can >>>> tag agents with resources that they offer, which are then matched to >>>> pipeline jobs that say they *require* those resources to run as part >>>> of agent assignment. >>>> >>>> > No we use this setup no for about a year, patch the system on a >>>> regular basis including the latest gocd stable version. >>>> >>>> To make sure I understand you, are you saying that the problem has been >>>> here for the last year, perhaps gradually getting worse a story add more >>>> agents or pipelines - but not an issue suddenly created after a particular >>>> upgrade or change? >>>> >>>> -Chad >>>> >>>> On Fri, 16 Feb 2024, 00:29 'Wolfgang Achinger' via go-cd, < >>>> go-cd@googlegroups.com> wrote: >>>> >>>>> > And how many resources are defined across the agents? >>>>> What exactly do you mean here? System resources? XMS XMX Values of >>>>> java ? >>>>> >>>>> - Is this a problem that has always been there, or something that has >>>>> changed with a GoCD version or other change in environment? >>>>> No we use this setup no for about a year, patch the system on a >>>>> regular basis including the latest gocd stable version. >>>>> >>>>> - Is it faster when the server is restarted, and gets slower over time >>>>> (or the same after a restart)? >>>>> No a restart does not affect the speed at all. It stays constant >>>>> >>>>> - Why do you feel it is the # of jobs/stages the agents have processed >>>>> that is a key factor, rather than simply the # of agents or some other >>>>> agent configuration factor? >>>>> I don't know it was more a wild guess. After later testing, i don't >>>>> think this anymore. I cleaned up some tables and reduced the agent history >>>>> visible in the GUI, but this did not affect the speed (Well, it increased >>>>> the speed of the listing of the agent history itself but not the loading >>>>> time of the popups). >>>>> >>>>> If it is ok i will send the support output directly your our >>>>> mailadress so it will not get shared in the thread. >>>>> >>>>> Am Do., 15. Feb. 2024 um 15:50 Uhr schrieb Chad Wilson < >>>>> ch...@thoughtworks.com>: >>>>> >>>>>> And how many resources are defined across the agents? >>>>>> >>>>>> Can you please answer the earlier questions I asked as well? It's >>>>>> rather difficult to efficiently help if you don't respond to the >>>>>> questions >>>>>> that characterise the problem from a maintainer perspective. :-) >>>>>> >>>>>> - Is this a problem that has always been there, or something that has >>>>>> changed with a GoCD version or other change in environment? >>>>>> - Is it faster when the server is restarted, and gets slower over >>>>>> time (or the same after a restart)? >>>>>> - Why do you feel it is the # of jobs/stages the agents have >>>>>> processed that is a key factor, rather than simply the # of agents or >>>>>> some >>>>>> other agent configuration factor? >>>>>> >>>>>> Additionally, can you share a redacted output from /go/api/support ? >>>>>> You can enter the URL in the browser when logged in as an admin. Be >>>>>> careful >>>>>> of the "Runtime Information" and "System Health Information" sections >>>>>> when >>>>>> sharing. These are the two main places which might leak unintentional >>>>>> information from your setup. Redact the individual values which feel >>>>>> sensitive to you. >>>>>> >>>>>> -Chad >>>>>> >>>>>> >>>>>> On Thu, Feb 15, 2024 at 10:17 PM 'Wolfgang Achinger' via go-cd < >>>>>> go-cd@googlegroups.com> wrote: >>>>>> >>>>>>> 1 environment >>>>>>> 164 materials >>>>>>> 0 elastic agents >>>>>>> 2 config repos >>>>>>> 0 artifact stores >>>>>>> 0 pluggable scms >>>>>>> >>>>>>> Am Do., 15. Feb. 2024 um 15:01 Uhr schrieb Chad Wilson < >>>>>>> ch...@thoughtworks.com>: >>>>>>> >>>>>>>> How many distinct environments and resources do you have across >>>>>>>> these 1200 pipelines, roughly? >>>>>>>> >>>>>>>> On Thu, Feb 15, 2024 at 5:38 PM 'Wolfgang Achinger' via go-cd < >>>>>>>> go-cd@googlegroups.com> wrote: >>>>>>>> >>>>>>>>> Additional information >>>>>>>>> Since the pipelines are configured via ~150 yaml files. >>>>>>>>> I tested it now with one big, merged config file with all pipelines >>>>>>>>> But this did not change anything, >>>>>>>>> performance slow. >>>>>>>>> >>>>>>>>> -- >>>>>>>>> You received this message because you are subscribed to the Google >>>>>>>>> Groups "go-cd" group. >>>>>>>>> To unsubscribe from this group and stop receiving emails from it, >>>>>>>>> send an email to go-cd+unsubscr...@googlegroups.com. >>>>>>>>> To view this discussion on the web visit >>>>>>>>> https://groups.google.com/d/msgid/go-cd/CANhjCLCY1Gsq8fef%2Bb0t8bHSfvgoZHdFHFK%2B1eWzBxYJFjqM3g%40mail.gmail.com >>>>>>>>> <https://groups.google.com/d/msgid/go-cd/CANhjCLCY1Gsq8fef%2Bb0t8bHSfvgoZHdFHFK%2B1eWzBxYJFjqM3g%40mail.gmail.com?utm_medium=email&utm_source=footer> >>>>>>>>> . >>>>>>>>> >>>>>>>> -- >>>>>>>> You received this message because you are subscribed to a topic in >>>>>>>> the Google Groups "go-cd" group. >>>>>>>> To unsubscribe from this topic, visit >>>>>>>> https://groups.google.com/d/topic/go-cd/c1n1Aq7hG1k/unsubscribe. >>>>>>>> To unsubscribe from this group and all its topics, send an email to >>>>>>>> go-cd+unsubscr...@googlegroups.com. >>>>>>>> To view this discussion on the web visit >>>>>>>> https://groups.google.com/d/msgid/go-cd/CAA1RwH8Vb0U5YPQNB4Qzf2d6kP8KiYRBsgXr1Jux3xEMEN_H5A%40mail.gmail.com >>>>>>>> <https://groups.google.com/d/msgid/go-cd/CAA1RwH8Vb0U5YPQNB4Qzf2d6kP8KiYRBsgXr1Jux3xEMEN_H5A%40mail.gmail.com?utm_medium=email&utm_source=footer> >>>>>>>> . >>>>>>>> >>>>>>> -- >>>>>>> You received this message because you are subscribed to the Google >>>>>>> Groups "go-cd" group. >>>>>>> To unsubscribe from this group and stop receiving emails from it, >>>>>>> send an email to go-cd+unsubscr...@googlegroups.com. >>>>>>> To view this discussion on the web visit >>>>>>> https://groups.google.com/d/msgid/go-cd/CANhjCLBiz4s%3DqpKr1Yrgw1TSyfRePkcdGXPesfrmAiu2e9aN6g%40mail.gmail.com >>>>>>> <https://groups.google.com/d/msgid/go-cd/CANhjCLBiz4s%3DqpKr1Yrgw1TSyfRePkcdGXPesfrmAiu2e9aN6g%40mail.gmail.com?utm_medium=email&utm_source=footer> >>>>>>> . >>>>>>> >>>>>> -- >>>>>> You received this message because you are subscribed to a topic in >>>>>> the Google Groups "go-cd" group. >>>>>> To unsubscribe from this topic, visit >>>>>> https://groups.google.com/d/topic/go-cd/c1n1Aq7hG1k/unsubscribe. >>>>>> To unsubscribe from this group and all its topics, send an email to >>>>>> go-cd+unsubscr...@googlegroups.com. >>>>>> To view this discussion on the web visit >>>>>> https://groups.google.com/d/msgid/go-cd/CAA1RwH-jix9BM1k24yCedriGXryO7zRiMtEXaOxOmqZ-PamU3g%40mail.gmail.com >>>>>> <https://groups.google.com/d/msgid/go-cd/CAA1RwH-jix9BM1k24yCedriGXryO7zRiMtEXaOxOmqZ-PamU3g%40mail.gmail.com?utm_medium=email&utm_source=footer> >>>>>> . >>>>>> >>>>> -- >>>>> You received this message because you are subscribed to the Google >>>>> Groups "go-cd" group. >>>>> To unsubscribe from this group and stop receiving emails from it, send >>>>> an email to go-cd+unsubscr...@googlegroups.com. >>>>> To view this discussion on the web visit >>>>> https://groups.google.com/d/msgid/go-cd/CANhjCLDdSv8pY0w6ZzJF8Uv_gSx_Y_APdLjF3JHXGcxAE-rhrQ%40mail.gmail.com >>>>> <https://groups.google.com/d/msgid/go-cd/CANhjCLDdSv8pY0w6ZzJF8Uv_gSx_Y_APdLjF3JHXGcxAE-rhrQ%40mail.gmail.com?utm_medium=email&utm_source=footer> >>>>> . >>>>> >>>> -- >>>> You received this message because you are subscribed to a topic in the >>>> Google Groups "go-cd" group. >>>> To unsubscribe from this topic, visit >>>> https://groups.google.com/d/topic/go-cd/c1n1Aq7hG1k/unsubscribe. >>>> To unsubscribe from this group and all its topics, send an email to >>>> go-cd+unsubscr...@googlegroups.com. >>>> To view this discussion on the web visit >>>> https://groups.google.com/d/msgid/go-cd/CAA1RwH9HfWexWAHGbTLQvuvZdTYRonH-bJ_OpcSkrvd3RSCirQ%40mail.gmail.com >>>> <https://groups.google.com/d/msgid/go-cd/CAA1RwH9HfWexWAHGbTLQvuvZdTYRonH-bJ_OpcSkrvd3RSCirQ%40mail.gmail.com?utm_medium=email&utm_source=footer> >>>> . >>>> >>> -- >>> You received this message because you are subscribed to the Google >>> Groups "go-cd" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to go-cd+unsubscr...@googlegroups.com. >>> To view this discussion on the web visit >>> https://groups.google.com/d/msgid/go-cd/CANhjCLAbXaud2BiWWYYNXK5AeVf8JHp7Sw6Hioe3OkPzm8Ga%2Bw%40mail.gmail.com >>> <https://groups.google.com/d/msgid/go-cd/CANhjCLAbXaud2BiWWYYNXK5AeVf8JHp7Sw6Hioe3OkPzm8Ga%2Bw%40mail.gmail.com?utm_medium=email&utm_source=footer> >>> . >>> >> -- >> You received this message because you are subscribed to a topic in the >> Google Groups "go-cd" group. >> To unsubscribe from this topic, visit >> https://groups.google.com/d/topic/go-cd/c1n1Aq7hG1k/unsubscribe. >> To unsubscribe from this group and all its topics, send an email to >> go-cd+unsubscr...@googlegroups.com. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/go-cd/CAA1RwH9yFok2t7ZVnmdvLfsPG-v1JD%3DfUm2_GwJ%2B3j%3Dg5WLDBw%40mail.gmail.com >> <https://groups.google.com/d/msgid/go-cd/CAA1RwH9yFok2t7ZVnmdvLfsPG-v1JD%3DfUm2_GwJ%2B3j%3Dg5WLDBw%40mail.gmail.com?utm_medium=email&utm_source=footer> >> . >> > -- > You received this message because you are subscribed to the Google Groups > "go-cd" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to go-cd+unsubscr...@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/go-cd/CANhjCLAJ7MoasJowhsq24DwNG9rOyiYTkaAjqnSnoQm8MUsK-A%40mail.gmail.com > <https://groups.google.com/d/msgid/go-cd/CANhjCLAJ7MoasJowhsq24DwNG9rOyiYTkaAjqnSnoQm8MUsK-A%40mail.gmail.com?utm_medium=email&utm_source=footer> > . > -- You received this message because you are subscribed to the Google Groups "go-cd" group. To unsubscribe from this group and stop receiving emails from it, send an email to go-cd+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/go-cd/CAA1RwH8rqwVfS4oH9s7XMNHe6o1fW_FUtEPcL%3D-uZaNKFS6reA%40mail.gmail.com.