release resource
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/fragment/FragmentInstanceContext.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/fragment/FragmentInstanceContext.java
index cfbde07..ddbb076 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/fragment/FragmentInstanceContext.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/fragment/FragmentInstanceContext.java
@@ -145,7 +145,7 @@
   private long closedSeqFileNum = 0;
   private long closedUnseqFileNum = 0;
 
-  private final DeviceMetadataIndexEntryCache metadataIndexEntryCache =
+  private DeviceMetadataIndexEntryCache metadataIndexEntryCache =
       new DeviceMetadataIndexEntryCache(this);
 
   public static FragmentInstanceContext createFragmentInstanceContext(
@@ -801,6 +801,7 @@
     dataRegion = null;
     globalTimeFilter = null;
     sharedQueryDataSource = null;
+    metadataIndexEntryCache = null;
 
     // record fragment instance execution time and metadata get time to metrics
     long durationTime = System.currentTimeMillis() - executionStartTime.get();