AnsweredAssumed Answered

Java SOAP API - getMultipleLeads hangs even with small batch sizes

Question asked by Jon Wu on Jan 8, 2015
Latest reply on Jan 13, 2015 by Jon Wu
getMultiple leads is hanging for me even with a batch size of 1 or 50 vs 1000. It simply never returns.

I'm trying to get all leads so that I can deduplicate them all. I have logic to grab leads in batches of 1000 where I only return 2 fields for the best performance. This was working fine in May when I wrote it, but that's when I only had about 40k leads vs 500k now.

I'm setting up my request like this:
// Create Request
    ParamsGetMultipleLeads request = new ParamsGetMultipleLeads();
    // Request Using LastUpdateAtSelector
    ////////////////////////////////////////////////////////
    LastUpdateAtSelector leadSelector = new LastUpdateAtSelector();
    GregorianCalendar since = new GregorianCalendar();
    since.set(2014, Calendar.MAY, 12);
    DatatypeFactory factory = null;
    try {
      factory = DatatypeFactory.newInstance();
    } catch (DatatypeConfigurationException e) {
      LOG.error("Could not create DatatypeFactory", e);
    }
    leadSelector.setOldestUpdatedAt(factory.newXMLGregorianCalendar(since));
    request.setLeadSelector(leadSelector);

ArrayOfString attributes = new ArrayOfString();
attributes.getStringItems().add("Email");
attributes.getStringItems().add("PersonContactId");
request.setIncludeAttributes(attributes);
It appears that the last updated at selector is what's causing an issue here, but it also looks like using that is the only way to fetch all leads. If I set the LastUpdateAtSelector to a few days ago everything works, but when I set it to something like May 2014 so I can get all my leads, it doesn't work.

Any ideas?

This sounds a bit like https://community.marketo.com/MarketoDiscussionDetail?id=90650000000PiMkAAK which was lacking a response.

Outcomes