I am having the same experience when utilizing read_files on a hive-partitioned datalake of text files on Azure.  Oddly, the query profile reflects that the partition filters are being applied appropriately, and the total number of files/bytes read reflects that, but the "Optimizing query & pruning files" step jumps from milliseconds to minutes when using partition filters versus querying a subfolder directly, despite the fact that the file/byte count is the same.