Since SPARUL updates are generally not meant to be transactional, it is best to run these in:

SQL> log_enable (2);

mode, which commits every operation as it is done. This prevents one from running out of rollback space. Also for bulk updates, transaction logging can be turned off. If so, one should do a manual checkpoint after the operation to ensure persistence across server restart since there is no roll forward log.

Alternatively, the "TransactionAfterImageLimit " parameter can be set in the virtuoso.ini config file to a higher value than its 50MB default:

#virtuoso.ini
...
[Parameters]
...
TransactionAfterImageLimit = N bytes default 50000000
...