January 27, 2019 at 8:17 am #5608
The cold storage wallet balance for one of my coins is stuck at 0, and when I deposit coins to that address the balance does not update.January 28, 2019 at 11:27 am #5622
The hot wallet balance is cached internally via WordPress transients for performance. Can you check with the setting:
“Frontend” -> “JSON API settings” -> “Disable transients (debug)”
Then go to the adapters list and see if the Hot Wallet Balance is correct.
If this setting makes a difference, then it means that your server-side cache is misconfigured so that transients are not expiring properly.
Please let me know once you try this.
with regardsJanuary 28, 2019 at 6:38 pm #5657
Changing that setting worked, now the Hot Wallet Balance is displaying correctly, and is updating when depositing coins to it.
How do I address the caching issue? I use Autoptimize. Would this have an affect?January 29, 2019 at 9:23 am #5661
I tested the plugin and Autoptimize does not cause any issues with the default settings. It is possible that with your settings it does cause issues with Transient expiry. Uncheck the “Disable transients” option again as it creates a lot of overhead to the plugin.
I would recommend the standard procedure for such cases: deactivate all other plugins, then check if the balance updates. Once you determine that the plugin works with all other plugins deactivated, then you can activate some more plugins, then a few more, until you find out which one causes the problem.
If you do find something, I would be very interested if you could share your findings. A lot of people have reported issues due to transients not expiring properly, but none so far has the technical expertise to debug the issue, and I cannot recreate these conditions on my machine in order to investigate myself.
If I knew what can cause transients to persist after their expiration time, I would be able to make the plugin detect these conditions and warn the user to take appropriate action. If you are using memcached or anything that uses a server-side key-value cache, or otherwise messes with transients, then these are your suspects.
Looking forward to your reply if you do find anything.
with regardsApril 26, 2019 at 12:49 pm #6232
After some testing, I was experiencing this issue too.
I installed the plugin Transients Manager by Pippin Williamson. After removing all of the transients, the issue was fixed.
I think in my testing, canceling transactions and moving adapters something got corrupted.
Hope this helps somebody.
Thanks!April 29, 2019 at 9:12 am #6235
@tanger Thank you so much for your feedback. Can I please ask what type of server-side cache you’re running? I have been trying to figure out why transients do not expire for some users for several months now.
All I know up to know is that when backed by the MySQL WordPress options table, the transients always expire correctly. But with some more advanced caching solutions there can be cases where the WordPress transients API does not behave as expected.
As a sidenote, it is also possible to clear transients using WP-Optimize, but clearing the transients manually is not a complete solution. This is why I want to find the root cause of this issue.April 29, 2019 at 11:39 am #6237
My server side setup is default LAMP on a DigitalOcean VPS with no mods. I don’t have any performance/cache plugins on the site. I haven’t seen the issue since manually removing the transients with the plugin. Also, I noticed my transient issue in the exchange app, the order book wasn’t updating after removing orders [wallets_exchange_bids/asks]. Selecting the “Disable transients” option in the Frontend settings fixed it. After I installed the Transient Manager and deleted the transients, I was able to deselect “Disable transients”, and the system seems to be working fine. Hope this helps.April 30, 2019 at 7:43 am #6240
Thank you. So you’re not using memcached, WP Super Cache, W3 Total Cache, etc…May 1, 2019 at 6:54 pm #6244
No memcached plugins on my setup. If the issue appears again I can send you my transient log. Maybe it will help.
I do have some security plugins, but I don’t see any reference to transients or cache control in their setup.
So far, after deleting all transients, the system is running fine.May 2, 2019 at 9:14 am #6247
Thank you for all your feedback!
WordPress normally clears transients when the
delete_expired_transientsaction fires, this is scheduled as a wp_cron event. I’m guessing that if for some reason cron is disabled, transients may not expire. I will investigate if forcing a call to
delete_expired_transients()every now and then helps. Also, if you are very low on memory it is possible that WordPress is crashing before getting to run the wp_cron tasks.
You must be logged in to reply to this topic.