Very good point on the 'Added in Drill Version 1.XX' , and I think Bridget's already on it !
However, for sys.functions, it doesn't make sense to carry a min version. The Drill server basically scans all the available functions and exposes them in the sys.functions table. If a function has been added in that Drill version, it will show up.. and dropped, it will not. Tracking the recently added/removed functions to a release is a bit trickier, but we should be able to do that between releases. If there were in-built support for function documentation, that would vastly simplify the problem, but there has not been consensus on this and the value it brings for the effort involved in updating all the functions. (last call, I saw nearly 3K functions, when accounting for all the signatures as well). And don't forget, UDFs would need to do this too. On 1/3/2019 7:28:50 AM, John Omernik <[email protected]> wrote: Hey all, I was looking for some tools to help me add/subtract dates, and I went to: https://drill.apache.org/docs/date-time-functions-and-arithmetic/ TIMESTAMPDIFF and TIMESTAMPADD where there, and I got excited, I organized my query, and tried to run them and got the error below. So I tried troubleshooting. 30 minutes later, after reviewing my query, reviewing the docs, reviewing all the things, I came here, as I did that, I see there is a new Drill Release... hmmm. On a hunch, I command+F and sure enough, the function I was trying to use was just added in 1.15, (I am running 1.14) . So, A. I think the anytime a doc is updated to reflect a new function, we should add "Added in Drill version 1.15" The error I got didn't tell me the function didn't exist, and was not helpful. This caused me to go down a 30 minute rabbit hole. This is a bad user experience. B. I see that sys.functions is in the 1.15 release. This is awesome. I think we should add a min_drill_version column to this though. For those functions that are added beyond 1.15, we should know where they sit. This will help us create a process that can auto update Documentation as well. Anytime a new function is added, we can run a query that shows the those not in the docs. Thoughts? SYSTEM ERROR: AssertionError: todo: implement syntax SPECIAL(Reinterpret(-($0, ITEM($2, 'charge_state_ts'))))
