Thread: updated win32 patch

updated win32 patch

From
Neil Conway
Date:
Folks,

This is the first baby steps toward merging PeerDirect's Win32 work with
CVS HEAD. I started off with the "low hanging fruit" -- a bunch of the
changes in the patch against 7.2.1 have already been merged, or are no
longer applicable to current sources. I've attached a modified version
of Jan's patch with the following changes:

- remove changes to pl_handler.c, pl_funcs.c, pl_exec.c, transam.c,
varsup.c, xact.c, keywords.c, gram.y, inet_net_ntop.c, inet_net_ptop.c,
adt/misc.c, postinit.c, lock.h, sinval.h, sinvaladt.h, c_keywords.c,
preproc/keywords.c, preproc.y, bootparse.y, bootscan.l, deadlock.c,
date.c: already applied to CVS HEAD

- remove changes to password.c, exc.h: files no longer exist in CVS HEAD
(and the changes made are no longer relevant)

- removed changes to gram.y: all the keyword changes have been made
(e.g. IN -> IN_P, ...), and AFAICS the following function that the patch
adds isn't related to Win32 at all:

+ /* For unknown parameter type during parse */
+ void set_param_type(int t, Oid typid)
+ {
+     if ((t > pfunc_num_args) || (t <= 0))
+         return;
+     param_type_info[t - 1] = typid;
+ }

The updated "win32-port-changes-2.diff.gz" is attached; no changes were
made to "win32-port-newfiles.diff.gz".

Cheers,

Neil
--
Neil Conway <neilc@samurai.com> || PGP Key ID: DB3C29FC



Attachment

Re: updated win32 patch

From
Jan Wieck
Date:
Neil Conway wrote:
 and AFAICS the following function that the patch
> adds isn't related to Win32 at all:
>
> + /* For unknown parameter type during parse */
> + void set_param_type(int t, Oid typid)
> + {
> +       if ((t > pfunc_num_args) || (t <= 0))
> +               return;
> +       param_type_info[t - 1] = typid;
> + }

Good catch ...

That one is part of something that enables SPI preparation of plans with
parameters of unknown datatype. The caller of SPI_prepare then will find
the datatypes choosen by the parser/planner in the array passed in. Need
to make that a separate one ...


Jan

--
#======================================================================#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me.                                  #
#================================================== JanWieck@Yahoo.com #

Re: updated win32 patch

From
Bruce Momjian
Date:
Jan, have you committed this change to CVS yet?

---------------------------------------------------------------------------

Jan Wieck wrote:
> Neil Conway wrote:
>  and AFAICS the following function that the patch
> > adds isn't related to Win32 at all:
> >
> > + /* For unknown parameter type during parse */
> > + void set_param_type(int t, Oid typid)
> > + {
> > +       if ((t > pfunc_num_args) || (t <= 0))
> > +               return;
> > +       param_type_info[t - 1] = typid;
> > + }
>
> Good catch ...
>
> That one is part of something that enables SPI preparation of plans with
> parameters of unknown datatype. The caller of SPI_prepare then will find
> the datatypes choosen by the parser/planner in the array passed in. Need
> to make that a separate one ...
>
>
> Jan
>
> --
> #======================================================================#
> # It's easier to get forgiveness for being wrong than for being right. #
> # Let's break this rule - forgive me.                                  #
> #================================================== JanWieck@Yahoo.com #
>
> ---------------------------(end of broadcast)---------------------------
> TIP 3: if posting/reading through Usenet, please send an appropriate
> subscribe-nomail command to majordomo@postgresql.org so that your
> message can get through to the mailing list cleanly
>

--
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073

Re: updated win32 patch

From
Jan Wieck
Date:
Bruce Momjian wrote:
> Jan, have you committed this change to CVS yet?

No and I don't see any reason to do so. It was code we needed at
PeerDirect for something that was never supposed to be contributed. I
allways warned that one will have a hard time to get changes into the
CVS that are only for support of proprietary stuff and of no benefit for
anyone else.


Jan

>
> ---------------------------------------------------------------------------
>
> Jan Wieck wrote:
>
>>Neil Conway wrote:
>> and AFAICS the following function that the patch
>>
>>>adds isn't related to Win32 at all:
>>>
>>>+ /* For unknown parameter type during parse */
>>>+ void set_param_type(int t, Oid typid)
>>>+ {
>>>+       if ((t > pfunc_num_args) || (t <= 0))
>>>+               return;
>>>+       param_type_info[t - 1] = typid;
>>>+ }
>>
>>Good catch ...
>>
>>That one is part of something that enables SPI preparation of plans with
>>parameters of unknown datatype. The caller of SPI_prepare then will find
>>the datatypes choosen by the parser/planner in the array passed in. Need
>>to make that a separate one ...
>>
>>
>>Jan
>>
>>--
>>#======================================================================#
>># It's easier to get forgiveness for being wrong than for being right. #
>># Let's break this rule - forgive me.                                  #
>>#================================================== JanWieck@Yahoo.com #
>>
>>---------------------------(end of broadcast)---------------------------
>>TIP 3: if posting/reading through Usenet, please send an appropriate
>>subscribe-nomail command to majordomo@postgresql.org so that your
>>message can get through to the mailing list cleanly
>>
>
>



--
#======================================================================#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me.                                  #
#================================================== JanWieck@Yahoo.com #


Re: updated win32 patch

From
Tom Lane
Date:
Jan Wieck <JanWieck@Yahoo.com> writes:
> Bruce Momjian wrote:
>> Jan, have you committed this change to CVS yet?

> No and I don't see any reason to do so. It was code we needed at
> PeerDirect for something that was never supposed to be contributed. I
> allways warned that one will have a hard time to get changes into the
> CVS that are only for support of proprietary stuff and of no benefit for
> anyone else.

Also, if I am guessing correctly at the point of that code, it's largely
duplicative of a feature that's already in CVS tip (PARSE message allows
types of parameter symbols to be deduced by parser).

            regards, tom lane