Comment status shows ‘closed’ in db, but it shows ‘open’ when i echo it

First thing I would do to debug such case is printing $post->ID just before printing the comment status. (And make sure if it is equal to 414 – the post you’re checking in DB)

I’m almost certain that somewhere in your page you make another wp_query and modify the global $post variable. So when you’re printing the comment status it’s showing the real value but for different post.

If you do such wp_query, then you’ll have to remember to use wp_reset_postdata after that loop, so the global $post variable is restored to its original value.