I've encountered the following issue: Actually, all comments showed up on the node page. Out of a sudden one of our users reported that there are no comments anymore. Indeed she was right. I had a look in the database and all comments were there. I looked under the admin/content/comments page and could see all comments. They just did not show up on the node page.
I disabled our custom module which we mainly use for form_alter, menu_alter, etc. After disabling it the comments showed up again. So I thought it was our custom module and tried every function in it (delete the code, refresh the page, paste the code again, etc.) - no result. In the end, I enabled the module again with the same code as before. - Comments showed up fine again.
Why could this happen? Could this be due to caching?
Comments
Try cache clear all
If this happens again, an easy trick to check whether the caching is in cause is to try accessing the page followed by ?MyRandomString. Adding a query string to the url will often circumvent caching. If that does not work, you can also clear the cache ("drush cc all" would do it). If this fixes it, you might want to configure the cache not to last as long, or make sure that posting a comment clears the node page from the cache.
You should be able to replicate the problem by visiting a page as an anonymous user (make sure you don't have a DRUPAL_UID cookie set, this can affect some cache mechanisms). Once the page is loaded, if you refresh, you should get a faster response if the page is cached. Then with another browser, or session, log in and post a comment. In the browser with the anonymous user, refresh. If you can't see the comment, try the above...