[hibernate-commits] [hibernate/hibernate-validator] 338e4c: HV-1480 Add a hv-6.0 entry to be able to compare t...

GitHub noreply at github.com
Wed Oct 18 10:27:28 EDT 2017


  Branch: refs/heads/master
  Home:   https://github.com/hibernate/hibernate-validator
  Commit: 338e4c47b6a9611e9e6dc254a000873e4df41b0c
      https://github.com/hibernate/hibernate-validator/commit/338e4c47b6a9611e9e6dc254a000873e4df41b0c
  Author: Guillaume Smet <guillaume.smet at gmail.com>
  Date:   2017-10-18 (Wed, 18 Oct 2017)

  Changed paths:
    M performance/pom.xml

  Log Message:
  -----------
  HV-1480 Add a hv-6.0 entry to be able to compare the latest stable with
our current snapshot


  Commit: 103cb5edb2d7c829f47f43871fcdc69f60f9637c
      https://github.com/hibernate/hibernate-validator/commit/103cb5edb2d7c829f47f43871fcdc69f60f9637c
  Author: Guillaume Smet <guillaume.smet at gmail.com>
  Date:   2017-10-18 (Wed, 18 Oct 2017)

  Changed paths:
    M performance/README.md
    A performance/src/main/java/org/hibernate/validator/performance/cascaded/CascadedWithLotsOfItemsValidation.java

  Log Message:
  -----------
  HV-1480 Add a benchmark validating a bean containing a lot of beans to
cascade to


  Commit: 68a15fb085a9c4adde3ecddcd65a8075cc08adf9
      https://github.com/hibernate/hibernate-validator/commit/68a15fb085a9c4adde3ecddcd65a8075cc08adf9
  Author: Guillaume Smet <guillaume.smet at gmail.com>
  Date:   2017-10-18 (Wed, 18 Oct 2017)

  Changed paths:
    M engine/src/main/java/org/hibernate/validator/internal/engine/path/PathImpl.java

  Log Message:
  -----------
  HV-1480 Avoid removing and adding element to the node list

We can directly set the element in the list. It avoids some list
resizing.


  Commit: 237aeb8945e8cbf9598782c0a8c55d56d92f171e
      https://github.com/hibernate/hibernate-validator/commit/237aeb8945e8cbf9598782c0a8c55d56d92f171e
  Author: Guillaume Smet <guillaume.smet at gmail.com>
  Date:   2017-10-18 (Wed, 18 Oct 2017)

  Changed paths:
    M engine/src/main/java/org/hibernate/validator/internal/engine/path/PathImpl.java

  Log Message:
  -----------
  HV-1480 Copy the hashCode in the copy constructor


  Commit: 87affe03d84f5998072585ff0c14030c1911344a
      https://github.com/hibernate/hibernate-validator/commit/87affe03d84f5998072585ff0c14030c1911344a
  Author: Guillaume Smet <guillaume.smet at gmail.com>
  Date:   2017-10-18 (Wed, 18 Oct 2017)

  Changed paths:
    M engine/src/main/java/org/hibernate/validator/internal/engine/groups/DefaultValidationOrder.java
    M engine/src/main/java/org/hibernate/validator/internal/engine/groups/ValidationOrder.java
    M engine/src/main/java/org/hibernate/validator/internal/engine/groups/ValidationOrderGenerator.java

  Log Message:
  -----------
  HV-1480 Avoid initializing lists and maps in the common case where we
only have the default group

Also optimize a bit the advanced case with groups.


  Commit: 4a053a549668d4e00dd1ce7021ab0d08ea31c6b2
      https://github.com/hibernate/hibernate-validator/commit/4a053a549668d4e00dd1ce7021ab0d08ea31c6b2
  Author: Guillaume Smet <guillaume.smet at gmail.com>
  Date:   2017-10-18 (Wed, 18 Oct 2017)

  Changed paths:
    M engine/src/main/java/org/hibernate/validator/internal/engine/constraintvalidation/ConstraintValidatorContextImpl.java

  Log Message:
  -----------
  HV-1480 Avoid creating a list in the common case when we only have the
default violation

Also optimize a bit the concatenation of the default violation and the
custom ones to avoid creating a list too small and resize it each time.


  Commit: 9388c053a770dccd696ddcd314990c649efb2fb8
      https://github.com/hibernate/hibernate-validator/commit/9388c053a770dccd696ddcd314990c649efb2fb8
  Author: Guillaume Smet <guillaume.smet at gmail.com>
  Date:   2017-10-18 (Wed, 18 Oct 2017)

  Changed paths:
    M engine/src/main/java/org/hibernate/validator/internal/engine/path/NodeImpl.java

  Log Message:
  -----------
  HV-1480 Avoid computing the hashCode if not necessary

A lot of NodeImpls are created during the build of the path and some of
them are simply discarded as they are "modified" (NodeImpl are immutable
so we create a new) further away. Thus we better avoid building the
hashCode each time.


  Commit: 7546a0c14bd70d6c4b707cb9bc4d333a87891148
      https://github.com/hibernate/hibernate-validator/commit/7546a0c14bd70d6c4b707cb9bc4d333a87891148
  Author: Guillaume Smet <guillaume.smet at gmail.com>
  Date:   2017-10-18 (Wed, 18 Oct 2017)

  Changed paths:
    M engine/src/main/java/org/hibernate/validator/internal/engine/path/NodeImpl.java

  Log Message:
  -----------
  HV-1480 Don't take into account the parent in hashCode and equals

Otherwise, we "compare" the whole path several times while comparing a
path.


  Commit: 3c3354ab8f4917dc4c8ed6fc391ef741624896c8
      https://github.com/hibernate/hibernate-validator/commit/3c3354ab8f4917dc4c8ed6fc391ef741624896c8
  Author: Guillaume Smet <guillaume.smet at gmail.com>
  Date:   2017-10-18 (Wed, 18 Oct 2017)

  Changed paths:
    M engine/src/main/java/org/hibernate/validator/internal/engine/path/PathImpl.java

  Log Message:
  -----------
  HV-1480 Implement a copy on write strategy for the node list

It avoids copying the list when not strictly necessary


  Commit: 710f206237078198eca3e89413449b7d6586602b
      https://github.com/hibernate/hibernate-validator/commit/710f206237078198eca3e89413449b7d6586602b
  Author: Guillaume Smet <guillaume.smet at gmail.com>
  Date:   2017-10-18 (Wed, 18 Oct 2017)

  Changed paths:
    M engine/src/main/java/org/hibernate/validator/internal/engine/ValidationContext.java

  Log Message:
  -----------
  HV-1480 Centralize the processed works in one single set

It avoids a lot of initialization/resizing and in the end it's more
efficient.


  Commit: 17971aa16d8e402ca6b2d2a7c421718317af3c6f
      https://github.com/hibernate/hibernate-validator/commit/17971aa16d8e402ca6b2d2a7c421718317af3c6f
  Author: Guillaume Smet <guillaume.smet at gmail.com>
  Date:   2017-10-18 (Wed, 18 Oct 2017)

  Changed paths:
    M engine/src/main/java/org/hibernate/validator/internal/engine/ValidatorImpl.java
    M engine/src/main/java/org/hibernate/validator/internal/engine/ValueContext.java
    M engine/src/main/java/org/hibernate/validator/internal/engine/constraintvalidation/ConstraintValidatorContextImpl.java
    M engine/src/main/java/org/hibernate/validator/internal/engine/path/NodeImpl.java
    M engine/src/main/java/org/hibernate/validator/internal/engine/path/PathImpl.java
    M engine/src/main/java/org/hibernate/validator/internal/metadata/core/MetaConstraint.java

  Log Message:
  -----------
  HV-1480 Setting the key or the index already makes the node iterable

So we don't need to do it twice. Note that this change uncovers the fact
that in ConstraintValidatorContext, calling atKey() or atIndex() makes
the node iterable.

It was already the case before and I think it's acceptable.

It brings its own performance improvements as it avoids initializing 1
NodeImpl and creating 1 copy of the Path.


  Commit: 4b8189a3776764a7064ded00d87605e64b1ff1ce
      https://github.com/hibernate/hibernate-validator/commit/4b8189a3776764a7064ded00d87605e64b1ff1ce
  Author: Guillaume Smet <guillaume.smet at gmail.com>
  Date:   2017-10-18 (Wed, 18 Oct 2017)

  Changed paths:
    M engine/src/main/java/org/hibernate/validator/internal/engine/path/PathImpl.java

  Log Message:
  -----------
  HV-1480 We expect at least one node in the path so let's initialize the
list with one element

It doesn't seem necessary to consider more elements as the list will be
copied when new nodes will be added.


  Commit: 985ad8e681fcfc2634446c251562d2b6ea25410d
      https://github.com/hibernate/hibernate-validator/commit/985ad8e681fcfc2634446c251562d2b6ea25410d
  Author: Guillaume Smet <guillaume.smet at gmail.com>
  Date:   2017-10-18 (Wed, 18 Oct 2017)

  Changed paths:
    M engine/src/main/java/org/hibernate/validator/internal/engine/path/PathImpl.java

  Log Message:
  -----------
  HV-1480 Even if not strictly necessary, the leaf node should be
correctly set in all constructors


  Commit: 22dad48a2fde9d418c88c73bb867a1c41efc36a4
      https://github.com/hibernate/hibernate-validator/commit/22dad48a2fde9d418c88c73bb867a1c41efc36a4
  Author: Guillaume Smet <guillaume.smet at gmail.com>
  Date:   2017-10-18 (Wed, 18 Oct 2017)

  Changed paths:
    M performance/src/main/java/org/hibernate/validator/performance/cascaded/CascadedValidation.java
    M performance/src/main/java/org/hibernate/validator/performance/simple/SimpleValidation.java

  Log Message:
  -----------
  HV-1480 Reduce the number of iterations in the other benchmarks


  Commit: b74d32005a759a9df653cf2833eecc240959862c
      https://github.com/hibernate/hibernate-validator/commit/b74d32005a759a9df653cf2833eecc240959862c
  Author: Guillaume Smet <guillaume.smet at gmail.com>
  Date:   2017-10-18 (Wed, 18 Oct 2017)

  Changed paths:
    M performance/src/main/java/org/hibernate/validator/performance/BenchmarkRunner.java

  Log Message:
  -----------
  HV-1480 Add the new benchmark to the default benchmarks


  Commit: bbee5ea510aec133754480663be64f70d940110f
      https://github.com/hibernate/hibernate-validator/commit/bbee5ea510aec133754480663be64f70d940110f
  Author: Guillaume Smet <guillaume.smet at gmail.com>
  Date:   2017-10-18 (Wed, 18 Oct 2017)

  Changed paths:
    M engine/src/main/java/org/hibernate/validator/internal/engine/ValidationContext.java

  Log Message:
  -----------
  HV-1480 Some more optimizations suggested by Sanne


  Commit: f0787b516e84c914af924c7caf7a8b82201ae37e
      https://github.com/hibernate/hibernate-validator/commit/f0787b516e84c914af924c7caf7a8b82201ae37e
  Author: Guillaume Smet <guillaume.smet at gmail.com>
  Date:   2017-10-18 (Wed, 18 Oct 2017)

  Changed paths:
    M performance/README.md
    A performance/src/main/java/org/hibernate/validator/performance/cascaded/CascadedWithLotsOfItemsAndMoreConstraintsValidation.java

  Log Message:
  -----------
  HV-1480 Add another benchmark


  Commit: 21975d8e5aed94cb58339f717afd92d265323a2c
      https://github.com/hibernate/hibernate-validator/commit/21975d8e5aed94cb58339f717afd92d265323a2c
  Author: Guillaume Smet <guillaume.smet at gmail.com>
  Date:   2017-10-18 (Wed, 18 Oct 2017)

  Changed paths:
    M engine/src/test/java/org/hibernate/validator/test/internal/engine/groups/validation/GroupValidationTest.java

  Log Message:
  -----------
  Mark a test as candidate for the TCK


  Commit: 311258b14591b16fe560ce4227d42254da7b6e07
      https://github.com/hibernate/hibernate-validator/commit/311258b14591b16fe560ce4227d42254da7b6e07
  Author: Guillaume Smet <guillaume.smet at gmail.com>
  Date:   2017-10-18 (Wed, 18 Oct 2017)

  Changed paths:
    M engine/src/main/java/org/hibernate/validator/internal/engine/ValueContext.java
    M engine/src/main/java/org/hibernate/validator/internal/engine/path/PathImpl.java

  Log Message:
  -----------
  HV-1480 Only set the property value if required

Only property and container node exposes it to users.


  Commit: 17ec093271bdb377043418436104e7fb1aba5b69
      https://github.com/hibernate/hibernate-validator/commit/17ec093271bdb377043418436104e7fb1aba5b69
  Author: Gunnar Morling <gunnar.morling at googlemail.com>
  Date:   2017-10-18 (Wed, 18 Oct 2017)

  Changed paths:
    M engine/src/main/java/org/hibernate/validator/internal/engine/path/PathImpl.java

  Log Message:
  -----------
  HV-1480 Getting reference to parent node in a simpler way


Compare: https://github.com/hibernate/hibernate-validator/compare/93e563b240b9...17ec093271bd


More information about the hibernate-commits mailing list