@@ -1078,7 +1078,7 @@ public void testUnreferencedDataStreamsWhenAddingTemplate() throws Exception {
1078
1078
state = ClusterState .builder (state )
1079
1079
.metadata (Metadata .builder (state .metadata ())
1080
1080
.put (new DataStream ("unreferenced" ,
1081
- new DataStream .TimestampField ("@timestamp" , Collections . singletonMap ( "type" , "date" ) ),
1081
+ new DataStream .TimestampField ("@timestamp" ),
1082
1082
Collections .singletonList (new Index (".ds-unreferenced-000001" , "uuid2" ))))
1083
1083
.put (IndexMetadata .builder (".ds-unreferenced-000001" )
1084
1084
.settings (Settings .builder ()
@@ -1090,15 +1090,23 @@ public void testUnreferencedDataStreamsWhenAddingTemplate() throws Exception {
1090
1090
.build ())
1091
1091
.build ();
1092
1092
1093
- ComposableIndexTemplate template = new ComposableIndexTemplate (Collections .singletonList ("logs-*-*" ), null , null ,
1094
- 100L , null , null , new ComposableIndexTemplate .DataStreamTemplate ("@timestamp" ));
1093
+ String mapping = "{\n " +
1094
+ " \" properties\" : {\n " +
1095
+ " \" @timestamp\" : {\n " +
1096
+ " \" type\" : \" date\" \n " +
1097
+ " }\n " +
1098
+ " }\n " +
1099
+ " }" ;
1100
+ Template mappingTemplate = new Template (null , new CompressedXContent (mapping ), null );
1101
+ ComposableIndexTemplate template = new ComposableIndexTemplate (Collections .singletonList ("logs-*-*" ),
1102
+ mappingTemplate , null , 100L , null , null , new ComposableIndexTemplate .DataStreamTemplate ("@timestamp" ));
1095
1103
1096
1104
state = service .addIndexTemplateV2 (state , false , "logs" , template );
1097
1105
1098
1106
ClusterState stateWithDS = ClusterState .builder (state )
1099
1107
.metadata (Metadata .builder (state .metadata ())
1100
1108
.put (new DataStream ("logs-mysql-default" ,
1101
- new DataStream .TimestampField ("@timestamp" , Collections . singletonMap ( "type" , "date" ) ),
1109
+ new DataStream .TimestampField ("@timestamp" ),
1102
1110
Collections .singletonList (new Index (".ds-logs-mysql-default-000001" , "uuid" ))))
1103
1111
.put (IndexMetadata .builder (".ds-logs-mysql-default-000001" )
1104
1112
.settings (Settings .builder ()
@@ -1134,8 +1142,8 @@ public void testUnreferencedDataStreamsWhenAddingTemplate() throws Exception {
1134
1142
1135
1143
// Change the pattern to one that doesn't match the data stream
1136
1144
e = expectThrows (IllegalArgumentException .class , () -> {
1137
- ComposableIndexTemplate newTemplate = new ComposableIndexTemplate (Collections .singletonList ("logs-postgres-*" ), null , null ,
1138
- 100L , null , null , new ComposableIndexTemplate .DataStreamTemplate ("@timestamp" ));
1145
+ ComposableIndexTemplate newTemplate = new ComposableIndexTemplate (Collections .singletonList ("logs-postgres-*" ), mappingTemplate ,
1146
+ null , 100L , null , null , new ComposableIndexTemplate .DataStreamTemplate ("@timestamp" ));
1139
1147
service .addIndexTemplateV2 (stateWithDS , false , "logs" , newTemplate );
1140
1148
});
1141
1149
@@ -1144,8 +1152,8 @@ public void testUnreferencedDataStreamsWhenAddingTemplate() throws Exception {
1144
1152
"cause data streams [unreferenced, logs-mysql-default] to no longer match a data stream template" ));
1145
1153
1146
1154
// Add an additional template that matches our data stream at a lower priority
1147
- ComposableIndexTemplate mysqlTemplate = new ComposableIndexTemplate (Collections .singletonList ("logs-mysql-*" ), null , null ,
1148
- 50L , null , null , new ComposableIndexTemplate .DataStreamTemplate ("@timestamp" ));
1155
+ ComposableIndexTemplate mysqlTemplate = new ComposableIndexTemplate (Collections .singletonList ("logs-mysql-*" ), mappingTemplate ,
1156
+ null , 50L , null , null , new ComposableIndexTemplate .DataStreamTemplate ("@timestamp" ));
1149
1157
ClusterState stateWithDSAndTemplate = service .addIndexTemplateV2 (stateWithDS , false , "logs-mysql" , mysqlTemplate );
1150
1158
1151
1159
// We should be able to replace the "logs" template, because we have the "logs-mysql" template that can handle the data stream
0 commit comments