Import and Export Transaction Handling and Feed Size

Salesforce B2C Commerce standard imports are designed to handle feeds of arbitrary sizes. As with every transactional system, the size of a transaction must be bounded. Standard behavior for imports that are triggered through the Business Manager and triggered by executing an import pipelet, is to commit after each object.

You can modify this behavior for import pipelets. If the import pipelet is embedded in an explicit transaction (transaction boundaries can be defined in a pipeline at transitions), all changes are committed with that enclosing transaction.

You can group imports of different object types (for example, catalog and content data) or other changes in a single transaction. B2C Commerce is designed to deal with transaction sizes of up to 1,000 business objects. You must make sure that the limit isn't exceeded.

We recommend that you use the standard behavior, committing after each object, whenever possible. Try to use this method when importing into a non-production environment. If the import fails (for example, some of the objects are imported and some are not) you can repeat the import. In a Production environment, however, always avoid inconsistencies. If you are importing to a Staging instance, then replicating to Production isn't possible. Sometimes, you have to embed the import into Production in an explicit transaction.