I have a problem with data extraction with informatica from Salesforce. Sometimes it happens that the record extraction is limited to 2000 even if Query request size is set to higher values. This value must be set directly during the extraction by informatica, right? Can I set this parameter on SFDC? Why sometimes records are more than 2000 and sometimes not?

  • 1
    It should never be more than 2000 per call. – sfdcfox Apr 6 '18 at 14:01
  • ok but i can read in the documentation -> help.salesforce.com/… Query request size In a single export or query operation, records are returned from Salesforce in increments of this size. The maximum value is 2,000 records. Larger values may improve performance but use more memory on the client. this means that if you set a value greater than 2000 it sometimes returns them all and sometimes not? Or is impossible extract more or is it impossible to extract more than 2000 records? and values ​​above 2000 can not be set? – Pericle Parquet Apr 6 '18 at 14:06
  • 1
    Note that the Query Size is per page, queries can return millions of records, but will be broken up into pages of up to this size. – sfdcfox Apr 6 '18 at 14:12
  • Query request size must be set in Salesforce or by informatica? – Pericle Parquet Apr 6 '18 at 14:25

The Query Size value is a hint to Salesforce, provided by the client, saying that the client can accept more records per page than the default. Clients that perform queries (including Informatica), end up doing something like this:

results = doQuery(query);
while(true) {
  if(results.done) {
    break; // No more records to save
  } else {
    results = doQueryMore(results.queryLocator);

The Query Size determines how many records are returned by doQuery and each doQueryMore. Larger sizes use more memory but fewer API calls. If salesforce determines that the results would result in payloads larger than the maximum value, it may reduce the Query Size to accommodate the limits (that's why it's called a hint). Valid values for this attribute are 200 to 2,000. For Informatica, I'm pretty sure you can always set this to 2,000 for the best performance.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.