Initialize reserved names once to avoid race condition (#7008)
CanOptimizeCallback::isReservedName
function may be executed by multiple threads
simultaneously. One of them creates a static but both of them run if statement
and see it's empty because none of them added elements there yet. Both of them
go to the branch where new elements are added doing it without any
synchronization possibly causing SIGSEGV.
Fixes #7008 (closed).
Should be cherry-picked to 0.48.
Edited by elsid