Luo Chen has posted comments on this change.

Change subject: [ASTERIXDB-1952][TX][IDX] Filter logs pt.2
......................................................................


Patch Set 23: Code-Review+1

(3 comments)

A few minor comments...But in general looks good and very straightforward.

https://asterix-gerrit.ics.uci.edu/#/c/1857/23/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/nc/RecoveryManager.java
File 
asterixdb/asterix-app/src/main/java/org/apache/asterix/app/nc/RecoveryManager.java:

PS23, Line 232:                 case LogType.FILTER:
Do we have a test case for filter logging?


https://asterix-gerrit.ics.uci.edu/#/c/1857/23/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/operators/LSMPrimaryUpsertOperatorNodePushable.java
File 
asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/operators/LSMPrimaryUpsertOperatorNodePushable.java:

PS23, Line 170:                         lsmAccessor.updateFilter(prevTuple, 
true);
Just curious about this line...
In case of filter, why do we need to find the previous tuple and update it 
(even when there is no secondary index)?


https://asterix-gerrit.ics.uci.edu/#/c/1857/23/asterixdb/asterix-transactions/src/main/java/org/apache/asterix/transaction/management/opcallbacks/AbstractIndexModificationOperationCallback.java
File 
asterixdb/asterix-transactions/src/main/java/org/apache/asterix/transaction/management/opcallbacks/AbstractIndexModificationOperationCallback.java:

PS23, Line 127:  public void after(ITupleReference newValue) throws 
HyracksDataException {
              :         try {
              :             if (newValue != null) {
              :                 
filterRecord.setNewValueSize(SimpleTupleWriter.INSTANCE.bytesRequired(newValue));
              :                 filterRecord.setNewValue(newValue);
              :                 filterRecord.computeAndSetLogSize();
              :                 txnSubsystem.getLogManager().log(filterRecord);
              :             }
              :         } catch (ACIDException e) {
              :             throw new HyracksDataException(e);
              :         }
              :     }
So with filter, each update operation on an index will produce two log records?


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

Gerrit-MessageType: comment
Gerrit-Change-Id: Ie9e7795d9c8c212e8610dcb9bb5d26ec9fbbee8a
Gerrit-PatchSet: 23
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Ian Maxon <[email protected]>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Ian Maxon <[email protected]>
Gerrit-Reviewer: Jenkins <[email protected]>
Gerrit-Reviewer: Luo Chen <[email protected]>
Gerrit-Reviewer: Till Westmann <[email protected]>
Gerrit-HasComments: Yes

Reply via email to