Pages are Sorting by Themselves #88

Closed
opened 2026-02-04 16:39:25 +03:00 by OVERLORD · 5 comments
Owner

Originally created by @armouredking on GitHub (Apr 7, 2016).

Major issue. Not sure when it started but most everything is now out of order. It seems like BSA has decided that I don't know how I want my pages sorted, and they're being sorted by some sort of haphazard last updated / created date. In some books / chapters they remain sorted as I originally did them, but on others they're being sorted in reverse order ( so Ch 10 is at the top, then 9, then 8, etc ). Still others are a completely random order, but I'm willing to bet it's not so much 'random' as 'last updated' but without an easy way to see when each item ( instead of just the last item ) was updated I cannot confirm that ( One of these book's pages is currently sorted 5,6,4,3,1,2,0 - that makes no sense unless it's being sorted by last update maybe? I can't tell ).

I don't see any option in settings to do an automatic resort. They were definitely correct before, but somehow / someway have gotten fubar'd.

Originally created by @armouredking on GitHub (Apr 7, 2016). Major issue. Not sure when it started but _most_ everything is now out of order. It seems like BSA has decided that I don't know how I want my pages sorted, and they're being sorted by some sort of haphazard last updated / created date. In some books / chapters they remain sorted as I originally did them, but on others they're being sorted in reverse order ( so Ch 10 is at the top, then 9, then 8, etc ). Still others are a completely random order, but I'm willing to bet it's not so much 'random' as 'last updated' but without an easy way to see when each item ( instead of just the last item ) was updated I cannot confirm that ( One of these book's pages is currently sorted 5,6,4,3,1,2,0 - that makes no sense unless it's being sorted by last update maybe? I can't tell ). I don't see any option in settings to do an automatic resort. They were definitely correct before, but somehow / someway have gotten fubar'd.
Author
Owner

@armouredking commented on GitHub (Apr 7, 2016):

So took a look in the database. A lot of items seem to have the same priority. Is this how bookstack determines sorting? So if I never manually sorted something, it won't have a priority and instead will use the created / updated dates to sort the pages in a chapter / book?

@armouredking commented on GitHub (Apr 7, 2016): So took a look in the database. A lot of items seem to have the same priority. Is this how bookstack determines sorting? So if I never manually sorted something, it won't have a priority and instead will use the created / updated dates to sort the pages in a chapter / book?
Author
Owner

@armouredking commented on GitHub (Apr 7, 2016):

Here's a picture btw. I started fixing everything manually in the meantime ( as noticed by the first one being correct ). You can see how they're sorted; originally they were sorted "correctly" top down 0->1.

screenshot from 2016-04-07 10 26 35

@armouredking commented on GitHub (Apr 7, 2016): Here's a picture btw. I started fixing everything manually in the meantime ( as noticed by the first one being correct ). You can see how they're sorted; originally they were sorted "correctly" top down 0->1. ![screenshot from 2016-04-07 10 26 35](https://cloud.githubusercontent.com/assets/16038428/14360486/7bb22770-fcab-11e5-8e1a-b58a7a5d70a4.png)
Author
Owner

@ssddanbrown commented on GitHub (Apr 7, 2016):

Hi @armouredking, Sorry to hear that you're having issues with your BookStack instance.

Your issue did point point out an issue with pages that are created within chapters which I have fixed on commit afc3583 which will be in the next release (Most likely published this weekend).

I'm sorry about the change in ordering, I have absolutely no idea what could have caused this. You are correct that everything is sorted via the priority (Except for draft pages which are forced a higher priority). Unfortunately, Due to the bug mentioned above, most of your pages would have likely had the same priority due to being inside chapters. There is no secondary sort so they should then go in database order (Which would match order of creation). Do you know if any changes were made during this time? Perhaps a system database update? or did you update your version of BookStack recently?

Instead of manually fixing things you could fix this via MySQL using this command:

SET @i := 0;
UPDATE bookstack.pages SET priority = @i:=@i+1 ORDER BY name;

This will set the order of all pages in the system to be ordered alphabetically. You will have to update bookstack to your database name if different and set a where clause if you want to restrict the update to a single book. Try it on a test table first just in case of problems but I ran it on my test BookStack instance without any issues.

@ssddanbrown commented on GitHub (Apr 7, 2016): Hi @armouredking, Sorry to hear that you're having issues with your BookStack instance. Your issue did point point out an issue with pages that are created within chapters which I have fixed on commit afc3583 which will be in the next release (Most likely published this weekend). I'm sorry about the change in ordering, I have absolutely no idea what could have caused this. You are correct that everything is sorted via the priority (Except for draft pages which are forced a higher priority). Unfortunately, Due to the bug mentioned above, most of your pages would have likely had the same priority due to being inside chapters. There is no secondary sort so they should then go in database order (Which would match order of creation). Do you know if any changes were made during this time? Perhaps a system database update? or did you update your version of BookStack recently? Instead of manually fixing things you could fix this via MySQL using this command: ``` SET @i := 0; UPDATE bookstack.pages SET priority = @i:=@i+1 ORDER BY name; ``` This will set the order of all pages in the system to be ordered alphabetically. You will have to update `bookstack` to your database name if different and set a where clause if you want to restrict the update to a single book. Try it on a test table first just in case of problems but I ran it on my test BookStack instance without any issues.
Author
Owner

@ssddanbrown commented on GitHub (Apr 9, 2016):

Since a large part of what caused this issue has now been fixed in v0.9 I will close this issue. I will look further if you're able to answer any of the questions in my previous comment.

@ssddanbrown commented on GitHub (Apr 9, 2016): Since a large part of what caused this issue has now been fixed in v0.9 I will close this issue. I will look further if you're able to answer any of the questions in my previous comment.
Author
Owner

@armouredking commented on GitHub (Apr 11, 2016):

The only recent update was from 0.8.1 to 0.8.2. I don't recall it saying it needed to make any changes to the database though when I ran the update line. I haven't updated to 0.9 yet but I'll give it a go on the next off work period.

Based on how I looked at it comparing the front end to the database, anything I had manually sorted was in correct order whenever this happened. I had to do manual sorting in the past because sometimes things would 'save' to the wrong spot. Like I copy paste into a page, then the next one, and somehow the more recent one would wind up above it in the order. Quick manual sort fixed that issue in the past and it was only a minor thing and I couldn't make it occur it just happened on and off thus never reported.

A manual MySQL command was not acceptable; while the picture shows everything with nice neat titles a majority of the stories aren't named this way. They have actual titles and thus need to be in a preserved arbitrary / manual order; the sort of setup as pictured is basically reserved for plot work - in drafting stories privately ( I run two BSA, a private and a public because initially it didn't have the different viewing options / user preference list and could only be public or private; I might combine them later if I can find an easy way to set it up ) I use BSA like an online version of Scrivener. It works well in that kind of scenario and Scrivener still doesn't have an acceptable mobile version or something I can use at work on breaks.

With regards to chapters by title, this was initially accomplished by creation date - whenever the resorting error occurred, these stories were still in order ( for the most part they didn't have edits as they'd already gone through that process ) they were just reversed. IE: The most recent page would be at the top instead of the bottom of the list. Not good for sequential story reading.

Anything that wasn't manually sorted previously, IE the sorting was just done based on when I created it, then they were resorted whenever this happened. They were sorted based on last update date, as far as I could tell; and the picture above attests to this - most things were in reverse order, but some items are all mixed up if additional proofreading was required because then they were updated more recently than the original sections were posted.

@armouredking commented on GitHub (Apr 11, 2016): The only recent update was from 0.8.1 to 0.8.2. I don't recall it saying it needed to make any changes to the database though when I ran the update line. I haven't updated to 0.9 yet but I'll give it a go on the next off work period. Based on how I looked at it comparing the front end to the database, anything I had manually sorted was in correct order whenever this happened. I had to do manual sorting in the past because sometimes things would 'save' to the wrong spot. Like I copy paste into a page, then the next one, and somehow the more recent one would wind up above it in the order. Quick manual sort fixed that issue in the past and it was only a minor thing and I couldn't _make_ it occur it just happened on and off thus never reported. A manual MySQL command was not acceptable; while the picture shows everything with nice neat titles a majority of the stories aren't named this way. They have actual titles and thus need to be in a preserved arbitrary / manual order; the sort of setup as pictured is basically reserved for plot work - in drafting stories privately ( I run two BSA, a private and a public because initially it didn't have the different viewing options / user preference list and could only be public or private; I might combine them later if I can find an easy way to set it up ) I use BSA like an online version of [Scrivener](http://www.literatureandlatte.com/). It works well in that kind of scenario and Scrivener still doesn't have an acceptable mobile version or something I can use at work on breaks. With regards to chapters by title, this was initially accomplished by creation date - whenever the resorting error occurred, these stories were still in order ( for the most part they didn't have edits as they'd already gone through that process ) they were just reversed. IE: The most recent page would be at the top instead of the bottom of the list. Not good for sequential story reading. Anything that wasn't manually sorted previously, IE the sorting was just done based on when I created it, then they were resorted whenever this happened. They were sorted based on last update date, as far as I could tell; and the picture above attests to this - most things were in reverse order, but some items are all mixed up if additional proofreading was required because then they were updated more recently than the original sections were posted.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/BookStack#88