This is an automated email from the ASF dual-hosted git repository.

marklau99 pushed a commit to branch wal-compress-formal-branch
in repository https://gitbox.apache.org/repos/asf/iotdb.git

commit a08d43180b5178bacf656ea2ba74f418721300f6
Author: Liu Xuxin <[email protected]>
AuthorDate: Sat Mar 30 17:36:53 2024 +0800

    fix bug
---
 .../java/org/apache/iotdb/consensus/iot/IoTConsensusServerImpl.java  | 2 +-
 .../apache/iotdb/db/storageengine/dataregion/wal/io/LogWriter.java   | 5 ++++-
 2 files changed, 5 insertions(+), 2 deletions(-)

diff --git 
a/iotdb-core/consensus/src/main/java/org/apache/iotdb/consensus/iot/IoTConsensusServerImpl.java
 
b/iotdb-core/consensus/src/main/java/org/apache/iotdb/consensus/iot/IoTConsensusServerImpl.java
index 86c514a48b3..b3f06cd6347 100644
--- 
a/iotdb-core/consensus/src/main/java/org/apache/iotdb/consensus/iot/IoTConsensusServerImpl.java
+++ 
b/iotdb-core/consensus/src/main/java/org/apache/iotdb/consensus/iot/IoTConsensusServerImpl.java
@@ -811,7 +811,7 @@ public class IoTConsensusServerImpl {
   }
 
   public boolean needBlockWrite() {
-    return consensusReqReader.getTotalSize() > 
config.getReplication().getWalThrottleThreshold();
+    return false;
   }
 
   public boolean unblockWrite() {
diff --git 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/wal/io/LogWriter.java
 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/wal/io/LogWriter.java
index c3fe218fb40..4e5d6239b32 100644
--- 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/wal/io/LogWriter.java
+++ 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/wal/io/LogWriter.java
@@ -57,6 +57,7 @@ public abstract class LogWriter implements ILogWriter {
     this.logStream = new FileOutputStream(logFile, true);
     this.logChannel = this.logStream.getChannel();
     if (IoTDBDescriptor.getInstance().getConfig().isEnableWALCompression()) {
+      logger.info("Enable WAL compression with gzip");
       compressedByteBuffer =
           ByteBuffer.allocate(
               compressor.getMaxBytesForCompression(
@@ -69,7 +70,6 @@ public abstract class LogWriter implements ILogWriter {
   @Override
   public void write(ByteBuffer buffer) throws IOException {
     int bufferSize = buffer.position();
-    size += buffer.position();
     buffer.flip();
     boolean compressed = false;
     int uncompressedSize = bufferSize;
@@ -86,9 +86,12 @@ public abstract class LogWriter implements ILogWriter {
     headerBuffer.clear();
     headerBuffer.putInt(bufferSize);
     headerBuffer.put((byte) (compressed ? 1 : 0));
+    size += bufferSize;
+    size += 5;
     try {
       if (compressed) {
         headerBuffer.putInt(uncompressedSize);
+        size += 4;
       }
       headerBuffer.flip();
       logChannel.write(headerBuffer);

Reply via email to