R
Railway•14mo ago
p1gp3n

Deployment failing since Railway incident report

I pushed a very small update to my api project, at the same time as a reported Railway incident. Since then, all my builds are failing, and I can't rollback to a previous build. I wouldn't think the two incidents would be related, but it's a bit strange in that the change was very small so it doesn't seem like a coincidence?
Project: ac828fce-6f54-43e9-825c-ac4871d226ba
Solution:
yes that was the issue. langchain pinned to 0.0.173 which i had running locally. the latest is 0.0.178 which broke things.
Jump to solution
47 Replies
Percy
Percy•14mo ago
Project ID: ac828fce-6f54-43e9-825c-ac4871d226ba
Adam
Adam•14mo ago
Have you tried rolling back your code and pushing a new commit? If there's an issue on Railway's side, rolling back to a previous build may not work correctly.
p1gp3n
p1gp3n•14mo ago
im trying now. it very well could be an issue on my side. it's just weird that this happened at the same time as the incident. so i wanted to report it to see if others were having an issue. so i rolled back successfully. i re-push the new code but that's not working. i'll try to revert my PRs that actually won't work. so i have a stable release from before I saw the Railway Intermittent Issue notice. I pushed a small release after that and the deployment failed. I since rolled back my PR and pushed to Railway but that also failed so to summarize: - i had stable code in Railway - i tried to push a release, which failed - i then saw the Railway outage notification (after I tried to push the release) - i tried to revert the code to the previously-stable version. this also failed. - so now, i have a version of code running on hostway that is not the same as my current active code branch.
Adam
Adam•14mo ago
Interesting issue. What does the error say?
p1gp3n
p1gp3n•14mo ago
the healthcheck fails. and the deploy logs have hundreds of errors
Adam
Adam•14mo ago
what are those errors?
p1gp3n
p1gp3n•14mo ago
very low-level. e.g. pydantic.
le "pydantic/fields.py", line 506, in pydantic.fields.ModelField.infer
File "pydantic/fields.py", line 436, in pydantic.fields.ModelField.__init__
File "pydantic/fields.py", line 552, in pydantic.fields.ModelField.prepare
File "pydantic/fields.py", line 663, in pydantic.fields.ModelField._type_analysis
File "pydantic/fields.py", line 808, in pydantic.fields.ModelField._create_sub_type
File "pydantic/fields.py", line 436, in pydantic.fields.ModelField.__init__
File "pydantic/fields.py", line 552, in pydantic.fields.ModelField.prepare
File "pydantic/fields.py", line 668, in pydantic.fields.ModelField._type_analysis
File "/usr/local/lib/python3.9/typing.py", line 852, in __subclasscheck__
return issubclass(cls, self.__origin__)
TypeError: issubclass() arg 1 must be a class
le "pydantic/fields.py", line 506, in pydantic.fields.ModelField.infer
File "pydantic/fields.py", line 436, in pydantic.fields.ModelField.__init__
File "pydantic/fields.py", line 552, in pydantic.fields.ModelField.prepare
File "pydantic/fields.py", line 663, in pydantic.fields.ModelField._type_analysis
File "pydantic/fields.py", line 808, in pydantic.fields.ModelField._create_sub_type
File "pydantic/fields.py", line 436, in pydantic.fields.ModelField.__init__
File "pydantic/fields.py", line 552, in pydantic.fields.ModelField.prepare
File "pydantic/fields.py", line 668, in pydantic.fields.ModelField._type_analysis
File "/usr/local/lib/python3.9/typing.py", line 852, in __subclasscheck__
return issubclass(cls, self.__origin__)
TypeError: issubclass() arg 1 must be a class
Adam
Adam•14mo ago
Looks like a code issue
p1gp3n
p1gp3n•14mo ago
but i made a really small code change (in a test case). and then reverted the PR
Adam
Adam•14mo ago
Yeah sorry this isn't an issue with Railway. It's 100% an issue with your code Your app is building, but it's failing during deployment. That's indicative of a code issue
p1gp3n
p1gp3n•14mo ago
the app is failing during the build process
Brody
Brody•14mo ago
full build logs please?
p1gp3n
p1gp3n•14mo ago
sure. how would you like me to send? do you just want to look at the service via the service id?
Brody
Brody•14mo ago
only team members can look at the service, i have access to nothing so in a .txt file please
p1gp3n
p1gp3n•14mo ago
attached build and deploy
Brody
Brody•14mo ago
full build logs please wait why is your image 4.9 gb
p1gp3n
p1gp3n•14mo ago
torch, etc
Brody
Brody•14mo ago
can you send your requirements.txt
Brody
Brody•14mo ago
oh you should really be pinning your packages to specific versions one of those packages must have made a breaking change
p1gp3n
p1gp3n•14mo ago
ugh i can try to rebuild in a fresh env locally
Brody
Brody•14mo ago
also im sorry to tell you this but using duckduckgo_search breaks tos as it scrapes duckduckgo
p1gp3n
p1gp3n•14mo ago
i can disable that for now. not really using
Brody
Brody•14mo ago
much appreciated, thank you for understanding
p1gp3n
p1gp3n•14mo ago
so you have seen this sorta issue before i assume?
Brody
Brody•14mo ago
yes though i do not know what specific package was updated that results in this issue
p1gp3n
p1gp3n•14mo ago
i have a guess
Brody
Brody•14mo ago
let me know if you figure it out, so i can pass on this info to anyone who may have this issue in the future long shot, but? https://stackoverflow.com/a/76313951
p1gp3n
p1gp3n•14mo ago
ha. yeah, this was my guess 🙂 thanks for sending this. im gunna pin that version
Brody
Brody•14mo ago
keep me updated 🙂
p1gp3n
p1gp3n•14mo ago
ill let you kow if that works for sure!
Brody
Brody•14mo ago
i assume this works locally, just pin the packages in the requirements.txt file to the versions you have installed on your computer? would that be possible?
p1gp3n
p1gp3n•14mo ago
worked!! 🙂
Solution
p1gp3n
p1gp3n•14mo ago
yes that was the issue. langchain pinned to 0.0.173 which i had running locally. the latest is 0.0.178 which broke things.
p1gp3n
p1gp3n•14mo ago
thanks a lot for the help!
Brody
Brody•14mo ago
latest langchain is 0.0.178?
p1gp3n
p1gp3n•14mo ago
had planned on pinning everything never got around to it. will make it a priority now 🙂
p1gp3n
p1gp3n•14mo ago
yeah, they update their package prob every day. i had 0.0.173 locally. 0.0.178 broke the build. prob 177 is ok as the build was working yesterday
Brody
Brody•14mo ago
oh 9.9.178 is typo lol so your app worked as soon as you pinned langchain to 0.0.173, did you need to pin anything else?
p1gp3n
p1gp3n•14mo ago
no- just pinned that. wanted to try that first, then start pinning other stuff if it didnt fix it. i figured it was langchain as much of my code depends on their types, and the errors were pydantec related. and they update about every day. i'm in their discord- i can ping them and let them know
Brody
Brody•14mo ago
perfect, thank you, this info will be used to help others who may run into this issue do you think you could fix the 9.9. typo so i can mark your message as the correct answer?
p1gp3n
p1gp3n•14mo ago
sure- whre is that typo?
Brody
Brody•14mo ago
^
p1gp3n
p1gp3n•14mo ago
done
p1gp3n
p1gp3n•14mo ago
thanks!
Brody
Brody•14mo ago
thank you!