public void initSearchIndex()

in java/core/src/main/java/com/aliyun/openservices/tablestore/agent/memory/MemoryStoreImpl.java [832:856]


    public void initSearchIndex() {
        if (sessionSearchIndexSchema == null || sessionSearchIndexSchema.isEmpty()) {
            log.warn("skip create session search index because sessionSearchIndexSchema is empty");
        } else {
            List<FieldSchema> sessionSchemas = new ArrayList<>(sessionSearchIndexSchema);
            TablestoreHelper.addSchemaIfNotExist(sessionSchemas, new FieldSchema(Session.SESSION_USER_ID, FieldType.KEYWORD));
            TablestoreHelper.addSchemaIfNotExist(sessionSchemas, new FieldSchema(Session.SESSION_SESSION_ID, FieldType.KEYWORD));
            TablestoreHelper.addSchemaIfNotExist(sessionSchemas, new FieldSchema(Session.SESSION_UPDATE_TIME, FieldType.LONG));
            TablestoreHelper.createSearchIndexIfNotExist(client, sessionTableName, sessionSearchIndexName, sessionSchemas, Collections.emptyList());
        }

        if (messageSearchIndexSchema == null || messageSearchIndexSchema.isEmpty()) {
            log.warn("skip create message search index because messageSearchIndexSchema is empty");
        } else {
            List<FieldSchema> messageSchemas = new ArrayList<>(messageSearchIndexSchema);
            TablestoreHelper.addSchemaIfNotExist(messageSchemas, new FieldSchema(Message.MESSAGE_SESSION_ID, FieldType.KEYWORD));
            TablestoreHelper.addSchemaIfNotExist(messageSchemas, new FieldSchema(Message.MESSAGE_MESSAGE_ID, FieldType.KEYWORD));
            TablestoreHelper.addSchemaIfNotExist(messageSchemas, new FieldSchema(Message.MESSAGE_CREATE_TIME, FieldType.LONG));
            TablestoreHelper.addSchemaIfNotExist(
                messageSchemas,
                new FieldSchema(Message.MESSAGE_CONTENT, FieldType.TEXT).setAnalyzer(FieldSchema.Analyzer.MaxWord)
            );
            TablestoreHelper.createSearchIndexIfNotExist(client, messageTableName, messageSearchIndexName, messageSchemas, Collections.emptyList());
        }
    }