docs: public void write() throws InternalLogException
    {
      if (tc.isEntryEnabled()) Tr.entry(tc, "write", this);
  
      // If the parent recovery log instance has experienced a serious internal error then prevent
      // this operation from executing.
      if (_recLog.failed())
      {
        if (tc.isEntryEnabled()) Tr.exit(tc, "write",this);
        throw new InternalLogException(null);
      }
  
      _controlLock.getSharedLock(LOCK_REQUEST_ID_RUSI_WRITE);
  
      // If there is unwritten data stored within this recoverable unit section then direct the 
      // parent recoverable unit to perform a write for this recoverable unit section. We have
      // to go via the parent because this class has no knowledge of the parents recovery log
      // record structure etc..
      if (_unwrittenDataSize > 0)
      {
        try
        {
          _recUnit.writeSection(this,_unwrittenDataSize + HEADER_SIZE);
        }
        catch(InternalLogException exc)
        {
          FFDCFilter.processException(exc, "com.ibm.ws.recoverylog.spi.RecoverableUnitSectionImpl.write", "437", this);
          if (tc.isEntryEnabled()) Tr.exit(tc, "write", exc);
          throw exc;
        }
      }
  
      try
      {
        _controlLock.releaseSharedLock(LOCK_REQUEST_ID_RUSI_WRITE);
      }
      catch(NoSharedLockException exc)
      {
        FFDCFilter.processException(exc, "com.ibm.ws.recoverylog.spi.RecoverableUnitSectionImpl.write", "449", this);
        if (tc.isEntryEnabled()) Tr.exit(tc, "write", "InternalLogException");
        throw new InternalLogException(exc);
      }
      
      if (tc.isEntryEnabled()) Tr.exit(tc, "write");
    }