@Test
  public void testHistory() throws IOException, InterruptedException {
    TableIdentifier identifier = TableIdentifier.of("default", "source");
    Table table = testTables.createTableWithVersions(shell, identifier.name(),
        HiveIcebergStorageHandlerTestUtils.CUSTOMER_SCHEMA, fileFormat,
        HiveIcebergStorageHandlerTestUtils.CUSTOMER_RECORDS, 1);
    List<Object[]> history = shell.executeStatement("SELECT snapshot_id FROM default.source.history");
    Assert.assertEquals(table.history().size(), history.size());
    for (int i = 0; i < table.history().size(); ++i) {
      Assert.assertEquals(table.history().get(i).snapshotId(), history.get(i)[0]);
    }
  }
Tests that vectorized ORC reading code path correctly handles when the same ORC file is split into multiple parts.
Although the split offsets and length will not always include the file tail that contains the metadata, the
vectorized reader needs to make sure to handle the tail reading regardless of the offsets. If this is not done
correctly, the last SELECT query will fail.
@throws Exception - any test error
iceberg/iceberg-handler/src/test/java/org/apache/iceberg/mr/hive/TestHiveIcebergSelects.java