Saturday, January 24, 2015

Salesforce Governor Limits

Salesforce Governor Limits


Since Apex runs in a multitenant environment, the Apex run time engine strictly enforces a number of limits to ensure that runaway Apex does not monopolize shared resources. These limits, or governors, track and enforce the statistics outlined in the following table. If some Apex code ever exceeds a limit, the associated governor issues a run time exception that cannot be handled.


Description
Limit
Total number of SOQL queries issued
100
Total number of SOQL queries issued for Batch Apex and future methods
200
Total number of records retrieved by SOQL queries
50,000
Total number of records retrieved by Database.getQueryLocator
10,000
Total number of SOSL queries issued
20
Total number of records retrieved by a single SOSL query
200
Total number of DML statements issued
150
Total number of records processed as a result of DML statements,Approval.process, or database.emptyRecycleBin
10,000
Total number of executed code statements
200,000
Total number of executed code statements for Batch Apex and future methods
1,000,000
Total heap size
6 MB
Total heap size for Batch Apex and future methods
12 MB
Total stack depth for any Apex invocation that recursively fires triggers due toinsert, update, or delete statements
16
For loop list batch size
200
Total number of callouts (HTTP requests or Web services calls) in a request
10
Maximum timeout for all callouts (HTTP requests or Web services calls) in a request
120 seconds
Default timeout of callouts (HTTP requests or Web services calls) in a request
10 seconds
Total number of methods with the future annotation allowed per Apex invocation
10
Maximum size of callout request or response (HTTP request or Web services call)
3 MB
Total number of sendEmail methods allowed
10
Total number of describes allowed
100
Total number of classes that can be scheduled concurrently
25
Total number of test classes that can be queued per a 24–hour period
The greater of 500 or 10 multiplied by the number of test classes in the organization

Visualforce Limits

Available in: Contact Manager, Group, Professional, Enterprise,Performance, Unlimited, and Developer Editions


Limit

Value

Maximum response size for a Visualforce page

Less than 15 MB

Maximum view state size in a Visualforce page

135KB

Maximum size of a Visualforce email template

1 MB

Maximum file size for a file uploaded using a Visualforcepage

10 MB

Maximum size of HTML response before rendering, whenVisualforce page is rendered as PDF

Less than 15 MB

Maximum PDF file size for a Visualforce page rendered as a PDF

60 MB

Maximum total size of all images included in a Visualforcepage rendered as a PDF

30 MB

Maximum response size of a JavaScript remote call

15 MB

Default timeout for a JavaScript remoting call

30000milliseconds (30seconds)

Maximum timeout for a JavaScript remoting call

120000milliseconds (120seconds)

Maximum number of rows retrieved by queries for a singleVisualforce page request

50,000

Maximum number of rows retrieved by queries for a singleVisualforce page request in read-only mode

1 million

Maximum number of collection items that can be iterated in an iteration component such as <apex:pageBlockTable> and<apex:repeat>

1,000

Maximum number of collection items that can be iterated in an iteration component such as <apex:pageBlockTable> and<apex:repeat> in read-only mode

10,000

Maximum number of field sets that can be displayed on a single Visualforce page.

50

Maximum number of records that can be handled by StandardSetController

10,000



SOQL and SOSL Limits


Feature

Limit

Limit Description

SOQL statements

Maximum length of SOQL statements

By default, SOQL statements cannot exceed 20,000 characters in length.

SOSL statements

Maximum length of SOSL statements

The SOSL statement character limit is tied to the SOQL statement character limit defined for your organization. By default, SOQL and SOSL queries cannot exceed 20,000 characters.

SOSL search query strings

Maximum length ofSearchQuerystring

If the SearchQuery string is longer than 10,000 characters, no result rows are returned. If SearchQuery is longer than 4,000 characters, any logical operators are removed. For example, the ANDoperator in a statement with aSearchQuery that’s 4,001 characters will default to the OR operator, which could return more results than expected.

SOSL query results

Maximum number of rows returned

2,000 results total (API version 28.0 and later), unless you specify custom limits in the query. Previous API versions return 200 results.

Relationship queries

Relationship query limits

·         No more than 35 child-to-parent relationships can be specified in a query. A custom object allows up to 25 relationships, so you can reference all the child-to-parent relationships for a custom object in one query.
·         No more than 20 parent-to-child relationships can be specified in a query.
·         In each specified relationship, no more than five levels can be specified in a child-to-parent relationship. For example,Contact.Account.Owner.FirstName(three levels).
·         In each specified relationship, only one level of parent-to-child relationship can be specified in a query. For example, if the FROM clause specifies Account, the SELECT clause can specify only the Contact or other objects at that level. It could not specify a child object of Contact.

 

FOR VIEW and FOR REFERENCE

MaximumRecentlyViewedrecords allowed

The RecentlyViewed object is updated every time the logged-in user views or references a record. It is also updated when records are retrieved using the FOR VIEW or FOR REFERENCE clause in a SOQL query. To ensure that the most recent data is available, RecentlyViewed data is periodically truncated down to 200 records per object.

OFFSET clause

Maximum number of rows skipped by OFFSET

·he maximum offset is 2,000 rows. Requesting an offset greater than 2,000 will result in aNUMBER_OUTSIDE_VALID_RANGE error.

ORDER BY clause in SOQL statement

ORDER BY fields limit

32 fields


Metadata Limits



The following are limits for deploying and retrieving metadata. These limits apply to the Force.com IDE, the Force.com Migration Tool, and the Metadata API.

Metadata Limit
                Limit Description
Retrieving and deploying metadata
Metadata API can deploy and retrieve up to 5,000 filesor 400 MB at one time.
While a specific file size limit is not enforced, you might encounter out-of-memory errors for very large files.

Change sets
Inbound and outbound change sets can have up to5,000 files of metadata.



2 comments:

Unknown said...

The limit of QueryLocator for all records is up to 50 million records in an org..but i could see salesforce says "Total number of records retrieved by Database.getQueryLocator is 10,000"

Priyanka said...

Please update this post

Post a Comment

 
| ,