ИК
Анализ предикатов для прунинга партиций начинается в объекте FileSourceStrategy (похоже лучше класса не нашлось). И, судя по коду, должен отбирать партиции любой вложенности. Затем предикаты в неизменном виде передаются в экземляр класса InMemoryFileIndex, а там уже фильтруется коллекция InternalRow, в которой значения партиций. В дальнейшем читаются только файлы из выбранных партиций.
Есть предположение, что нужно попробовать продебагать в локальном тесте и посмотреть, не отфильтровался ли где-то предикат

