protected ConnectorSplitSource getSplits()

in paimon-trino-common/src/main/java/org/apache/paimon/trino/TrinoSplitManagerBase.java [36:50]


    protected ConnectorSplitSource getSplits(
            ConnectorTableHandle connectorTableHandle, ConnectorSession session) {
        // TODO dynamicFilter?
        // TODO what is constraint?

        TrinoTableHandle tableHandle = (TrinoTableHandle) connectorTableHandle;
        Table table = tableHandle.tableWithDynamicOptions(session);
        ReadBuilder readBuilder = table.newReadBuilder();
        new TrinoFilterConverter(table.rowType())
                .convert(tableHandle.getFilter())
                .ifPresent(readBuilder::withFilter);
        List<Split> splits = readBuilder.newScan().plan().splits();
        return new TrinoSplitSource(
                splits.stream().map(TrinoSplit::fromSplit).collect(Collectors.toList()));
    }