New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Test telemetry_stats fails on PG15. #5037
Comments
Here is the shortened testcase which gives different statistics on pg14 vs pg15.
Statistics from remote nodes are different. On PG14 out of total 697 rows, data_node_1 gets 357 and data_node_2 gets 340 because of above distribution of rows, the rest of the telemetry report also differs. This is how data is populated in the table.
In my opinion this is an expected behaviour. |
@erimatnor Can you please confirm if this is expected? |
Different stats from nodes is expected if rows are distributed differently in PG15. Probably the hash function changed. I am noting that the total number of tuples (reltuples) are the same in both versions: PG14: 357 + 340 = 697 I don't think we can just ignore this and create separate test outputs. If users upgrade from PG14 to PG15 the data distribution will change will existing chunks still use the old distribution. This will be a problem. I think we should try to see if we can use the "old" hash function from PG14 in order to avoid a conflict when upgrading. |
The telemetry_stats testcase uses random() with seed(1) to generate the column values on which the hypertable is partitioned. The Postgres commit postgres/postgres@3804539e48 updates the random() implementation to use a better algorithim causing the test to generate a different set of rows in PG15. Due to this the test failed in PG15 as the distrubution stats of the tuples have now changed. Fixed that by creating separate test outputs for PG15 and other releases. Fixes timescale#5037
The telemetry_stats testcase uses random() with seed(1) to generate the column values on which the hypertable is partitioned. The Postgres commit postgres/postgres@3804539e48 updates the random() implementation to use a better algorithim causing the test to generate a different set of rows in PG15. Due to this the test failed in PG15 as the distrubution stats of the tuples have now changed. Fixed that by creating separate test outputs for PG15 and other releases. Fixes #5037
The telemetry_stats testcase uses random() with seed(1) to generate the column values on which the hypertable is partitioned. The Postgres commit postgres/postgres@3804539e48 updates the random() implementation to use a better algorithim causing the test to generate a different set of rows in PG15. Due to this the test failed in PG15 as the distrubution stats of the tuples have now changed. Fixed that by creating separate test outputs for PG15 and other releases. Fixes #5037
The telemetry_stats testcase uses random() with seed(1) to generate the column values on which the hypertable is partitioned. The Postgres commit postgres/postgres@3804539e48 updates the random() implementation to use a better algorithim causing the test to generate a different set of rows in PG15. Due to this the test failed in PG15 as the distrubution stats of the tuples have now changed. Fixed that by creating separate test outputs for PG15 and other releases. Fixes #5037
What type of bug is this?
Other
What subsystems and features are affected?
Multi-node
What happened?
telemetry_stats test fails with below error.
TimescaleDB version affected
2.9.0
PostgreSQL version used
15.0
What operating system did you use?
MacOS
What installation method did you use?
Source
What platform did you run on?
On prem/Self-hosted
Relevant log output and stack trace
No response
How can we reproduce the bug?
On PG15 run make installcheck TESTS="telemetry_stats"
The text was updated successfully, but these errors were encountered: