# Envers AuditReader, extending query DSL by REVEND field in case of using ValidityAuditStrategy

**URL:** <https://discourse.hibernate.org/t/envers-auditreader-extending-query-dsl-by-revend-field-in-case-of-using-validityauditstrategy/12299>\
**Category:** Hibernate ORM\
**Created:** [May 22, 2026, 7:39am UTC](https://discourse.hibernate.org/t/envers-auditreader-extending-query-dsl-by-revend-field-in-case-of-using-validityauditstrategy/12299 "2026-05-22T07:39:25Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![Evgeny\_Knihuta](https://yyz1.discourse-cdn.com/flex035/user_avatar/discourse.hibernate.org/evgeny_knihuta/32/4321_2.png) [@Evgeny\_Knihuta](https://discourse.hibernate.org/u/Evgeny_Knihuta)\
**Post date:** [May 22, 2026, 7:39am UTC](https://discourse.hibernate.org/t/envers-auditreader-extending-query-dsl-by-revend-field-in-case-of-using-validityauditstrategy/12299/1 "2026-05-22T07:39:25Z")

</div>

Hi, according to our history display requirements, we must always additionally provide the previous revision, so we always execute two requests:

```java
Number previousRevision = (Number) reader.createQuery()
    .forRevisionsOfEntity(DictionaryRecordEntity.class, false, true)
    .addProjection(AuditEntity.revisionNumber().max())
    .add(AuditEntity.id().eq(id))
    .add(AuditEntity.revisionNumber().lt(currentRevisionNumber))
    .getSingleResult();

```

```java
reader.find(DictionaryRecordEntity.class, id, previousRevision);

```

We use ValidityAuditStrategy (REVEND field is present) and want to use a single query based on REVEND to find previous revision like:

```java
reader.createQuery()
    .forRevisionsOfEntity(DictionaryRecordEntity.class, false, false)
    .add(AuditEntity.id().eq(id)) .add(AuditEntity.revisionNumberEnd().eq(123))
    .setMaxResults(1)
    .getSingleResult();

```

Best regards.
