| From: | SAKAIDA Masaaki <sakaida(at)psn(dot)co(dot)jp> | 
|---|---|
| To: | Michael Meskes <meskes(at)postgresql(dot)org> | 
| Cc: | pgsql-hackers(at)postgresql(dot)org | 
| Subject: | Re: ecpg enhance patch | 
| Date: | 2000-06-06 07:24:11 | 
| Message-ID: | 393CA71B370.834CSAKAIDA@smtp.psn.ne.jp | 
| Views: | Whole Thread | Raw Message | Download mbox | Resend email | 
| Thread: | |
| Lists: | pgsql-hackers | 
Michael Meskes <meskes(at)postgresql(dot)org> wrote:
> On Sat, Jun 03, 2000 at 11:22:19AM +0900, SAKAIDA Masaaki wrote:
> > The following patch could solve the next error cases in 6.5.3-ecpglib.
> > 
> > case 1.
> >    strcpy(str, "T''EST'TEST");
> >    exec sql insert into ecpg_test values ( 11, :str, 'kobe' ) ;
> >    
> >    error(-201)(Too many arguments line 1025.
> > 
> > case 2. 
> >    str( str, "T'''?'ESTTEST");
> >    exec sql insert into ecpg_test values ( 11, :str, 'kobe' ) ;
> > 
> >    error(-202)(Too few arguments line 1024.)   
> > 
> > 
> > However, these problems seems to be solved in 7.0-ecpglib.
> 
> So that means the patch is not needed anymore?
In the meaning of bug-fix, the patch is not needed. Because you 
have already modified "next_insert()" in 7.0-ecpglib.  However 
in the meaning of speed-up, the patch will be needed.
--
Regards,
SAKAIDA Masaaki  -- Osaka, Japan
*** postgresql-7.0.1/src/interfaces/ecpg/lib/execute.c.orig	Tue Jun
6 15:02:34 2000
--- postgresql-7.0.1/src/interfaces/ecpg/lib/execute.c	Tue Jun  6 15:02:05 2000
***************
*** 278,283 ****
--- 278,284 ----
  		char	   *tobeinserted = NULL;
  		char	   *p;
  		char		buff[20];
+ 		int		hostvarl = 0;
  
  		/*
  		 * Some special treatment is needed for records since we want
***************
*** 559,565 ****
  			return false;
  
  		strcpy(newcopy, copiedquery);
! 		if ((p = next_insert(newcopy)) == NULL)
  		{
  
  			/*
--- 560,566 ----
  			return false;
  
  		strcpy(newcopy, copiedquery);
! 		if ((p = next_insert(newcopy + hostvarl)) == NULL)
  		{
  
  			/*
***************
*** 572,577 ****
--- 573,579 ----
  		else
  		{
  			strcpy(p, tobeinserted);
+ 			hostvarl = strlen(newcopy);
  
  			/*
  			 * The strange thing in the second argument is the rest of the
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Peter Mount | 2000-06-06 07:34:17 | RE: 7.0.1 is ready | 
| Previous Message | Peter Mount | 2000-06-06 06:55:58 | RE: 7.0.1 is ready |