Morning folks - another XT2 snapshot going up this morning
-
Main change here is a change to the XT2 infrastructural reqmts - previously, on cloud deployments, we required that the object store be able to notify the nodes when new files were added; we now take responsibility for this ourselves by adding an extra topic on the existing log, so there’s no longer any need to set up extra pub/sub infrastructure.
- this is a breaking change to the config, though - see this PR for migration instructions.
-
In terms of functionality, we’ve been spending more time on the Postgres wire-protocol server. we’re quite keen that you can use whatever tooling you previously used with Postgres to connect to XT
- In our experience, though, each different tool makes different assumptions about what the server on the other end of the wire supports. So, please do give it a spin, and let us know what issues you run into
-
As part of this, we’ve added initial support for SQL’s
ROW_NUMBER
window function (with more to come) - I say ‘as part of this’ because there are a good few tools whose first metadata-discovery query uses it -
‘Periods’ are now first-class in XT2 - this is an extension to the SQL spec (which only requires that they be usable in specific period predicates). You can now calculate a period ‘intersection’ using the
*
operator, which is really useful for temporal joins: if you’re joining two tables together across time, and you want to know when both facts were valid, you can requestfoo._valid_time * bar._valid_time
. -
On the performance side, we’ve put through a significant change that ensures we can more quickly rule out large swathes of historical data for both as-of-now and recent historical queries.
As always - any trouble, give us a shout
James & the XT Team