Skip to content

Implementation of new IBulkForceClient#248

Open
rdev5 wants to merge 7 commits into
wadewegner:masterfrom
mattborja:master
Open

Implementation of new IBulkForceClient#248
rdev5 wants to merge 7 commits into
wadewegner:masterfrom
mattborja:master

Conversation

@rdev5

@rdev5 rdev5 commented Apr 14, 2017

Copy link
Copy Markdown

Derives from ForceClient (IForceClient) and implements new IBulkForceClient interface for supporting creation of bulk upsert jobs with externalIdFieldName.

rdev5 added 4 commits April 14, 2017 11:38
…to protected

Enables derived classes to be created and implement their own job creation routines (i.e. bulk upserts).
Derives from ForceClient (IForceClient) and implements new IBulkForceClient interface for supporting creation of bulk upsert jobs with `externalIdFieldName`.
@salesforce-cla

Copy link
Copy Markdown

Thanks for the contribution! Before we can merge this, we need @rdev5 to sign the Salesforce Contributor License Agreement.

@rdev5

rdev5 commented Apr 14, 2017

Copy link
Copy Markdown
Author

FYI, CLA has just been signed.

rdev5 added 3 commits April 14, 2017 12:06
Derive from IForceClient
Include UpsertJobInfo.cs in project
Include IBulkForceClient.cs and BulkForceClient.cs in project
@rdev5

rdev5 commented Apr 17, 2017

Copy link
Copy Markdown
Author

Just wanted to update this PR with some test results.

A recent test (4/17/2017) showed 4k records successfully imported* into Salesforce using the new batch upsert functionality introduced in this PR.

*Original batch size was 10k, of which 6k failed due to STORAGE_LIMIT_EXCEEDED on the account (free)

@naicigam

Copy link
Copy Markdown

Thanks for the great work! I am really looking forward to this PR!

@mjames15

Copy link
Copy Markdown

Any idea when this will get merged? We need to use the bulk client to upsert records.

@jorgeAChacon

Copy link
Copy Markdown

Is there a plan for this code to be merged in the near future?

@rdev5

rdev5 commented Dec 13, 2017

Copy link
Copy Markdown
Author

Attempted to reach out to Wade Wegner just now to also call attention to a commit that appears to be affecting Travis CI builds. We'll see if he responds.

@FrontLineMedia

Copy link
Copy Markdown

Stupid question, but are you doing this with the 1.3.2 version of the nuget package or the current master of the github ?

@rdev5

rdev5 commented Apr 4, 2018

Copy link
Copy Markdown
Author

@FrontLineMedia Sorry for the delayed response.

This was done from a fork of the master branch of this repository which can be found here: https://github.com/rdev5/Force.com-Toolkit-for-NET/commits/master

At this time, it appears this repository has been left unmaintained. My recommendation would be to do as we did: fork the repo to obtain a snapshot, audit/review the code as you deem necessary, and import it as a project into your solution. This way you can trace, debug, and do whatever else you need to do for your application.

Just to update everyone, we're coming up to a year now from the time this pull request was first submitted and it is still used in production to this day.

@wadewegner

Copy link
Copy Markdown
Owner

I feel so bad for not making progress on this. I'll definitely work this into the priority queue for incorporating.

@rdev5

rdev5 commented Aug 18, 2018

Copy link
Copy Markdown
Author

@wadewegner Completely understand; we all get busy :)

@wadewegner

Copy link
Copy Markdown
Owner

@rdev5 Do we still need this PR? I haven't dug into it too much, but we do have bulk methods in ForceClient now.

@rdev5

rdev5 commented Aug 22, 2018

Copy link
Copy Markdown
Author

@wadewegner Do you have commit IDs I could look at? Still looking for where bulk methods were recently introduced into ForceClient...

For reference, see also #246 (BulkForceClient missing from NuGet) for history leading to the submission of this PR.

@wharri220

Copy link
Copy Markdown
Contributor

I'm not seeing the necessary Bulk operations on the ForceClient. This PR is still needed

@Zhaph

Zhaph commented Jan 11, 2019

Copy link
Copy Markdown

@wharri220 There doesn't appear to be an explicit Bulk Client - the methods to support bulk operations are on the main Client - RunJob and RunJobAndPoll and the Async versions (Lines 241ff in ForceClient.cs).

However you can currently only submit a list of objects, it doesn't currently support CSV upload, etc.

await client.RunJobAndPollAsync("Contact", BulkConstants.OperationType.Insert,
                    new List<SObjectList<Contact>> {batch})

Also has an issue with the Upsert operation as you can't specify an ExternalIdField ( #331 ).

@mattborja

Copy link
Copy Markdown

@wadewegner Sounds like this is still needed. Thoughts?

Also, let me know if you need me to resolve the current conflicts in this branch.

@Zhaph

Zhaph commented Jul 28, 2019

Copy link
Copy Markdown

@mattborja I've got another pull request that supercedes this one and fixes the missing elements on the ForceClient to support bulk operations - #334

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

9 participants