[bv-dev] Changes to @ValidateExecutable due to a performance risk

Emmanuel Bernard emmanuel at hibernate.org
Wed Mar 13 03:41:39 EDT 2013


Hello guys,

Hardy discovered a flaw in Bean validation's @ValidateExecutable design
that could cause proper CDI implementations to be quite inefficient at
deployment time unless some very advanced class loader scanning is in
place. This scanning is necessary to any non crappy EE implementation
this days but our problem required cross module scanning which is less
accepted.

Since we discussed deployment time efficiency from the get go to accept 
method validation in EE, we have decided to change the design to accommodate for more
efficient designs implementable much more easily.

The end result is that @ValidateExecutable is slightly updated (with a
new default value IMPLICIT) and is renamed @ValidateOnExecution which we
find is a better name with the new design.

We did not take this decision lightly and I apologize for coming to you
with this change so late in the game but we feel that it's best to do
this change.

The precise changes are captured in the last two commits of
https://github.com/beanvalidation/beanvalidation-spec/pull/85

Let me know what you think.

Emmanuel


More information about the beanvalidation-dev mailing list