Issue with Object Synchronization Between Two Mendix Apps via Odata External Entities

0
I am encountering an issue where objects saved in the database of one Mendix app are not accessible in another Mendix app when queried directly from the database. I am using Odata to migrate the data from one app to another one. Here are the details of the issue: The post-microflow in the second app works correctly and saves the object in its database. The object should also be accessible in the first app by its key, but the read method (configured to fetch directly from the database) does not retrieve the object. Logs from both apps show no errors, and configurations for database access and key mappings appear to be correct. Querying the database manually for the key from the first app does not return the expected results, though the object exists in the database of the second app. While other objects are successfully synchronized and accessible in the first app, this specific object cannot be retrieved using its key. Steps Taken: Verified that the post-microflow correctly saves the object in the second app’s database. Tested synchronization with other objects, which worked as expected. Checked database configurations and ensured there are no connection or synchronization issues between the two apps. Cleared caches and reviewed logs for both apps, but no anomalies were detected. Double-checked database permissions, schema alignments, and any constraints related to this specific object. I need assistance in identifying why this specific object cannot be retrieved in the first app. I need this to associate the external object with its root in the first app after using SEND activity. 
asked
2 answers
1

Some tips on how to debug this. Run both apps locally and make sure they are on different ports otherwise you get port errors. Then set a breakpoint in the app that is sending the request to the other app. Also set a breakpoint in the app receiving the call. Make sure that your log node for the REST call is set to trace so you can inspect in your console the traffic. Do also check if there are event handlers on the receiving end. So when stepping through on the receiving end do step through to the very end because it might be that an after commit handler or something like that is the problem. Then check your local postgres database if indeed that new record is in the local postgres database. Because if it is in the database but you are not seeing it in your front end then you know that security is the problem.

Hope this helps a bit. Regards,

Ronald

answered
0

Hi Ronald 

Thanks for your response.

the event handlers were also checked.

I can already debug both of the apps locallly.

And I can send the object to the other app, my problem is during the retrieve action.

Read method is via (read from database)

It is also in the database.

 

answered