Hi, we’ve encountered a troubling behaviour in Data Store modules, I’ll try to explain the issue.
For 2+ years we had a scenario implementing a telegram bot, where we’d used Data Stores to track the bot’s internal state for each user (status, telegram id, last message id etc). In this pipeline there is a sequence of Data Store modules: Search, Update, Get.
User gets searched by telegram id, and then the record might get updated. The intended behaviour is that the Update module only affects the fields it is provided with. Those left empty should not be affected. And I want to stress that it did work like this all this time, we haven’t changed anything.
Here’s an example of a run (yesterday, 20:17 our local time), with the configuration of the module:
and the result, after we run a Get Record (sorry for the crop, but it’s still visible):
So, everything that is not set in the Update Record, is kept as it was.
Here is the same scenario, with no changes, 50 minutes later (21:06 local time):
As you can see only two fields are left, specifically, those, that were set in the Update record. The other ones were just plainly erased.
I hope it’s a minor technical issue and it won’t affect your scenarios en masse, but in case you’ve got any pipelines including Update Record (chances are you might :)), please, make sure they are running as intended.
Have a nice day, everyone!