public MappedFile createFile(final long physicalOffset) throws IOException {
        // cache max offset
        return mappedFileQueue.tryCreateMappedFile(physicalOffset);
    }
@Test
    public void testCreateFile() throws IOException {
        scq = new SparseConsumeQueue(topic, queueId, path, BatchConsumeQueue.CQ_STORE_UNIT_SIZE, defaultMessageStore);
        long physicalOffset = Math.abs(ThreadLocalRandom.current().nextLong());
        String formatName = UtilAll.offset2FileName(physicalOffset);
        scq.createFile(physicalOffset);

        assertTrue(Files.exists(Paths.get(path, topic, String.valueOf(queueId), formatName)));
        scq.putBatchMessagePositionInfo(5,4,3,2,1,(short)1);
        assertEquals(4, scq.get(1).getSize());
    }