Overview
When opening certain Sales Orders, the CloudSense Sales Order Visualforce UI may be blocked by a JavaScript alert stating: “Remoting response size exceeded maximum of 15 MB.” This occurs when Salesforce Visualforce remoting returns a response payload larger than Salesforce’s hard 15 MB limit during Sales Order initialization (commonly involving Node Advert Assignment data).
The most effective mitigation is to reduce the remoting payload size—typically by cleaning up unused csmso__Node_Advert_Assignment__c records, and (if feasible) reducing the configured field list returned to the UI.
Contents
- Error / Symptom
- Environment
- Root Cause
- How to Diagnose
- Solution / Mitigation
- Production Risk Considerations
- Verification Checklist
- Frequently Asked Questions
Error / Symptom
A blocking alert appears immediately when the Sales Order Visualforce UI loads:
“<your_instance.domain.com> says: Remoting response size exceeded maximum of 15 MB.”
This prevents the Sales Order page (often the record/Line Items experience) from rendering and being usable for order management.
Environment
- Salesforce org type: commonly observed in Full Sandbox (can also occur in Production if the payload grows).
- CloudSense package version reported by the customer: R37.
Root Cause
Salesforce Visualforce remoting enforces a maximum response size of 15 MB. During Sales Order UI initialization, the CloudSense managed package queries and returns csmso__Node_Advert_Assignment__c data to the Visualforce page. If the combination of:
- Record volume (e.g., tens of thousands of records), and
- Field selection + field data size (number of fields and the amount of data stored in those fields)
produces a serialized response larger than 15 MB, Salesforce throws the remoting size error and the UI becomes blocked.
Where the field list comes from (CloudSense configuration)
The managed package determines which fields are retrieved/returned based on configuration stored in:
-
csmso__SalesOrderAPI__ccsmso__Node_Advert_Assignment_Fields__c(a configurable, comma-separated list of field API names)
Payload size can grow over time as more csmso__Node_Advert_Assignment__c records are created/retained and/or additional fields are added to the configured field list (or existing fields begin storing larger values).
How to Diagnose
-
Confirm the exact error message
Verify users see: “Remoting response size exceeded maximum of 15 MB.”
-
Confirm it occurs during Sales Order load
Reproduce by opening an affected Sales Order and confirming the alert appears immediately on initial load.
-
Check Node Advert Assignment data volume
Review the approximate count of
csmso__Node_Advert_Assignment__crecords in the org. Larger volumes (for example, ~20k+) increase the risk of exceeding the 15 MB response limit depending on field selection and data sizes. -
Review the configured field list
Inspect
csmso__SalesOrderAPI__c.csmso__Node_Advert_Assignment_Fields__c. More fields returned (and larger field values) increase the remoting payload size.
Solution / Mitigation
Option A (Preferred): Reduce the number of returned records by cleaning up unused data
-
Identify unused
csmso__Node_Advert_Assignment__crecordsDetermine which Node Advert Assignments are no longer required for current catalog/configurator behavior.
-
Delete or otherwise remove unused records
- Perform cleanup in Full Sandbox first to validate behavior and avoid unintended functional impact.
- Keep only records that are required for Sales Order configuration and order management.
-
Re-test Sales Order load
Open multiple Sales Orders and confirm the page loads without the 15 MB remoting error.
Why this works: fewer records returned → smaller remoting response → stays under Salesforce’s 15 MB limit.
Option B: Reduce the number of fields returned (only if feasible)
If business logic permits, reduce the configured fields in:
csmso__SalesOrderAPI__c→csmso__Node_Advert_Assignment_Fields__c
Then re-test Sales Order load.
Why this works: fewer fields (and/or smaller fields) → smaller payload per record → smaller total response.
Platform limitation note
This behavior aligns with a Salesforce Visualforce remoting platform limit (15 MB), not a CloudSense defect. No package version change is required to implement the mitigations above.
Production Risk Considerations
- Similar record counts between Sandbox and Production do not guarantee identical payload size.
- The 15 MB limit is based on serialized payload size, which depends on both record count and the actual data sizes in returned fields (text lengths, populated vs. null values, and which fields are configured).
- If Production is close to the threshold, proactive cleanup of unused
csmso__Node_Advert_Assignment__crecords reduces the risk of a sudden outage as data grows.
Verification Checklist
- No alert appears: “Remoting response size exceeded maximum of 15 MB.”
- Sales Order UI loads successfully across multiple Sales Orders (not just one).
- Line items / configurator initialization completes without blocking pop-ups.
- Data cleanup did not remove records required for valid configurations (perform functional regression checks in Sandbox before Production changes).
Frequently Asked Questions
- 1. How do I know I’m hitting the same issue?
- You’ll see the exact blocking alert: “Remoting response size exceeded maximum of 15 MB.” immediately when opening a Sales Order in the Visualforce UI, and the page won’t load properly.
- 2. Is this a CloudSense bug?
- No. This behavior aligns with Salesforce Visualforce remoting’s hard 15 MB response limit. The practical fix is to reduce the size of the remoting response (fewer records and/or fewer returned fields).
- 3. What configuration controls which fields are included in the response?
- The field list is driven by
csmso__SalesOrderAPI__c→csmso__Node_Advert_Assignment_Fields__c(a configurable list of field API names). Returning more fields generally increases response size. - 4. If Production has a similar (or even higher) record count, why might it not fail?
- The 15 MB limit is about serialized payload size, not just record count. Differences in field values, text lengths, null vs. populated fields, and which fields are configured can make one org’s response exceed 15 MB while another stays just below it.
- 5. What’s the preferred mitigation if we cannot remove any fields from the configuration?
- Reduce the number of returned records by cleaning up/removing unused
csmso__Node_Advert_Assignment__crecords. This directly shrinks the payload while preserving required fields. - 6. How do we verify the fix worked after cleanup?
- Re-test by opening multiple Sales Orders and confirming (1) the alert “Remoting response size exceeded maximum of 15 MB” no longer appears, and (2) the Sales Order page (including initialization/line items) loads normally.
Matej Storga
Comments