|
@@ -278,6 +278,37 @@ public class DataStreamTests extends AbstractXContentSerializingTestCase<DataStr
|
|
|
assertThat(rolledDs.getIndexMode(), equalTo(IndexMode.LOGSDB));
|
|
|
}
|
|
|
|
|
|
+ public void testRolloverFromTSdbToLogsdb() {
|
|
|
+ DataStream ds = DataStreamTestHelper.randomInstance().copy().setReplicated(false).setIndexMode(IndexMode.TIME_SERIES).build();
|
|
|
+ var newCoordinates = ds.nextWriteIndexAndGeneration(Metadata.EMPTY_METADATA, ds.getDataComponent());
|
|
|
+
|
|
|
+ var rolledDs = ds.rollover(new Index(newCoordinates.v1(), UUIDs.randomBase64UUID()), newCoordinates.v2(), IndexMode.LOGSDB, null);
|
|
|
+ assertThat(rolledDs.getName(), equalTo(ds.getName()));
|
|
|
+ assertThat(rolledDs.getGeneration(), equalTo(ds.getGeneration() + 1));
|
|
|
+ assertThat(rolledDs.getIndices().size(), equalTo(ds.getIndices().size() + 1));
|
|
|
+ assertTrue(rolledDs.getIndices().containsAll(ds.getIndices()));
|
|
|
+ assertTrue(rolledDs.getIndices().contains(rolledDs.getWriteIndex()));
|
|
|
+ assertThat(rolledDs.getIndexMode(), equalTo(IndexMode.LOGSDB));
|
|
|
+ }
|
|
|
+
|
|
|
+ public void testRolloverFromLogsdbToTsdb() {
|
|
|
+ DataStream ds = DataStreamTestHelper.randomInstance().copy().setReplicated(false).setIndexMode(IndexMode.LOGSDB).build();
|
|
|
+ var newCoordinates = ds.nextWriteIndexAndGeneration(Metadata.EMPTY_METADATA, ds.getDataComponent());
|
|
|
+
|
|
|
+ var rolledDs = ds.rollover(
|
|
|
+ new Index(newCoordinates.v1(), UUIDs.randomBase64UUID()),
|
|
|
+ newCoordinates.v2(),
|
|
|
+ IndexMode.TIME_SERIES,
|
|
|
+ null
|
|
|
+ );
|
|
|
+ assertThat(rolledDs.getName(), equalTo(ds.getName()));
|
|
|
+ assertThat(rolledDs.getGeneration(), equalTo(ds.getGeneration() + 1));
|
|
|
+ assertThat(rolledDs.getIndices().size(), equalTo(ds.getIndices().size() + 1));
|
|
|
+ assertTrue(rolledDs.getIndices().containsAll(ds.getIndices()));
|
|
|
+ assertTrue(rolledDs.getIndices().contains(rolledDs.getWriteIndex()));
|
|
|
+ assertThat(rolledDs.getIndexMode(), equalTo(IndexMode.TIME_SERIES));
|
|
|
+ }
|
|
|
+
|
|
|
public void testRolloverDowngradeFromTsdbToRegularDataStream() {
|
|
|
DataStream ds = DataStreamTestHelper.randomInstance().copy().setReplicated(false).setIndexMode(IndexMode.TIME_SERIES).build();
|
|
|
var newCoordinates = ds.nextWriteIndexAndGeneration(Metadata.EMPTY_METADATA, ds.getDataComponent());
|