[ 
https://issues.apache.org/jira/browse/PHOENIX-3850?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

chenglei updated PHOENIX-3850:
------------------------------
    Description: 
When the RegionServer starts, I always find the region logs "Found some 
outstanding index updates that didn't succeed during WAL replay - attempting to 
replay now." That is because in following Indexer.postOpen method, the LOG.info 
in line 528 is before the if statement in line 531, so the method alway log 
"Found some outstanding index updates that didn't succeed..." no matter whether 
there are outstanding index updates.

 {code}
520  @Override
521  public void postOpen(final ObserverContext<RegionCoprocessorEnvironment> 
c) {
522    Multimap<HTableInterfaceReference, Mutation> updates = 
failedIndexEdits.getEdits(c.getEnvironment().getRegion());
523    
524    if (this.disabled) {
525        super.postOpen(c);
526        return;
527      }
528   LOG.info("Found some outstanding index updates that didn't succeed during"
529        + " WAL replay - attempting to replay now.");
530    //if we have no pending edits to complete, then we are done
531    if (updates == null || updates.size() == 0) {
532      return;
533    }
534    
535    // do the usual writer stuff, killing the server again, if we can't 
manage to make the index
536    // writes succeed again
537    try {
538        writer.writeAndKillYourselfOnFailure(updates, true);
539    } catch (IOException e) {
540            LOG.error("During WAL replay of outstanding index updates, "
541                    + "Exception is thrown instead of killing server during 
index writing", e);
542    }
543  }
{code}


> Indexer.postOpen should not always log "Found some outstanding index updates 
> that didn't succeed"
> -------------------------------------------------------------------------------------------------
>
>                 Key: PHOENIX-3850
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-3850
>             Project: Phoenix
>          Issue Type: Bug
>    Affects Versions: 4.10.0
>            Reporter: chenglei
>            Priority: Minor
>
> When the RegionServer starts, I always find the region logs "Found some 
> outstanding index updates that didn't succeed during WAL replay - attempting 
> to replay now." That is because in following Indexer.postOpen method, the 
> LOG.info in line 528 is before the if statement in line 531, so the method 
> alway log "Found some outstanding index updates that didn't succeed..." no 
> matter whether there are outstanding index updates.
>  {code}
> 520  @Override
> 521  public void postOpen(final ObserverContext<RegionCoprocessorEnvironment> 
> c) {
> 522    Multimap<HTableInterfaceReference, Mutation> updates = 
> failedIndexEdits.getEdits(c.getEnvironment().getRegion());
> 523    
> 524    if (this.disabled) {
> 525        super.postOpen(c);
> 526        return;
> 527      }
> 528   LOG.info("Found some outstanding index updates that didn't succeed 
> during"
> 529        + " WAL replay - attempting to replay now.");
> 530    //if we have no pending edits to complete, then we are done
> 531    if (updates == null || updates.size() == 0) {
> 532      return;
> 533    }
> 534    
> 535    // do the usual writer stuff, killing the server again, if we can't 
> manage to make the index
> 536    // writes succeed again
> 537    try {
> 538        writer.writeAndKillYourselfOnFailure(updates, true);
> 539    } catch (IOException e) {
> 540            LOG.error("During WAL replay of outstanding index updates, "
> 541                    + "Exception is thrown instead of killing server 
> during index writing", e);
> 542    }
> 543  }
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to