docs: @Override
  	protected void processRecord(Tuple2<Boolean, Row> change) {
  		synchronized (resultLock) {
  			// wait if the buffer is full
  			if (changeRecordBuffer.size() >= CHANGE_RECORD_BUFFER_SIZE) {
  				try {
  					resultLock.wait();
  				} catch (InterruptedException e) {
  					// ignore
  				}
  			} else {
  				changeRecordBuffer.add(change);
  			}
  		}
  	}