docs: protected void loadRemaining() {
          if (!loadedAll) {
              // Put all of the batches from the sequence into the buffer
              assert targetNumRowsInMemory >= 0L;
              assert batchSize != null;
              Batch batch = original.nextBatch();
              boolean loadIntoMemory = inMemoryBatches != null && actualNumRowsInMemory < targetNumRowsInMemory;
              while (batch != null) {
                  long rows = loadBatch(batch, loadIntoMemory, null);
                  if (batchSize.get() == 0L) batchSize.set(rows);
                  if (loadIntoMemory) {
                      assert inMemoryBatches != null;
                      if (actualNumRowsInMemory >= targetNumRowsInMemory) loadIntoMemory = false;
                  }
                  batch = original.nextBatch();
              }
              long numInMemory = inMemoryBatches != null ? actualNumRowsInMemory : 0L;
              totalSize = offHeapBatchesSupplier.size() + numInMemory;
              loadedAll = true;
              restartBatches();
          }
      }