Jeremy Taylor
Jeremy Taylor
Was thinking further about unicode handling, and I just spotted that Datafusion has extensive SLT-format tests for their standard lib: https://github.com/apache/datafusion/blob/36ec9f1de0aeabca60b8f7ebe07d650b8ef03506/datafusion/sqllogictest/test_files/string/string_query.slt.part#L1385 And for comparison, their vectorized(!) implementation: https://github.com/apache/datafusion/blob/36ec9f1de0aeabca60b8f7ebe07d650b8ef03506/datafusion/functions/src/unicode/lpad.rs
Noting that this one is not straightforward because Arrow does not distinguish between null and absent (and we use Arrow for everything).
I expect this will be almost entirely due to the pgwire overheads. Assuming so, it would be interesting to know whether moving binary Arrow over pgwire could close most of...
Hi @stellerex we're not actively supporting any teams using the Oracle JDBC backend currently (transaction log or document store), but we can investigate what's happened and get this working again...
@mpisanko it sounds like this is actually because of the default JSON fallback return type (because XT doesn't support pgwire array types yet). Do you know which array types are...
The current behaviour is now (possibly only since https://github.com/xtdb/xtdb/commit/761fc284a1dead06adfc393eb6a860ddb93f714c but really not sure): ``` xtdb=> BEGIN READ WRITE; BEGIN xtdb=*> INSERT INTO foo (x) values (42); INSERT 0 0 xtdb=*>...
Thanks for sharing that @KSmanis 🙏
A real example someone hit trying to use CAST [Play](https://play.xtdb.com/?version=2.0.0-b1&type=sql&txs=W3sic3lzdGVtLXRpbWUiOm51bGwsInR4cyI6IklOU0VSVCBJTlRPIGRvY3MgKF9pZCwgZm9vKSBWQUxVRVMgKDEwLCAnYmFyMScpO1xuSU5TRVJUIElOVE8gZG9jcyAoX2lkLCBmb28pIFZBTFVFUyAoMTIsICdiYXIyJyk7XG5JTlNFUlQgSU5UTyBkb2NzIChfaWQsIGZvbykgVkFMVUVTICgxNCwgJ2JhcjMnKTtcbklOU0VSVCBJTlRPIGRvY3MgKF9pZCwgZm9vKSBWQUxVRVMgKDEzLCAnYmFyNCcpOyJ9XQ%3D%3D&query=U0VMRUNUIGNvdW50KDEpIGFzIGZmLCBDQVNUKF92YWxpZF9mcm9tIEFTIERBVEUpIEZST00gZG9jcwpncm91cCBieSBDQVNUKF92YWxpZF9mcm9tIEFTIERBVEUpOw%3D%3D) `SELECT count(1) as ff, CAST(_valid_from AS DATE) FROM docs GROUP BY CAST(_valid_from AS DATE);`
In general though this can at least be worked around using a subquery, e.g. per the example above [Play](https://play.xtdb.com/?version=2.0.0-b1&type=sql&txs=W3sic3lzdGVtLXRpbWUiOm51bGwsInR4cyI6IklOU0VSVCBJTlRPIGRvY3MgKF9pZCwgZm9vKSBWQUxVRVMgKDEwLCAnYmFyMScpO1xuSU5TRVJUIElOVE8gZG9jcyAoX2lkLCBmb28pIFZBTFVFUyAoMTIsICdiYXIyJyk7XG5JTlNFUlQgSU5UTyBkb2NzIChfaWQsIGZvbykgVkFMVUVTICgxNCwgJ2JhcjMnKTtcbklOU0VSVCBJTlRPIGRvY3MgKF9pZCwgZm9vKSBWQUxVRVMgKDEzLCAnYmFyNCcpOyJ9XQ%3D%3D&query=c2VsZWN0IGNvdW50KDEpLCB2ZGF0ZSAKICBmcm9tIChTRUxFQ1QgX2lkLCBDQVNUKF92YWxpZF9mcm9tIEFTIERBVEUpIGFzIHZkYXRlIEZST00gZG9jcykgdHQxCiAgZ3JvdXAgYnkgdmRhdGUKOw%3D%3D) `select count(1), vdate from (SELECT _id, CAST(_valid_from AS DATE) as vdate...
It would be deviating from Postgres and the spec, but it's been mentioned by a user that we could consider supporting `'all'` or `ALL` too (per Snowflake / SQL Server),...