API changes not pushed to clients

Steps to reproduce

Add a new item using the API (e.g. using the Quick Dynalist app).

Expected result

The item appears in active clients (e.g. mobile, web).

Actual result

The item doesnā€™t get pushed to existing clients. If you open Dynalist in a new tab it will be there (so not a problem with the API not working), but it wonā€™t force sync down to existing clients.

On mobile even pressing ā€œrefreshā€ (from the three dot menu) doesnā€™t force it to sync. You have to manually start typing in a different item to force it to sync down.

On desktop doing Ctrl-s also doesnā€™t force it to sync down, you have to completely refresh the page or starting typing in a new item.

NOTE: If you add an item from a native client (not API) then the item is properly pushed to all clients, this just appears to be a problem when adding items from the API.

Environment

Iā€™ve reproed this off and on in the browser, and 100% of the time on the Android native app.

Seems to have just started happening in the past couple of days. Did something change in the way API updates are pushed to clients?

I could not reproduce.

  1. Had dynalist open in chrome on my macbook
  2. Clicked the quick dynalist input icon (widget?) on my android home screen
  3. Typed test ENTER
  4. test appeared on my macbook screen in <1 second, no interaction necessary.

Are you sure itā€™s the API getting stuck, and not the 3rd party app or your phone? Do you have another API input method? Like Does anyone have curl code to "add to inbox"? Sorry I am not good at programming

The item appears if I open Dynalist in a new tab so I know itā€™s getting synced from Quick Dynalist.

Also, itā€™s been hit or miss on desktop for me. Sometimes it works fine like you described. But on the native Android app itā€™s completely broken for me.

Looking at the network tab in the dev console Iā€™m seeing https://dynalist.io/api/bundle_binary POST requests as soon as I add an item from Quick Dynalist, but the bundle has "diffs":[],"diffs_ts":[]. When I add something from a first party client the bundle contains real diffs.

I tried it a few more times and youā€™re right. API seems to be acting up.

First API insert appeared <1 second
Second API insert didnā€™t appear even after 10 seconds
Third API insert made the second and third appear in <1 second

Some show up quick, some not at all until you do something

@Shida

I have an idea why this is happening (related to some infrastructure work thatā€™s been happening lately). I will check back once itā€™s fixed.

Seems like weā€™ve hit one of the hardest problems in computer science: Cache invalidation.
Iā€™m joking. The issue should now be resolved. Let me know if thatā€™s the case.

1 Like

Can confirm itā€™s fixed! Thank you @Shida!

2 Likes

Still not work for me. Also for browser clipper.
ā€˜Test msgā€™ pushed only after Enter key press

@Shida Iā€™m also having issues with the web clipper new items being synced down to connected clients. I donā€™t use that feature much so hadnā€™t noticed it before.

Wow you know what, there were 3 spots that needed the cache flush and this was the third. Dā€™oh!

Should be fixed now.

1 Like

Now updates pushed instantly as before. Big thanks @Shida

2 Likes