Item order sometimes changes after syncing

Steps to reproduce

Create a list of items, manually adding a number to them to indicate order (not automatic numbering). Sync between different platforms (Android, Linux, Web).

Expected result

Order of items stays the same

Actual result

Intermittently some of the items come out of order.

Environment

Web / Chrome, Android (7x), Linux / Mint / Ubuntu


Additional information

It is hard to pin down exactly when and in what combination this happens. Usually only two or three items in a list of maybe 30 will end up being out of order. However, if you are dependent order (such as when using a list for public speaking), this can be quite disruptive. It is also hard to say which specific platform sync is actually causing the issue. I believe I may have seen it happen only when going between Web and Android, but not 100% sure.


Additional comments

3 Likes

@PJ_Zoulin , are you using @Piotr 's powerpack add-on? I ask because Iā€™ve noticed item order getting out of sync on my Android device when I use powerpackā€™s sort features in my web browser. A workaround I use on my Android device is to open another document, then open the first document again ā€“ the items then appear in the same order as the web page.

Nope, not using that. I havenā€™t tried to flip between one file to another. Next time I notice it, Iā€™ll see if that does anything. Usually when i see it happen, I make noises and then ā€œfixā€ the order. The last time I saw this, I believe I was using the Linux / Ubuntu app. Not sure if that makes a difference.

I see, so itā€™s not caused by other scripts. Do you have browser extensions that might cause this?

Iā€™ve never seen this happen to me personally while using Dynalist daily, whatā€™s the approximate chance of it happening to you? A very rough number would help, as I just want to get an idea. Is it every 3 hours or every few days? And has this always happened to you or is it recent?

Any extra info would help. Thanks!

Iā€™ve noticed it specifically three times over the course of a maybe two weeks, but I havenā€™t been paying close attention. Let me try to set up some specific tests and Iā€™ll get back to you.

I donā€™t believe I have any browser extensions that would be causing this. See this link for a a PDF I created with the extensions I have installed. Note that some of them (most actually) are not active.

Iā€™ll set up a test and see if I can specifically make it happen and get an idea of how often it occurs.

Indeed, nothing looks suspicious on that extension list.

And reproduction steps would be invaluable to us. Thanks for being so understanding and helpful!

Ok, I found something interesting. It isnā€™t quite the same behaviour, but it seems likely to be related. I generated some lorem ipsum text and created a list like Iā€™ve done before, but didnā€™t see the issue. So I went back and tried as much as possible to duplicate all of the my movements for times when Iā€™ve seen this in the past. One of the things that I did was drag text over from another application and drop it into a dynalist list, making points as I went. I created a list like this and then went to download the opml so I could save it, and interestingly enough, the opml was missing large portions of my list. So I grabbed my Android phone and looked at the app, and it reflected the missing data. Next in the browser, I clicked on a different file, and came back, and now it reflected the opml, with a number of my additions gone.

See this link.

  • Screenshot 1 = The list as it was when I created it. Notice it says it is synced.
  • dynalist-2017-11-6.opml = The ompl file that showed the missing data.
  • Screenshot 2 = The list as it was when I navigated away and came back.
  • lorem ipsum.txt = The text I used to create the list.

Platform: Chrome running on Linux, using the Web app only.
ā€œSource applicationā€ from which I was dragging the text: gedit

Exact steps:

  1. Create list
  2. Zoom on list
  3. Add a bunch of ā€œblankā€ items by hitting Enter
  4. Select text in other application, drag and drop over to an ā€œemptyā€ Dynalist item
  5. Format some of the dynalist items as you go, indenting, etc.
  6. After about 10 items or so, download the opml. See if it matches the list.
  7. Navigate to another file and come back. Is it the same?

Previously when I created lists and saw this behaviour, I was dragging from one instance of Chrome to another. For this experiment, used gedit as mentioned.

Link to the dynlist file with the list

Do you need any more from me on this?

Not right now, sorry for the delayed reply.

Weā€™ll have a look at this and see if (1) we can repro it and (2) if we can find more clues ourselves. Weā€™ll @ you if we fail to do both!

The only good thing is that it doesnā€™t seem like a widespread issue, but weā€™ll be sure to fix it if itā€™s indeed a bug on our end. Cheers and thanks for the very detailed steps!

I also hit this problem beforeā€¦ I would find that using IOS app and Mac desktop app, I had one list where when I inserted new items on the IOS app they would sync in the wrong order on the Mac desktop app. Adjusting the order on the Mac desktop app to be correct would correct the problem with the correct order still showing on the IOS app. I was only able to reproduce it on one particular list, and only when inserting new items on the IOS app at the top level of the document and at the top of the document. Adding sub-items into existing bullet items did not show the problem. Unfortunately I didnā€™t reproduce it with a new document, and I donā€™t want to share the document I saw the problem in. I hope that info helps you reproduce it more easily.

George, on the desktop app, did you drag text or paste it from another application when you saw this?

I donā€™t think so. Think I just typed it in.

@Shida could you take a look at this when youā€™ve got more time? Thanks.

Yesterday I saw the problem in a sub-list as well. I havenā€™t quite figured out exact steps to reproduce it - itā€™s one of those bugs which seems to happen when you are not out looking for it. Somewhere between a combination of using the Mac desktop app, a different Mac with a browser login and the IOS app, to edit a particular list, the order of items got mangled. I know the order got mangled as I had dragged items around to be in date order, and they clearly didnā€™t sync in that order on one of the other logins.

Agreed, it tends to happen when you are in the middle of something else and itā€™s hard to nail down exactly when it occurs. I had a similar situation in that I had dragged items around to be in numerical order (in this case, it was paragraph numbers in relation to material I was studying) which is how I noticed it.

It appears to occur a) on syncing and b) perhaps after dragging things around. I would question whether it might be that the order is not being saved, but I have noticed it outside of syncing. If the order was simply not being saved, it would eventually revert to the incorrect order on the same device.

So @Erica, it may not be related to the problem I found with items completely not transferring in the sync.

Iā€™ve seen something similar the past week or two. The content is all the same, but the order of the items is sometimes different on the Android device. I notice it when Iā€™ve been editing the same document in Chrome and on my Android device.

It doesnā€™t happen often enough that I can consistently reproduce it, but Iā€™ll keep an eye out to look for a pattern.

1 Like

Thanks so much in advance, Craig.

We really want to fix it too! Just missing the repro steps :disappointed:

I also noticed this strange behavior. Unfortunately, I canā€™t reproduce it but I made some interesting observations.

I use Dynalist with several instances: web-app via Chrome and Firefox, and the standalone Dynalists App on Ubuntu and Android. I often have 3 of them open at the same time and switch between them.

This is the first time I noticed this problem and it started yesterday evening. It affected my main to-do list, which has about 35 items and is constantly edited by me.

All web-app instances agree on the ordering. But all 3 of my standalone apps showed a handful of items in the wrong ordering. The timestamps of all items agree across the Dynalist instances, only the ordering is wrong.

What I tried but did not help

  • Restart the app (both linux and android)
  • Toggle ā€œRefreshā€ several times
  • Edit the parent node. The changes to the parent node are quickly synced but donā€™t change the order of its children. I even toggled the ā€œnumber childrenā€ option. This was synced and all instances showed a numbered list; but the wrong ordering persisted.
  • Logout and re-login on android app. After the re-login, the app quickly showed my documents and nodes; so quickly that it could not have downloaded them all. It must have kept a cache.
  • Edit a ā€œwrongly orderedā€ node. I tried to edit such a node without moving it. The changes were synced normally over all apps but did not change the wrong ordering in the standalone apps.

What did help

  • Drag a wrongly ordered item to another place. This change was quickly synced across devices and made this particular item being on the right place in all instances.
  • Drag this one item another time somewhere else. When I dragged the same previously-wrongly-ordered item again in the web app, it triggered a ā€œrefreshā€ of the whole list in the linux app. Now the ordering of the linux app agrees with the web-app. (To be honest, I did not pay attention so that this correction might have already happened after the first drag.)
  • Clear the cache in android built-in app settings. I used the android app manager to clear the cache of the Dynalist app. I did not clear all data, only the cache. After a restart, Dynalist synced and now the items are in the correct order. :slight_smile:

I thought about clearing the cache after I edited the wrongly-ordered item and it did not change the ordering. Apparently, the ordering information is kept separately from the contents of the children nodes and is also synced separately.

My speculation is that the ā€œordering cacheā€ was somehow corrupted and not toggled for syncing. Maybe this is an artefact of the lazy buffering, that loads only the items on screen?

Now, all instances show the same ordering and sync new changes quickly and reliably.

And just for fun, I ā€œclearedā€ the cache of the linux app by deleting the contents of ~/.config/Dynalist/Cache/ and it made the app still show correct data and ordering. :slight_smile:

So my guess is that it has something to do with the caching system. But I cantā€™t reproduce this error. :frowning:

Wow, thanks so much for the detailed report! Itā€™s will be invaluable to our debugging and investigation of this issue. Thanks! :bouquet:

@Shida could you take a look at this when you have time? Thanks!

I still wasnā€™t able to reproduce thisā€¦ but the observed behavior sounds like the way they should behave.

Item content changes is synced independently of the location and ordering, so editing it doesnā€™t fix the issue. Reordering items does get the order synced, so it doesā€™t surprise me that it fixes the ordering.