U4-9107 - Change BulkInsertRecords to use BulkCopy or TableDirect (SQLCE)

Created by Shannon Deminick 24 Oct 2016, 12:22:23 Updated by Stephan 26 Oct 2016, 17:24:56

Relates to: U4-9111

Subtask of: U4-9085

Change BulkInsertRecords to use BulkCopy or TableDirect (SQLCE) which should be massively faster (have added notes in the code in rev: ee8efbb1ab66498425da856d2dca69ba4063e16e)

I've already written most of this code, just need to port it over.

MySQL will continue to use the existing logic, they don't really have a bulk import utility apart from an external file which we don't want to use.


Shannon Deminick 25 Oct 2016, 10:31:09

PR for review: https://github.com/umbraco/Umbraco-CMS/pull/1544

See benchmarks here: http://issues.umbraco.org/issue/U4-9111

To test:

  • Ensure all unit tests pass
  • Ensure that you can rebuild the XML structures
  • Ensure you can modify user permissions in the user permission dialog and in the user permissions tree

(all of these things use the Bulk insert APIs)

Stephan 26 Oct 2016, 16:56:19

All tests passed Rebuild XML (using republish.aspx?xml=true) passed Modify permissions, user type defaults, passed Modify permissions, one user, passed

All good.

Stephan 26 Oct 2016, 17:24:51


Priority: Normal

Type: Bug

State: Fixed


Difficulty: Normal


Backwards Compatible: True

Fix Submitted:

Affected versions:

Due in version: 7.5.5

Sprint: Sprint 45

Story Points: 2.5