I have created a push topic for subscribing to create/delete/update events for the Account object. When I update single Account object I get proper notification/messages through the push topic/channel.
There is a concurrent scenario where I am emulating the update account request for 3 parallel request , where each request tries to update same 5 account objects concurrently. So if all these updates are successful ideally I should get 3*5 = 15 notifications/message. But I am getting only 10 messages. I don't even get 5 events which carry the details of the fields that I have pointed in the push topic.
I have also tested with 2 concurrent request trying to update 5 Account objects and that time I get all 10 messages saying the details of the updates.
I have checked in the salesforce site in the feed section also in the salesforce , there it clearly indicates that 15 successful updates were successful.
I am testing with salesforce version 29 api
and
My my push topic looks like this ....
PushTopic pushTopic = new PushTopic(); pushTopic.ApiVersion = 29.0; pushTopic.Name = 'MyAccountTopic'; pushTopic.Description = 'All records for the Account object'; pushtopic.Query = 'SELECT Id, Name FROM Account'; insert pushTopic; System.debug('Created new PushTopic: '+ pushTopic.Id);
PushTopic pushTopic = new PushTopic();
pushTopic.ApiVersion = 29.0;
pushTopic.Name = 'MyAccountTopic';
pushTopic.Description = 'All records for the Account object';
pushtopic.Query = 'SELECT Id, Name FROM Account';
insert pushTopic;
System.debug('Created new PushTopic: '+ pushTopic.Id);
I have read the limitation of push topics and there it is mentioned that
Some events may be dropped if the system is being heavily used.
Some events may be dropped if the system is being heavily used.
My question is how/where in salesforce I can check/track if there is any event dropped in this process? Is there any logging mechanism in salesforce that tells me about these events which are dropped or something like that sort ?