You’re right. It’s not immediately clear what that implies.
Different measurements can be assigned different retention policies, but not exactly multiple retention policies.
A more helpful way to think of it is in points. InfluxDB stores points, which have four parts: a measurement, a tagset, a fieldset, and a timestamp.
From this article on InfluxDB internals:
Each point is stored within exactly one database within exactly one retention policy. A database is a container for users, retention policies, and points. A retention policy configures how long InfluxDB keeps points (duration), how many copies of those points are stored in the cluster (replication factor), and the time range covered by shard groups (shard group duration). The retention policy makes it easy for users (and efficient for the database) to drop older data that is no longer needed. This is a common pattern in time series applications.
You could create the same named measurement in two different RPs, but they are not really the same - they are physically separate on disk.
The measurement ‘cpu’ could be present in multiple RPs, but those measurements have separate storage and would be unrelated. This isn’t a great practice, though. Naming two separate measurements the same name can cause other issues.
I hope that helps!