code: public void removeAll(Transaction tran) throws MessageStoreException
    {
      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
        SibTr.entry(tc, "removeAll", tran);
  
      // 181632.1
      // We need to remove Item, ItemStreams and ReferenceStreams in three
      // different passes.  Phill ensures me this is not too expensive.
      Item item = null;
      SIMPItemStream itemStream = null;
      SIMPReferenceStream referenceStream = null;
  
      while (null != (item = findFirstMatchingItem(null)))
      {
        item.remove(tran, NO_LOCK_ID);
      }
  
      while (null != (itemStream
        = (SIMPItemStream)findFirstMatchingItemStream(null)))
      {
        itemStream.removeAll(tran);
      }
  
      while (null != (referenceStream
        = (SIMPReferenceStream)findFirstMatchingReferenceStream(null)))
      {
        referenceStream.removeAll(tran);
      }
  
      removeItemStream(tran, NO_LOCK_ID);
  
      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
        SibTr.exit(tc, "removeAllItems");
    }
docs: Removes all items from this Stream.
  <p>
  This function recursively removes Items, ItemStreams and ReferenceStreams.
  <p>
  WARNING: Be careful using this function, since trying to remove many
  items (more than 100) in more than one transaction may cause a transaction
  error, since a single transaction can only be so big.  Auto-commit
  transactions should be okay.  For a better database friendly deletion
  approach see @see com.ibm.ws.sib.msgstore.example.EmptyableItemStream
  <p>
  Feature 174199.2.13
  
  @param tran is the transaction to use for removals.
  
  @throws MessageStoreException if a problem occurs when actually removing
  from the Message Store.