Managed to solve this myself. Allow me to explain:
I went to virtual console with ctrl + alt + F1 then tried logging in there, but same issue happened, I was a quick message pop up and I was back to login stage in the virtual console. The message went by way too fast so but I managed to grab it my camera.
It turns out it was an error with fish shell: (not exactly sure if how I caused this error)
fish: relocation error: fish: symbol _ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE7reserveEm, version GLIBCXX_3.4.21 not defined in file libstdc++.so.6 with link time reference
So this told me that fish shell was still my default shell script
sudo chsh -s /bin/bash did not do the trick for me. I was able to further confirm this by checking
/etc/passwd and saw that my user still has
/usr/bin/fish and fish was broken somehow which caused the terminal to immediately close. Finally found the root of the problem!
I then proceed to edit my passwd file by running bash from grub as root following instructions from here: https://unix.stackexchange.com/a/282141/212011 where I simply find the line with my username and changed
/usr/bin/bash back to
/bin/bash and then it was all good again!