Sequence contains no matching element


(imacrae) #1

Hello,
Getting the following error when going to project overview

Running an old version of Octopus 3.17.13 and using Octo v4.24.4 to import packages and the Octopus.Client.dll 4.22.0 to create releases.

All successfull

No - I can not upgrade for operational reasons (don’t ask). This setup has been working well for a year now.

Ran

SELECT relProj.Name as 'Release Project Name', Release.ProjectId as 'Release ProjectId', Release.Id as 'ReleaseId', Release.Version, Channel.Id as 'ChannelId', Channel.Name as 'Channel Name', Channel.ProjectId as 'Channel ProjectId'
FROM Release
    INNER JOIN Channel on Release.ChannelId = Channel.Id
    INNER JOIN Project relProj on Release.ProjectId = relProj.Id
WHERE Release.ProjectId <> Channel.ProjectId

No result so all release project ID matches Channel project ID. That is not the cause.

There are no triggers on the project.

How can I urgently fix this as I cannot get into the project. While I can get to other tabs, I do need the Overview tab.

Thanks


(Eddy Ma) #2

Hi!

Thanks for getting in touch and I am sorry to hear that you are experiencing this issue.

For the script that you provided, looks like you have been to this page https://github.com/OctopusDeploy/Issues/issues/2790, can I just confirm with you that How to fix the data from the link did not help?

After that can you please upload your database backup to us from [here](Share URL https://file.ac/PKqFJXQNSQM/) so that I can dig in further.

Looking forward to hear from you soon

Regards
Eddy


(imacrae) #3

Hi Eddy,
Thanks for responding.
I can confirm that the script did not help as it did not highlight any problems.

Furthermore, I am also experiencing problems on the main dashboard page;

This may (or may not) assist you.

I have uploaded a backup as requested.

Thanks


(Eddy Ma) #4

Hi

It took me sometime to figure out the problem, it turned out that there is a channel referenced to a lifecycle with a Id that has different case e.g. it should be Lifecycles-203 but it has got lifecycles-203.

To unblock you, could you please try running the following script and see if it solve the problem.
It is important that to backup your database before running any script

UPDATE Channel Set LifecycleId = 'Lifecycles-203' WHERE Id = 'Channels-2741'

I cannot figure out what actually caused the incorrect casing, do you by any chance to provide some guidelines about steps to reproduce?

I hope this helps! Let me know how you go

Regards
Eddy


(imacrae) #5

HI Eddy,
I can confirm that this resolved the problem.
As to how to reproduce it, I am rather confused.
All channels and lifecycles are created using the API calls so I do not know how one got in there with the incorrect case.

Thanks for your help


(imacrae) #6

Hi Eddy,
I think I have discovered the source of the problem. One of the teams has a PowerShell script that copies a lifecycle from one project to another. In that they may have entered the lifecycle name without the capital letter.

PowerShell is case (by default) insensitive so it would have found it and then blindly wrote it without the correct case.

It is the only thing I can think of.

Thanks


(Eddy Ma) #7

Thanks for letting me know, I am glad that you got unblocked, do let me know if you have any other issues.

Regards
Eddy