Is your feature request related to a problem or challenge?
As noted in the discussion in #11941 (comment) it looks like the performance of the lpad udf may be improved a bit by using a GenericStringBuilder instead of creating a string every time.
As well, as noted in #11941 (comment) there may be room for improvement with the general code.
Describe the solution you'd like
lpad udf updated to use a GenericStringBuilder and a benchmark added to showcase whether it improves performance or not
Describe alternatives you've considered
No response
Additional context
No response