### Question:
TableReader implements Closeable { public boolean reload() { return reloadMethod.reload(this); } TableReader(CairoConfiguration configuration, CharSequence tableName); static int getPrimaryColumnIndex(int base, int index); double avgDouble(int columnIndex); @Override void close(); void closeColumnForRemove(int columnIndex); void closeColumnForRemove(CharSequence columnName); long floorToPartitionTimestamp(long timestamp); BitmapIndexReader getBitmapIndexReader(int columnBase, int columnIndex, int direction); int getColumnBase(int partitionIndex); TableReaderRecordCursor getCursor(); long getDataVersion(); long getMaxTimestamp(); RecordMetadata getMetadata(); long getMinTimestamp(); long getPageAddressAt(int partitionIndex, long row, int columnIndex); long getPageValueCount(int partitionIndex, long rowLo, long rowHi, int columnIndex); int getPartitionCount(); int getPartitionCountBetweenTimestamps(long partitionTimestamp1, long partitionTimestamp2); int getPartitionedBy(); SymbolMapReader getSymbolMapReader(int columnIndex); String getTableName(); long getVersion(); boolean isOpen(); double maxDouble(int columnIndex); double minDouble(int columnIndex); boolean reload(); void reshuffleSymbolMapReaders(long pTransitionIndex); long size(); double sumDouble(int columnIndex); ReadOnlyColumn getColumn(int absoluteIndex); long getColumnTop(int base, int columnIndex); long openPartition(int partitionIndex);  }### Answer:
@Test public void testReloadWithoutData() throws Exception { TestUtils.assertMemoryLeak(() -> { try (TableModel model = new TableModel(configuration, "tab", PartitionBy.DAY).col("x", ColumnType.SYMBOL).col("y", ColumnType.LONG)) { CairoTestUtils.create(model); } try (TableWriter writer = new TableWriter(configuration, "tab")) { TableWriter.Row r = writer.newRow(); r.putSym(0, "hello"); r.append(); writer.rollback(); try (TableReader reader = new TableReader(configuration, "tab")) { writer.addColumn("z", ColumnType.SYMBOL); Assert.assertTrue(reader.reload()); writer.addColumn("w", ColumnType.INT); Assert.assertTrue(reader.reload()); } } }); }