R

Railway

βœ‹ο½œhelp

Join Server

Deployment failing since Railway incident report

Pp1gp3n5/23/2023
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
ADA Dumb5/23/2023
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.
Pp1gp3n5/23/2023
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.
Pp1gp3n5/23/2023
so i rolled back successfully. i re-push the new code but that's not working. i'll try to revert my PRs
Pp1gp3n5/23/2023
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
Pp1gp3n5/23/2023
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.
ADA Dumb5/23/2023
Interesting issue. What does the error say?
Pp1gp3n5/23/2023
the healthcheck fails. and the deploy logs have hundreds of errors
ADA Dumb5/23/2023
what are those errors?
Pp1gp3n5/23/2023
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
ADA Dumb5/23/2023
Looks like a code issue
Pp1gp3n5/23/2023
but i made a really small code change (in a test case). and then reverted the PR
ADA Dumb5/23/2023
Yeah sorry this isn't an issue with Railway. It's 100% an issue with your code
ADA Dumb5/23/2023
Your app is building, but it's failing during deployment. That's indicative of a code issue
Pp1gp3n5/23/2023
the app is failing during the build process
Bbrody5/23/2023
full build logs please?
Pp1gp3n5/23/2023
sure. how would you like me to send? do you just want to look at the service via the service id?
Bbrody5/23/2023
only team members can look at the service, i have access to nothing
Bbrody5/23/2023
so in a .txt file please
Pp1gp3n5/23/2023
attached build and deploy
Bbrody5/23/2023
full build logs please
Bbrody5/23/2023
wait
Bbrody5/23/2023
why is your image 4.9 gb
Pp1gp3n5/23/2023
torch, etc
Bbrody5/23/2023
can you send your requirements.txt
Pp1gp3n5/23/2023
Bbrody5/23/2023
oh you should really be pinning your packages to specific versions
Bbrody5/23/2023
one of those packages must have made a breaking change
Pp1gp3n5/23/2023
ugh
Pp1gp3n5/23/2023
i can try to rebuild in a fresh env locally
Bbrody5/23/2023
also im sorry to tell you this but using duckduckgo_search breaks tos
Bbrody5/23/2023
as it scrapes duckduckgo
Pp1gp3n5/23/2023
i can disable that for now. not really using
Bbrody5/23/2023
much appreciated, thank you for understanding
Pp1gp3n5/23/2023
so you have seen this sorta issue before i assume?
Bbrody5/23/2023
yes
Bbrody5/23/2023
though i do not know what specific package was updated that results in this issue
Pp1gp3n5/23/2023
i have a guess
Bbrody5/23/2023
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
Pp1gp3n5/23/2023
ha. yeah, this was my guess πŸ™‚ thanks for sending this. im gunna pin that version
Bbrody5/23/2023
keep me updated πŸ™‚
Pp1gp3n5/23/2023
ill let you kow if that works
Pp1gp3n5/23/2023
for sure!
Bbrody5/23/2023
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?
Pp1gp3n5/23/2023
worked!! πŸ™‚
Solution
Pp1gp3n5/23/2023
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.
Pp1gp3n5/23/2023
thanks a lot for the help!
Bbrody5/23/2023
latest langchain is 0.0.178?
Pp1gp3n5/23/2023
had planned on pinning everything never got around to it. will make it a priority now πŸ™‚
Pp1gp3n5/23/2023
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
Bbrody5/23/2023
oh 9.9.178 is typo lol
Bbrody5/23/2023
so your app worked as soon as you pinned langchain to 0.0.173, did you need to pin anything else?
Pp1gp3n5/23/2023
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
Bbrody5/23/2023
perfect, thank you, this info will be used to help others who may run into this issue
Bbrody5/23/2023
do you think you could fix the 9.9. typo so i can mark your message as the correct answer?
Pp1gp3n5/23/2023
sure- whre is that typo?
Bbrody5/23/2023
^
Pp1gp3n5/23/2023
done
Pp1gp3n5/23/2023
thanks!
Bbrody5/23/2023
thank you!