code: public void removeBulk(final Iterable<? extends Statement> statements,
              final boolean transaction) throws DataCorruptedException, IOException {
  
          Preconditions.checkNotNull(statements);
          checkWritable();
  
          try {
              if (!transaction && !this.store.existsTransactionMarker()) {
                  this.store.addTransactionMarker();
                  // log_enable affects only the current transaction.
                  this.connection.getQuadStoreConnection().prepareCall("log_enable(2)").execute();
              }
  
              this.connection.remove(statements);
              this.connection.commit();
  
          } catch (final SQLException sqle) {
              throw new IllegalStateException("Invalid internal operation.", sqle);
          } catch (final RepositoryException e) {
              throw new DataCorruptedException("Error while adding bulk data.", e);
          }
      }
docs: Removes the specified RDF statements from the triple store. Implementations are designed to
  perform high throughput insertion.
  
  @param statements
  the RDF statements to add
  @throws DataCorruptedException
  in case a non-recoverable data corruption situation is detected
  @throws IOException
  in case another IO error occurs not implying data corruption
  @throws IllegalStateException
  in case the transaction is read-only