tephra-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From anew <...@git.apache.org>
Subject [GitHub] incubator-tephra pull request #53: (TEPHRA-243) Improve logging for slow log...
Date Wed, 13 Sep 2017 17:54:42 GMT
Github user anew commented on a diff in the pull request:

    https://github.com/apache/incubator-tephra/pull/53#discussion_r138692966
  
    --- Diff: tephra-core/src/main/java/org/apache/tephra/persist/AbstractTransactionLog.java
---
    @@ -48,21 +51,30 @@
       protected long timestamp;
       private volatile boolean initialized;
       private volatile boolean closed;
    -  private AtomicLong syncedUpTo = new AtomicLong();
    -  private List<Entry> pendingWrites = Lists.newLinkedList();
    +  private long writtenUpTo = 0L;
    +  private volatile long syncedUpTo = 0L;
    +  private final Queue<Entry> pendingWrites = new ConcurrentLinkedQueue<>();
       private TransactionLogWriter writer;
     
    -  public AbstractTransactionLog(long timestamp, MetricsCollector metricsCollector) {
    +  private int countSinceLastSync = 0;
    +  private long positionBeforeWrite = -1L;
    +  private final Stopwatch stopWatch = new Stopwatch();
    +
    +  private final long slowAppendThreshold;
    +
    +  AbstractTransactionLog(long timestamp, MetricsCollector metricsCollector, Configuration
conf) {
         this.timestamp = timestamp;
         this.metricsCollector = metricsCollector;
    +    this.slowAppendThreshold = conf.getLong(TxConstants.TransactionLog.CFG_SLOW_APPEND_THRESHOLD,
    +                                            TxConstants.TransactionLog.DEFAULT_SLOW_APPEND_THRESHOLD);
       }
     
       /**
        * Initializes the log file, opening a file writer.  Clients calling {@code init()}
should ensure that they
        * also call {@link HDFSTransactionLog#close()}.
        * @throws java.io.IOException If an error is encountered initializing the file writer.
        */
    -  public synchronized void init() throws IOException {
    +  private synchronized void init() throws IOException {
    --- End diff --
    
    yes, I noticed that, too, that's why I made it private, but forgot to update the Javadoc


---

Mime
View raw message