Hi
>> + { >> + /* the last field of list can be star too */ >> + Assert(IsA(field2, A_Star)); >> + >> + /* >> + * In this case, the field1 should be variable name. But >> + * direct unboxing of composite session variables is not >> + * supported now, and then we don't need to try lookup >> + * related variable. >> + * >> + * Unboxing is supported by syntax (var).* >> + */ >> + return InvalidOid; >> + } >> I don't fully understand the above comments, >> > > The parser allows only two syntaxes - identifier.identifier or > identifier.star. Second > syntax is not supported by session variables, and then I didn't try to > search for the variable. > Some users can be confused by similar syntaxes identifier.* and > (identifier).* Only > second syntax is composite unboxing, and only second syntax is supported > for > session variables. > > I changed this comment to <--><--><--><--><-->/* <--><--><--><--><--> * The syntax ident.* is used only by table aliases, <--><--><--><--><--> * and then this identifier cannot be a reference to <--><--><--><--><--> * session variable. <--><--><--><--><--> */