after the last commits:
Running org.apache.bval.bench.ApacheTest
APACHE
Raw validation time: 1461ms {11198}
Raw parsing time: 10910ms {2000}
First parse and validate: 9115ms {10180}
Multithreaded validation: 3122ms
Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 27.33 sec
Running org.apache.bval.bench.HibernateTest
HIBERNATE
Raw validation time: 2043ms {11198}
Raw parsing time: 4118ms {2000}
First parse and validate: 3423ms {10180}
Multithreaded validation: 1278ms
Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 12.302 sec
Not sure why we are slow in multithreaded. Parsing is slow due to too much
reflection (we should be able to cut it but i didnt find how - help would
be welcomed ;)
*Romain Manni-Bucau*
*Twitter: @rmannibucau <https://twitter.com/rmannibucau>*
*Blog: **http://rmannibucau.wordpress.com/*<http://rmannibucau.wordpress.com/>
*LinkedIn: **http://fr.linkedin.com/in/rmannibucau*
*Github: https://github.com/rmannibucau*
2013/8/13 Romain Manni-Bucau <[email protected]>
> hehe, maybe i found a perf issue,
>
> when updating MetaBean i added a comment: // TODO: optimize sortings
>
> and profiling it seems this comment was important ;)
>
> *Romain Manni-Bucau*
> *Twitter: @rmannibucau <https://twitter.com/rmannibucau>*
> *Blog: **http://rmannibucau.wordpress.com/*<http://rmannibucau.wordpress.com/>
> *LinkedIn: **http://fr.linkedin.com/in/rmannibucau*
> *Github: https://github.com/rmannibucau*
>
>
>
> 2013/8/12 Matt Benson <[email protected]>
>
>> true
>>
>>
>> On Mon, Aug 12, 2013 at 10:35 AM, Romain Manni-Bucau <
>> [email protected]> wrote:
>>
>>> not exactly, my bench (which was simpler than this one) showed it was
>>> comparable (0.5 was good)
>>>
>>> but in my test graph was pretty trivial
>>>
>>> *Romain Manni-Bucau*
>>> *Twitter: @rmannibucau <https://twitter.com/rmannibucau>*
>>> *Blog:
>>> **http://rmannibucau.wordpress.com/*<http://rmannibucau.wordpress.com/>
>>> *LinkedIn: **http://fr.linkedin.com/in/rmannibucau*
>>> *Github: https://github.com/rmannibucau*
>>>
>>>
>>>
>>> 2013/8/12 Matt Benson <[email protected]>
>>>
>>>> Strange that your benchmarks showed our performance to be pretty good
>>>> compared to Hibernate Validator, but these show us to be relatively
>>>> horrible. :(
>>>>
>>>> Matt
>>>>
>>>>
>>>> On Mon, Aug 12, 2013 at 10:24 AM, Romain Manni-Bucau <
>>>> [email protected]> wrote:
>>>>
>>>>> here is what i get with this project:
>>>>>
>>>>> APACHE
>>>>> Raw validation time: 3013ms {11165}
>>>>> Raw parsing time: 14318ms {2000}
>>>>> First parse and validate: 12988ms {10150}
>>>>> Multithreaded validation: 4062ms
>>>>> Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 41.522
>>>>> sec
>>>>> Running org.apache.bval.bench.HibernateTest
>>>>> HIBERNATE
>>>>> Raw validation time: 2031ms {11165}
>>>>> Raw parsing time: 3712ms {2000}
>>>>> First parse and validate: 4020ms {10150}
>>>>> Multithreaded validation: 1582ms
>>>>> Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 13.987
>>>>> sec
>>>>>
>>>>> Here is the diff to test against bval 1.1 impls:
>>>>>
>>>>> Index: pom.xml
>>>>> ===================================================================
>>>>> --- pom.xml (revision 1513159)
>>>>> +++ pom.xml (working copy)
>>>>> @@ -26,7 +26,7 @@
>>>>> <parent>
>>>>> <groupId>org.apache.bval</groupId>
>>>>> <artifactId>bval-parent</artifactId>
>>>>> - <version>0.2-incubating-SNAPSHOT</version>
>>>>> + <version>2.0-SNAPSHOT</version>
>>>>> </parent>
>>>>>
>>>>> <artifactId>jsr303-impl-bench</artifactId>
>>>>> @@ -34,12 +34,24 @@
>>>>> <name>Apache Bean Validation :: jsr303-impl-bench
>>>>> (optional)</name>
>>>>>
>>>>> <properties>
>>>>> - <apache-bval.version>0.1-incubating</apache-bval.version>
>>>>> - <hibernate-val.version>4.1.0.CR1</hibernate-val.version>
>>>>> + <apache-bval.version>2.0-SNAPSHOT</apache-bval.version>
>>>>> + <hibernate-val.version>5.0.1.Final</hibernate-val.version>
>>>>> </properties>
>>>>>
>>>>> <dependencies>
>>>>> <dependency>
>>>>> + <groupId>org.apache.geronimo.specs</groupId>
>>>>> + <artifactId>geronimo-el_2.2_spec</artifactId>
>>>>> + <version>1.0.2</version>
>>>>> + <scope>test</scope>
>>>>> + </dependency>
>>>>> + <dependency>
>>>>> + <groupId>org.apache.tomcat</groupId>
>>>>> + <artifactId>tomcat-jasper-el</artifactId>
>>>>> + <version>7.0.42</version>
>>>>> + <scope>test</scope>
>>>>> + </dependency>
>>>>> + <dependency>
>>>>> <groupId>com.sun.codemodel</groupId>
>>>>> <artifactId>codemodel</artifactId>
>>>>> <version>2.2</version>
>>>>> @@ -52,7 +64,7 @@
>>>>> <dependency>
>>>>> <groupId>javax.validation</groupId>
>>>>> <artifactId>validation-api</artifactId>
>>>>> - <version>1.0.0.GA</version>
>>>>> + <version>1.1.0.Final</version>
>>>>> </dependency>
>>>>> <dependency>
>>>>> <groupId>org.apache.bval</groupId>
>>>>>
>>>>>
>>>>> *Romain Manni-Bucau*
>>>>> *Twitter: @rmannibucau <https://twitter.com/rmannibucau>*
>>>>> *Blog:
>>>>> **http://rmannibucau.wordpress.com/*<http://rmannibucau.wordpress.com/>
>>>>> *LinkedIn: **http://fr.linkedin.com/in/rmannibucau*
>>>>> *Github: https://github.com/rmannibucau*
>>>>>
>>>>>
>>>>>
>>>>> 2013/8/12 Matt Benson <[email protected]>
>>>>>
>>>>>> I agree, looks reasonable. :) There is also some stuff at
>>>>>> http://svn.apache.org/viewvc/bval/sandbox/jsr303-impl-bench/ if you
>>>>>> had any interest in merging your work there.
>>>>>>
>>>>>> Matt
>>>>>>
>>>>>>
>>>>>> On Mon, Aug 12, 2013 at 6:58 AM, Romain Manni-Bucau <
>>>>>> [email protected]> wrote:
>>>>>>
>>>>>>> Hi
>>>>>>>
>>>>>>> just did a simple test:
>>>>>>> https://gist.github.com/rmannibucau/6dab2d80ea2b26c40876
>>>>>>>
>>>>>>> with:
>>>>>>>
>>>>>>> public class ValidatedBeanL1 {
>>>>>>> @Valid
>>>>>>> private ValidatedBeanL2 l2;
>>>>>>>
>>>>>>> @Min(1)
>>>>>>> private int size;
>>>>>>> }
>>>>>>>
>>>>>>> and
>>>>>>>
>>>>>>>
>>>>>>> public class ValidatedBeanL2 {
>>>>>>> @NotNull
>>>>>>> private String name;
>>>>>>>
>>>>>>> @Size(min = 3, max = 5)
>>>>>>> private String fullname;
>>>>>>> }
>>>>>>>
>>>>>>> It doesn't look bad to me but wdyt?
>>>>>>>
>>>>>>> *Romain Manni-Bucau*
>>>>>>> *Twitter: @rmannibucau <https://twitter.com/rmannibucau>*
>>>>>>> *Blog:
>>>>>>> **http://rmannibucau.wordpress.com/*<http://rmannibucau.wordpress.com/>
>>>>>>> *LinkedIn: **http://fr.linkedin.com/in/rmannibucau*
>>>>>>> *Github: https://github.com/rmannibucau*
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> 2013/7/17 Matt Benson <[email protected]>
>>>>>>>
>>>>>>>> Great work, Romain!
>>>>>>>>
>>>>>>>> Matt
>>>>>>>>
>>>>>>>>
>>>>>>>> On Wed, Jul 17, 2013 at 10:34 AM, Romain Manni-Bucau
>>>>>>>> <[email protected]>wrote:
>>>>>>>>
>>>>>>>> > Hi,
>>>>>>>> >
>>>>>>>> > FYI with some hacks (EJB hacks (@Resource) + cdi interceptor
>>>>>>>> hacks (adding
>>>>>>>> > beans.xml with needed interceptors instead of using discovery) +
>>>>>>>> jndi hack
>>>>>>>> > (lookup)) we get now on this branch:
>>>>>>>> >
>>>>>>>> > *Tests run: 758, Failures: 0, Errors: 0, Skipped: 0*
>>>>>>>> > *
>>>>>>>> > *
>>>>>>>> > PS: it needs OWB trunk built with cdi-1.1 profile
>>>>>>>> >
>>>>>>>> > *Romain Manni-Bucau*
>>>>>>>> > *Twitter: @rmannibucau <https://twitter.com/rmannibucau>*
>>>>>>>> > *Blog: **http://rmannibucau.wordpress.com/*<
>>>>>>>> > http://rmannibucau.wordpress.com/>
>>>>>>>> > *LinkedIn: **http://fr.linkedin.com/in/rmannibucau*
>>>>>>>> > *Github: https://github.com/rmannibucau*
>>>>>>>> >
>>>>>>>> >
>>>>>>>> >
>>>>>>>> > 2013/7/1 Romain Manni-Bucau <[email protected]>
>>>>>>>> >
>>>>>>>> > > Hi guys,
>>>>>>>> > >
>>>>>>>> > > just created a branch to play with bean validation 1.1
>>>>>>>> > >
>>>>>>>> > > here it is
>>>>>>>> https://svn.apache.org/repos/asf/bval/branches/bval-11/
>>>>>>>> > >
>>>>>>>> > > it doesn't fully pass TCKs ATM because we'd need cdi 1.1 impl
>>>>>>>> (and it
>>>>>>>> > > would be great to use OWB ;) + some refactorings before going
>>>>>>>> further but
>>>>>>>> > > it is a start.
>>>>>>>> > >
>>>>>>>> > > *Romain Manni-Bucau*
>>>>>>>> > > *Twitter: @rmannibucau <https://twitter.com/rmannibucau>*
>>>>>>>> > > *Blog: **http://rmannibucau.wordpress.com/*<
>>>>>>>> > http://rmannibucau.wordpress.com/>
>>>>>>>> > > *LinkedIn: **http://fr.linkedin.com/in/rmannibucau*
>>>>>>>> > > *Github: https://github.com/rmannibucau*
>>>>>>>> > >
>>>>>>>> > >
>>>>>>>> >
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>
>