JackieTien97 commented on code in PR #816:
URL: https://github.com/apache/tsfile/pull/816#discussion_r3251952912
##########
python/tests/test_tsfile_dataset.py:
##########
@@ -994,3 +1105,136 @@ def
test_dataframe_parallel_show_progress_reports_start_immediately(tmp_path, ca
stderr = capsys.readouterr().err
assert "Loading TsFile shards: 0/2" in stderr
assert "Loading TsFile shards: 2/2 (4 series) ... done" in stderr
+
+
+# --- Tree-model tests -------------------------------------------------------
+
+
+def _write_tree_file(path):
+ """Tree-model TsFile with two devices; the second device is shorter and
+ only has one of the two declared measurements, exercising None-pad +
+ union-field paths in the synthetic table layer.
+ """
+ from tsfile import (
+ Field,
+ RowRecord,
+ TimeseriesSchema,
+ TsFileWriter,
+ )
+
+ writer = TsFileWriter(str(path))
+ writer.register_timeseries(
+ "root.ln.wf01.wt01", TimeseriesSchema("status", TSDataType.INT32)
+ )
+ writer.register_timeseries(
+ "root.ln.wf01.wt01", TimeseriesSchema("temperature", TSDataType.DOUBLE)
+ )
+ writer.register_timeseries(
+ "root.ln.wf02.wt02", TimeseriesSchema("status", TSDataType.INT32)
+ )
+ for t in range(5):
+ writer.write_row_record(
+ RowRecord(
+ "root.ln.wf01.wt01",
+ t,
Review Comment:
The test suite covers single tree-model files, but there's no test for
loading **multiple** tree-model files into one `TsFileDataFrame`. The
multi-file merge path (via `_register_reader` + `device_time_bounds`
aggregation) has tricky edge cases for tree-model:
- Two files with the same device but different measurement subsets — do we
get the union of fields? Do time bounds merge correctly?
- Two files with different `max_depth` — does the tag padding still work
correctly?
These are the same merge paths that table-model tests cover, but
tree-model's synthetic table construction introduces new failure modes around
the union-fields and padding logic.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]