jungm opened a new pull request, #276:
URL: https://github.com/apache/bval/pull/276

   Adds `ScenarioBenchmark`, a JMH benchmark that runs the same validation 
scenarios against BVal and Hibernate Validator, selected with `-p 
provider=bval|hibernate`. The scenarios cover mixed valid and invalid beans, 
explicit groups, `validateProperty`/`validateValue`, method parameters and 
return values, cascading into large collections and cycles, container elements, 
deep graphs, beans with many built-in constraints, composed and class-level 
constraints, and EL message expressions. Each scenario checks its expected 
violation count once per trial, so a provider can't look fast by skipping work.
   
   This is the baseline for the rest of the stack: every PR above this one 
quotes its numbers relative to the PR below it.
   
   Build fixes in `bval-perf`:
   - run the JMH annotation processor explicitly (`<proc>full</proc>`), since 
JDK 23+ no longer does so implicitly
   - register Tomcat's `ExpressionFactory` ahead of the bval-jsr test fixture, 
which re-resolves its delegate on every call
   - default both benchmark classes to 2 forks × (3 warmup + 5 measurement 
iterations of 1 s), so a plain run takes minutes rather than hours
   
   Run with:
   ```
   mvn -pl bval-jsr,bval-perf -am install -DskipTests
   java -cp <bval-perf test classpath> org.openjdk.jmh.Main ScenarioBenchmark 
-p provider=bval
   ```
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to