BBS has difficulty tracking my last read post?


#1

I’m running an up-to-date copy of Chrome on Win 7 home premium 64 bit. My brief foray into BBS on mobile platforms after the update was something of a disaster. It seems I’d make a correction and then post but BBS wouldn’t get the correction and the post would come out word soup or word salad. Since then, I’ve avoided it though I will say that test was far more usable than when it was trying to display the desktop version. Enough about things I have almost no experience on …

For desktop platform, I’ll say it gets worse when posts are deleted.

I can guess when it’s the post deletion thing because the address bar will show a higher number than the last post on the thread. Not sure how you’d fix that unless via invisible placeholders for deleted or moved posts.

But even without posts being deleted, it will decide that the last post I read was more like 5 posts in instead of 38, etc. In short, whatever counter you’re using for last-post-read may not be getting updated consistently. It seems to be off by at least 10 when I run into that. Not sure if that helps from a troubleshooting perspective. When a post is deleted, I can understand the conundrum. In other cases, I have no idea why it would lack consistency.

Again, that stuff I’m about 90% sure it’s not really that resolvable within current web frameworks. Whether or not it can be resolved, a permalink in the frame would be a big step forward.


Does BoingBoing still boing, or just thud?
#2

OK, so let’s try to reproduce this on http://try.discourse.org

  1. Opened incognito Chrome window
  2. Visited http://try.discourse.org
  3. Signed up for new account using plus email addressing trick (name+anything@gmail.com)
  4. Visit the example topic with 1,000 replies “discussion happens so much”
  5. Scroll down to reply 100 (remember, you can tell the number from the URL, the progress indicator at the bottom, or by clicking the link icon on the post)
  6. Click the back button to go back (alternately: click the logo to go back home, close browser but that is awkward in Incognito mode, etc.)
  7. Scroll around in the topic list a bit for good measure
  8. Click on the example topic with 1,000 replies “discussion happens so much” to re-enter it.

As you can see in the screenshot, it’s… close. I ended up with post #102 on the top of the browser, versus #100 on the bottom as I left.

That topic has a lot of images and oneboxes (to make it intentionally hard), let’s try a topic that is mostly text, on BBS even. Entering a topic as my account that I have not read before with lots of posts.

How about this one about “Pope says atheists are OK with Jesus”. It has 126 posts at the time of writing, let’s scroll down to post #60. (I ended up on #61 since the post progress counts from the very very bottom always.)

Now I click the BBS logo (not the back button), then re-enter the topic by clicking on it from the topic list.

It’s tricky, but note that of the posts Discourse thinks I has scrolled into view, only the “next” posts are visible when I re-enter the topic. That is, I read through 61 (not sure why it thought I had read 62, maybe a pixel of it was visible?) and it started me at 63. In the previous screenshot it thought I read through 100, and started me at 102.

It does seem slightly off (by one, actually-- off by one, hello most common programming error in the world), and we’ll look at that, but like I said, we are fanatical about remembering your read position in discourse and if there was some massively endemic huge major problem with read position on Android, iOS, Chrome, or IE (unfortunately we don’t regularly use Firefox) we would definitely know about it.

I’ll have to try this for topics with lots of deleted content as a regular user, it is true that we frequently come in as moderators/admins and we would be able to see deleted posts as part of the stream – can you suggest a topic that has lots of deletions that was problematic? I can create a regular user account and test it out to see if we have a bug there.


#3

I am using Firefox 26.0 on a MacBook Pro running Mavericks.

This post: Utility companies go to war against solar

is a good example of the problem for me. I previously read to item 86 in that thread. I even clicked the “bookmark” icon on 86. But the next time I got an alert at the bottom of another post that there were new replies in this forum item, it took me to 78.


#4

Hmm, I cannot repro. Screenshot of me in firefox latest in random never before entered topic, scrolled down to post 50:

I clicked the back button, then I re-entered the topic by clicking (well, tapping) on the topic title:

Entered with topic 51 automatically at the top, as you can see.

I will have to check and see if the specific topic you referenced for some strange reason has a lot of deleted posts, which has been proposed as a theory for why this might happen. (edit: I just checked and not a single deleted post at all above 78 in that topic, so that can’t be it.) Could be OS as well?

Could you also humor me and try Firefox in safe mode – if you have FF plugins active, it is possible they could interfere if they are not well-known.


#5

Whoa. Didn’t see any replies on this for awhile so I figured it hadn’t gone anywhere. Sorry for being, eh, nonparticipatory?

@codinghorror my airplane/phone experiences may have just given me an epiphany. Unfortunately, it’s the sort of epiphany that may render the thread moot. I assume you have a really fantastic connection between you and discourse.org … Mine is somewhat lackluster under all circumstances. Maybe I should stop speculating until I’ve taken a gander at the browser end of your framework but what’s the likelihood that a crappy connection could cause the server end of BBS to not receive an updated post count?

Since last-read never goes over count except in cases of post deletions, I could hazard a guess that maybe the last time my browser successfully told BBS I’d read a post was point x-10 rather than point x. And here’s where the ignorance comes in … if you’re storing last-read (and referring to it) from cookies, obviously that wouldn’t be the case. Seems like since it works when you log in from a different device, it probably stores server side though.


#6

Certainly possible with sketchy connections, though it should eventually re-sync as you scroll down, as we are sending a variety of read data to the server as you advance through posts in a topic.


#7

Anecdotally, I read post 4 here several days ago and then left the thread alone.  But when I clicked the topic a few minutes ago to read the new replies I was taken to post 4 again instead of post 5.


#8

I do think there is an off by one condition under some circumstances, you can see I reproduced it above. Will look into.


#9

I’m still getting the issue, even in Safe Mode on Firefox. Off by 5+ sometimes.

There’s also a thing where in a long ,discussion if I reply to something mid-discussion (say post 60 of 100), the BBS will make my post, show it at the bottom of the discussion (now my post is 101), and elide a bunch of posts at the end of the discussion (so when I’m scrolling up and down the screen, scrolling a quarter inch or so moves the counter from 65 to 100, and the intervening posts are not shown until I reload the page.)


#10

I saw something like that previously.

[Edit: To be clear, I was talking about the problem where a number of posts will not load unless you do reload the page. I have not noticed problems with the last read post in awhile and it never seemed to be consistent across all topics.]


#11

There was a pretty severe bug we had deployed for about a week that meant image sizes, although they are baked into the HTML for each individual post, were overridden with CSS to, uh, dumb wrong sizes. That would play serious havoc with positioning since as the images load they “expand” to the correct size and push the page around.

That was only resolved 1 or 2 days ago.

I’m curious, can you hard refresh your browser (just in case) and try to repro per my steps above? I’ll try again too. Just pick any topic you didn’t normally read with a “lot” of posts (50+) and enter, then exit, then come back.


#12

I just tried with this previously unread topic using the latest version of Firefox on OS X Mavericks in incognito mode.

Here’s where I ended up after some scrolling:

On the topic list, the url is pointing to the right post:

Here’s where I ended up after clicking on the topic:

Seems to be working just fine :smile:


#13

Here’s an odd “off by two” situation. I read the How to season a cast iron pan thread when it first appeared, but I didn’t read it long enough to add it to start tracking it. This afternoon I found the thread and read it all the way to the ‘automatically closed’ post at the end. Later, I found this in my Unread thread section:


Clicking on the number did show me the final two posts in the thread, even though I’d already seen and read them.

Edit: And just now, I spotted 3 new posts in the Comments go where? lament thread Clicking on grey number took me to the thread but only showed me the final two, so I’m guessing there’s still an “off by one” somewhere.


#14

I finally remembered that I got some screen shots of this.

Showing me at post 86 of 92

Scrolling just a tiny bit changes the count to post 92 of 92 - posts 87-91 have “vanished”

Once I reload, I can “see” post 87.

This is a minor occurrence because I replied late in the thread; I’ve had it suddenly skip from post 25 to the final screen of posts if I reply to something early on.


#15

Thanks, we will continue to look at this. But going to last post (aka end of topic) after you post is intentional, otherwise people would not “see” the post they just made, and think it is not there, etc.


#16

It makes sense that the page view would focus down on the new reply. What doesn’t make sense is that (in some cases, quite a large number of) preceding comments would vanish until one reloads the page.


#17

That was a regression which @eviltrout recently fixed, sorry about that.


#18