asterixdb-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Yingyi Bu (Code Review)" <do-not-re...@asterixdb.incubator.apache.org>
Subject Change in asterixdb[master]: Internal functions for record manipulation, deep equality co...
Date Wed, 18 Nov 2015 19:45:51 GMT
Yingyi Bu has posted comments on this change.

Change subject: Internal functions for record manipulation, deep equality comparison and fix
for ASTERIXDB-1162
......................................................................


Patch Set 12:

(10 comments)

https://asterix-gerrit.ics.uci.edu/#/c/298/12/asterix-om/src/main/java/org/apache/asterix/om/typecomputer/impl/AbstractRecordManipulationTypeComputer.java
File asterix-om/src/main/java/org/apache/asterix/om/typecomputer/impl/AbstractRecordManipulationTypeComputer.java:

Line 50:     
white space.


Line 103:     
white space.


Line 118:     
white space.


Line 227:     
white space.


https://asterix-gerrit.ics.uci.edu/#/c/298/12/asterix-om/src/main/java/org/apache/asterix/om/typecomputer/impl/TypeComputerUtils.java
File asterix-om/src/main/java/org/apache/asterix/om/typecomputer/impl/TypeComputerUtils.java:

Line 31:         
white space.


https://asterix-gerrit.ics.uci.edu/#/c/298/12/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/comparisons/DeepEqualAssessor.java
File asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/comparisons/DeepEqualAssessor.java:

Line 42:     private static final long serialVersionUID = 1L;
the value is not used.


Line 44:     public static final DeepEqualAssessor INSTANCE = new DeepEqualAssessor();
Don't use static Instance.  It will cause race conditions, e.g., when called from  DeepEqualityDescriptor
and RecordMergeDescriptor, because DeepEqualityVisitor is shared by different partitions and
is stateful.

There could be multiple partitions running on a machine.

Remove the static INSTANCE.
Instead, create one DeepEqualAccessor instance per partition in ICopyEvaluatorFactory of DeepEqualityDescriptor
and RecordMergeDescriptor.


https://asterix-gerrit.ics.uci.edu/#/c/298/12/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/DeepEqualityDescriptor.java
File asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/DeepEqualityDescriptor.java:

Line 102:                             boolean isEqual = DeepEqualAssessor.INSTANCE.isEqual(accessor0,
accessor1);
race condition.


https://asterix-gerrit.ics.uci.edu/#/c/298/12/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/records/RecordMergeDescriptor.java
File asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/records/RecordMergeDescriptor.java:

Line 178:                                         && !DeepEqualAssessor.INSTANCE.isEqual(leftValue,
rightValue)) {
race condition.


https://asterix-gerrit.ics.uci.edu/#/c/298/12/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/records/RecordRemoveFieldsEvalFactory.java
File asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/records/RecordRemoveFieldsEvalFactory.java:

Line 58:     
white space.


-- 
To view, visit https://asterix-gerrit.ics.uci.edu/298
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I3621ebdd71c7cd91b50d77a972ad863cea7fcbc2
Gerrit-PatchSet: 12
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Heri Ramampiaro <heriram@gmail.com>
Gerrit-Reviewer: Heri Ramampiaro <heriram@gmail.com>
Gerrit-Reviewer: Ian Maxon <imaxon@apache.org>
Gerrit-Reviewer: Jenkins <jenkins@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Preston Carman <prestonc@apache.org>
Gerrit-Reviewer: Steven Jacobs <sjaco002@ucr.edu>
Gerrit-Reviewer: Till Westmann <tillw@apache.org>
Gerrit-Reviewer: Yingyi Bu <buyingyi@gmail.com>
Gerrit-HasComments: Yes

Mime
View raw message