private Optional<Record> fetch(final DSLContext context, final int id) {
        return context
                .select()
                .from(PROCESSOR_FILTER)
                .join(PROCESSOR_FILTER_TRACKER)
                .on(PROCESSOR_FILTER.FK_PROCESSOR_FILTER_TRACKER_ID.eq(PROCESSOR_FILTER_TRACKER.ID))
                .join(PROCESSOR)
                .on(PROCESSOR_FILTER.FK_PROCESSOR_ID.eq(PROCESSOR.ID))
                .where(PROCESSOR_FILTER.ID.eq(id))
                .fetchOptional();
    }
Physically delete old processor filters that are logically deleted with an update time older than the threshold.

@param deleteThreshold Only physically delete filters with an update time older than the threshold.
@return The processor filter UUIDs of all the processor filters deleted.
stroom-processor/stroom-processor-impl-db/src/main/java/stroom/processor/impl/db/ProcessorFilterDaoImpl.java