• Rohan Jain
  • NEWBIE
  • 0 Points
  • Member since 2017

  • Chatter
    Feed
  • 0
    Best Answers
  • 0
    Likes Received
  • 0
    Likes Given
  • 2
    Questions
  • 3
    Replies
I am trying to retrieve the results for a Bulk Query operation without PK chunking for XML.

When Retrieving the Results based on result id the result file I receive is truncated/ chopped off. I noticed this is happening when the result file is greater than 2 GB. Due to this an EOFException is thrown by my parser. 

The streaming of the result file stops at 2GB and I retreive the truncated XML data. Any idea about this behaviour?
I am using Bulk Query with contentType as XML to execute a SOQL with relationships. When I receive the result I notice the child nodes have elements such as <done>true</done> and <queryLocator xsi:nil="true" />. Something like this -

<queryResult>
<records>
<type>Account</type>
<id>xyz</id>
  <Cases>
            <done>true</done>
            <queryLocator xsi:nil="true" />
          
   </Cases></records></queryResult>

Why am I receiving <done> and <queryLocator> elements as these are used for queryMore which is only applicable to SOAP API right?
Is this a bug? If not what is the significance of these elements in bulk api?

 
I am trying to retrieve the results for a Bulk Query operation without PK chunking for XML.

When Retrieving the Results based on result id the result file I receive is truncated/ chopped off. I noticed this is happening when the result file is greater than 2 GB. Due to this an EOFException is thrown by my parser. 

The streaming of the result file stops at 2GB and I retreive the truncated XML data. Any idea about this behaviour?
I am using Bulk Query with contentType as XML to execute a SOQL with relationships. When I receive the result I notice the child nodes have elements such as <done>true</done> and <queryLocator xsi:nil="true" />. Something like this -

<queryResult>
<records>
<type>Account</type>
<id>xyz</id>
  <Cases>
            <done>true</done>
            <queryLocator xsi:nil="true" />
          
   </Cases></records></queryResult>

Why am I receiving <done> and <queryLocator> elements as these are used for queryMore which is only applicable to SOAP API right?
Is this a bug? If not what is the significance of these elements in bulk api?

 
I'm trying to retrieve all Tasks in our Salesforce instance, including those that were archived more than 12 months ago. Since we have over 3 million records, I decided to try the bulk api. It seemed promising until I ran into this error:

MALFORMED_QUERY: ALL ROWS not allowed in this context

Does bulk-api not support querying for archived tasks? I believe you simply include 'ALL ROWS' at the end of your SOQL query to retrieve deleted and archived records. Is there another way to do this using the bulk api? If not, this seems like a huge limitation. Archived tasks seem like a prime candidate for the bulk api.

Here's an example of one of my queries:

Select Id from Task Where CreatedDate >= 2013-01-01T00:00:00z and CreatedDate < 2013-03-01T00:00:00z ORDER BY Id ASC ALL ROWS

In the spirit of full discloser, I posted this on StackExchange (http://salesforce.stackexchange.com/questions/27326/how-to-query-archived-tasks-using-bulk-api)but we haven't yet been able to find  a dinitive solution.  I thought this mighte be a wider audience that could help.  Perhaps Bulk API is more geared towrads data uploads to Salesforce instead of querying.  I would love it if someone could tell me if running these queries via multiple SOQL queries (queryAll()) would yield similar performance.

Any help is appreciated, Andrew