Previously without decompression feature, we can firstly use DFS's own api to get inputstream and return it to application if the file length is not zero. And if the file length is zero, we ask SmartInputStreamFactory to create the inputstream. Since we can speculate that the file is compacted by SSM (the original file will be truncated to zero after the compaction). But after SSM compression is introduced, this speculation is useless. Because the compressed file is not zero at all.
Previously without decompression feature, we can firstly use DFS's own api to get inputstream and return it to application if the file length is not zero. And if the file length is zero, we ask SmartInputStreamFactory to create the inputstream. Since we can speculate that the file is compacted by SSM (the original file will be truncated to zero after the compaction). But after SSM compression is introduced, this speculation is useless. Because the compressed file is not zero at all.