public String inspect() {
        readLock();
        try {
            JsonObject res = new JsonObject();
            connectorTableMetaInfos.cellSet().forEach(cell -> {
                String catalog = cell.getRowKey();
                String db = cell.getColumnKey();
                cell.getValue().forEach((tableName, tableInfo) -> {
                    TableName key = new TableName(catalog, db, tableName);
                    res.add(key.toString(), tableInfo.inspect());
                });
            });
            return res.toString();
        } finally {
            readUnlock();
        }
    }
@Test
    public void testInspect() {
        ConnectorTblMetaInfoMgr mgr = GlobalStateMgr.getCurrentState().getConnectorTblMetaInfoMgr();

        String json = mgr.inspect();
        Assert.assertEquals("{}", json);

        ConnectorTableInfo tableInfo = new ConnectorTableInfo(
                ImmutableSet.of(
                        new MvId(1, 1),
                        new MvId(1, 2)
                )
        );
        mgr.addConnectorTableInfo("cat", "db", "tbl", tableInfo);
        json = mgr.inspect();
        Assert.assertEquals("{\"cat.db.tbl\":[{\"dbId\":1,\"id\":1},{\"dbId\":1,\"id\":2}]}", json);

        mgr.removeConnectorTableInfo("cat", "db", "tbl", tableInfo);
        json = mgr.inspect();
        Assert.assertEquals("{}", json);

        ConnectorTableInfo tableInfo1 = new ConnectorTableInfo(null);
        tableInfo1.updateMetaInfo(tableInfo);
        JsonElement element = tableInfo1.inspect();
        Assert.assertEquals("[{\"dbId\":1,\"id\":1},{\"dbId\":1,\"id\":2}]", element.toString());
    }