Upgrade/Migrate elasticsearch to opensearch - failed to parse field [data_stream]

When upgrading/migration elasticsearch to opensearch (2.5.0) there is the follwoing error stacktrace, so opensearch wont start. Elasticsearch 7.x is running fine.

  • OS Information: Kubernetes
  • Service logs, configurations, and environment variables:
[2023-02-27T09:17:11,285][ERROR][o.o.b.OpenSearchUncaughtExceptionHandler] [opensearch-0] uncaught exception in thread [main]
org.opensearch.bootstrap.StartupException: org.opensearch.common.xcontent.XContentParseException: [-1:22683] [data_stream] failed to parse field [data_stream]
        at org.opensearch.bootstrap.OpenSearch.init(OpenSearch.java:184) ~[opensearch-2.5.0.jar:2.5.0]
        at org.opensearch.bootstrap.OpenSearch.execute(OpenSearch.java:171) ~[opensearch-2.5.0.jar:2.5.0]
        at org.opensearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:104) ~[opensearch-2.5.0.jar:2.5.0]
        at org.opensearch.cli.Command.mainWithoutErrorHandling(Command.java:138) ~[opensearch-cli-2.5.0.jar:2.5.0]
        at org.opensearch.cli.Command.main(Command.java:101) ~[opensearch-cli-2.5.0.jar:2.5.0]
        at org.opensearch.bootstrap.OpenSearch.main(OpenSearch.java:137) ~[opensearch-2.5.0.jar:2.5.0]
        at org.opensearch.bootstrap.OpenSearch.main(OpenSearch.java:103) ~[opensearch-2.5.0.jar:2.5.0]
Caused by: org.opensearch.common.xcontent.XContentParseException: [-1:22683] [data_stream] failed to parse field [data_stream]
        at org.opensearch.common.xcontent.ObjectParser.parseValue(ObjectParser.java:585) ~[opensearch-x-content-2.5.0.jar:2.5.0]
        at org.opensearch.common.xcontent.ObjectParser.parseSub(ObjectParser.java:597) ~[opensearch-x-content-2.5.0.jar:2.5.0]
        at org.opensearch.common.xcontent.ObjectParser.parse(ObjectParser.java:352) ~[opensearch-x-content-2.5.0.jar:2.5.0]
        at org.opensearch.common.xcontent.ConstructingObjectParser.parse(ConstructingObjectParser.java:186) ~[opensearch-x-content-2.5.0.jar:2.5.0]
        at org.opensearch.cluster.metadata.DataStreamMetadata.fromXContent(DataStreamMetadata.java:125) ~[opensearch-2.5.0.jar:2.5.0]
        at org.opensearch.common.xcontent.NamedXContentRegistry$Entry.lambda$new$0(NamedXContentRegistry.java:76) ~[opensearch-x-content-2.5.0.jar:2.5.0]
        at org.opensearch.common.xcontent.NamedXContentRegistry.parseNamedObject(NamedXContentRegistry.java:166) ~[opensearch-x-content-2.5.0.jar:2.5.0]
        at org.opensearch.common.xcontent.support.AbstractXContentParser.namedObject(AbstractXContentParser.java:435) ~[opensearch-x-content-2.5.0.jar:2.5.0]
uncaught exception in thread [main]
        at org.opensearch.cluster.metadata.Metadata$Builder.fromXContent(Metadata.java:1770) ~[opensearch-2.5.0.jar:2.5.0]
        at org.opensearch.gateway.PersistedClusterStateService.lambda$loadOnDiskState$1(PersistedClusterStateService.java:450) ~[opensearch-2.5.0.jar:2.5.0]
        at org.opensearch.gateway.PersistedClusterStateService.consumeFromType(PersistedClusterStateService.java:514) ~[opensearch-2.5.0.jar:2.5.0]
        at org.opensearch.gateway.PersistedClusterStateService.loadOnDiskState(PersistedClusterStateService.java:449) ~[opensearch-2.5.0.jar:2.5.0]
        at org.opensearch.gateway.PersistedClusterStateService.loadBestOnDiskState(PersistedClusterStateService.java:374) ~[opensearch-2.5.0.jar:2.5.0]
        at org.opensearch.gateway.GatewayMetaState.start(GatewayMetaState.java:132) ~[opensearch-2.5.0.jar:2.5.0]
        at org.opensearch.node.Node.start(Node.java:1218) ~[opensearch-2.5.0.jar:2.5.0]
        at org.opensearch.bootstrap.Bootstrap.start(Bootstrap.java:339) ~[opensearch-2.5.0.jar:2.5.0]
        at org.opensearch.bootstrap.Bootstrap.init(Bootstrap.java:413) ~[opensearch-2.5.0.jar:2.5.0]
        at org.opensearch.bootstrap.OpenSearch.init(OpenSearch.java:180) ~[opensearch-2.5.0.jar:2.5.0]
        ... 6 more
Caused by: org.opensearch.common.xcontent.XContentParseException: [-1:22681] [data_stream] unknown field [_meta]
        at org.opensearch.common.xcontent.ObjectParser.lambda$errorOnUnknown$2(ObjectParser.java:125) ~[opensearch-x-content-2.5.0.jar:2.5.0]
        at org.opensearch.common.xcontent.ObjectParser.parse(ObjectParser.java:325) ~[opensearch-x-content-2.5.0.jar:2.5.0]
        at org.opensearch.common.xcontent.ConstructingObjectParser.parse(ConstructingObjectParser.java:186) ~[opensearch-x-content-2.5.0.jar:2.5.0]
        at org.opensearch.cluster.metadata.DataStream.fromXContent(DataStream.java:205) ~[opensearch-2.5.0.jar:2.5.0]
        at org.opensearch.cluster.metadata.DataStreamMetadata.lambda$static$1(DataStreamMetadata.java:75) ~[opensearch-2.5.0.jar:2.5.0]
        at org.opensearch.common.xcontent.AbstractObjectParser.lambda$declareObject$1(AbstractObjectParser.java:200) ~[opensearch-x-content-2.5.0.jar:2.5.0]
        at org.opensearch.common.xcontent.ObjectParser.lambda$declareField$9(ObjectParser.java:414) ~[opensearch-x-content-2.5.0.jar:2.5.0]
        at org.opensearch.common.xcontent.ObjectParser.parseValue(ObjectParser.java:582) ~[opensearch-x-content-2.5.0.jar:2.5.0]
        at org.opensearch.common.xcontent.ObjectParser.parseSub(ObjectParser.java:597) ~[opensearch-x-content-2.5.0.jar:2.5.0]
        at org.opensearch.common.xcontent.ObjectParser.parse(ObjectParser.java:352) ~[opensearch-x-content-2.5.0.jar:2.5.0]
        at org.opensearch.common.xcontent.ConstructingObjectParser.parse(ConstructingObjectParser.java:186) ~[opensearch-x-content-2.5.0.jar:2.5.0]
        at org.opensearch.cluster.metadata.DataStreamMetadata.fromXContent(DataStreamMetadata.java:125) ~[opensearch-2.5.0.jar:2.5.0]
        at org.opensearch.common.xcontent.NamedXContentRegistry$Entry.lambda$new$0(NamedXContentRegistry.java:76) ~[opensearch-x-content-2.5.0.jar:2.5.0]
        at org.opensearch.common.xcontent.NamedXContentRegistry.parseNamedObject(NamedXContentRegistry.java:166) ~[opensearch-x-content-2.5.0.jar:2.5.0]
        at org.opensearch.common.xcontent.support.AbstractXContentParser.namedObject(AbstractXContentParser.java:435) ~[opensearch-x-content-2.5.0.jar:2.5.0]
        at org.opensearch.cluster.metadata.Metadata$Builder.fromXContent(Metadata.java:1770) ~[opensearch-2.5.0.jar:2.5.0]
        at org.opensearch.gateway.PersistedClusterStateService.lambda$loadOnDiskState$1(PersistedClusterStateService.java:450) ~[opensearch-2.5.0.jar:2.5.0]
        at org.opensearch.gateway.PersistedClusterStateService.consumeFromType(PersistedClusterStateService.java:514) ~[opensearch-2.5.0.jar:2.5.0]
        at org.opensearch.gateway.PersistedClusterStateService.loadOnDiskState(PersistedClusterStateService.java:449) ~[opensearch-2.5.0.jar:2.5.0]
        at org.opensearch.gateway.PersistedClusterStateService.loadBestOnDiskState(PersistedClusterStateService.java:374) ~[opensearch-2.5.0.jar:2.5.0]
        at org.opensearch.gateway.GatewayMetaState.start(GatewayMetaState.java:132) ~[opensearch-2.5.0.jar:2.5.0]
        at org.opensearch.node.Node.start(Node.java:1218) ~[opensearch-2.5.0.jar:2.5.0]
        at org.opensearch.bootstrap.Bootstrap.start(Bootstrap.java:339) ~[opensearch-2.5.0.jar:2.5.0]
        at org.opensearch.bootstrap.Bootstrap.init(Bootstrap.java:413) ~[opensearch-2.5.0.jar:2.5.0]
        at org.opensearch.bootstrap.OpenSearch.init(OpenSearch.java:180) ~[opensearch-2.5.0.jar:2.5.0]
        ... 6 more
org.opensearch.common.xcontent.XContentParseException: [-1:22683] [data_stream] failed to parse field [data_stream]
Likely root cause: org.opensearch.common.xcontent.XContentParseException: [-1:22681] [data_stream] unknown field [_meta]
        at org.opensearch.common.xcontent.ObjectParser.lambda$errorOnUnknown$2(ObjectParser.java:125)
        at org.opensearch.common.xcontent.ObjectParser.parse(ObjectParser.java:325)
        at org.opensearch.common.xcontent.ConstructingObjectParser.parse(ConstructingObjectParser.java:186)
        at org.opensearch.cluster.metadata.DataStream.fromXContent(DataStream.java:205)
        at org.opensearch.cluster.metadata.DataStreamMetadata.lambda$static$1(DataStreamMetadata.java:75)
        at org.opensearch.common.xcontent.AbstractObjectParser.lambda$declareObject$1(AbstractObjectParser.java:200)
        at org.opensearch.common.xcontent.ObjectParser.lambda$declareField$9(ObjectParser.java:414)
        at org.opensearch.common.xcontent.ObjectParser.parseValue(ObjectParser.java:582)
        at org.opensearch.common.xcontent.ObjectParser.parseSub(ObjectParser.java:597)
        at org.opensearch.common.xcontent.ObjectParser.parse(ObjectParser.java:352)
        at org.opensearch.common.xcontent.ConstructingObjectParser.parse(ConstructingObjectParser.java:186)
        at org.opensearch.cluster.metadata.DataStreamMetadata.fromXContent(DataStreamMetadata.java:125)
        at org.opensearch.common.xcontent.NamedXContentRegistry$Entry.lambda$new$0(NamedXContentRegistry.java:76)
        at org.opensearch.common.xcontent.NamedXContentRegistry.parseNamedObject(NamedXContentRegistry.java:166)
        at org.opensearch.common.xcontent.support.AbstractXContentParser.namedObject(AbstractXContentParser.java:435)
        at org.opensearch.cluster.metadata.Metadata$Builder.fromXContent(Metadata.java:1770)
        at org.opensearch.gateway.PersistedClusterStateService.lambda$loadOnDiskState$1(PersistedClusterStateService.java:450)
        at org.opensearch.gateway.PersistedClusterStateService.consumeFromType(PersistedClusterStateService.java:514)
        at org.opensearch.gateway.PersistedClusterStateService.loadOnDiskState(PersistedClusterStateService.java:449)
        at org.opensearch.gateway.PersistedClusterStateService.loadBestOnDiskState(PersistedClusterStateService.java:374)
        at org.opensearch.gateway.GatewayMetaState.start(GatewayMetaState.java:132)
        at org.opensearch.node.Node.start(Node.java:1218)
        at org.opensearch.bootstrap.Bootstrap.start(Bootstrap.java:339)
        at org.opensearch.bootstrap.Bootstrap.init(Bootstrap.java:413)
        at org.opensearch.bootstrap.OpenSearch.init(OpenSearch.java:180)
        at org.opensearch.bootstrap.OpenSearch.execute(OpenSearch.java:171)
        at org.opensearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:104)
        at org.opensearch.cli.Command.mainWithoutErrorHandling(Command.java:138)
        at org.opensearch.cli.Command.main(Command.java:101)
        at org.opensearch.bootstrap.OpenSearch.main(OpenSearch.java:137)
        <<<truncated>>>

Maybe someone knows you we may fix this?

Thanks in advance, kind regards!

Hey @Stefan

[data_stream] failed to parse field [data_stream]
data_stream] unknown field [_meta]

Correct me if Im wrong but it looks like your on Index set opensearch-0?

Have you tried rotating the index set manually?

Hi,
thanks for your repsonse! Sadly opensearch-0 is not the index name, but the name of the replica within the kubernetes statefulset, so it is simply the hostname.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.