Skip site navigation (1) Skip section navigation (2)

Re: Fulltextindex

From: "Christopher Kings-Lynne" <chriskl(at)familyhealth(dot)com(dot)au>
To: "Tom Lane" <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: "Hackers" <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Fulltextindex
Date: 2002-08-30 07:08:54
Message-ID: GNELIHDDFBOCMGBFGEFOMEPJCDAA.chriskl@familyhealth.com.au (view raw or flat)
Thread:
Lists: pgsql-hackers
OK, I was probably a little aggressive in my pruning...BTW, this code was
not written by me...

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

struct varlena *data;
char    *word           = "john";
char    *cur_pos        = NULL;
int     cur_pos_length  = 0;

data = (struct varlena *) palloc(VARHDRSZ + column_length + 1);
word_length = strlen(word);
cur_pos = &word[word_length - 2];

while(cur_pos > word)
{
	cur_pos_length = strlen(cur_pos);
	/* Line below causes seg fault on SECOND iteration */
	data->vl_len = cur_pos_length + sizeof(int32);
	memcpy(VARDATA(data), cur_pos, cur_pos_length);
	values[0] = PointerGetDatum(data);
	values[1] = 0;
	values[2] = oid;

	ret = SPI_execp(*(plan->splan), values, NULL, 0);
	if(ret != SPI_OK_INSERT)
		elog(ERROR, "Full Text Indexing: error executing plan in insert\n");

	cur_pos--;
}

> -----Original Message-----
> From: Tom Lane [mailto:tgl(at)sss(dot)pgh(dot)pa(dot)us]
> Sent: Friday, 30 August 2002 2:53 PM
> To: Christopher Kings-Lynne
> Cc: Hackers
> Subject: Re: Fulltextindex
>
>
> "Christopher Kings-Lynne" <chriskl(at)familyhealth(dot)com(dot)au> writes:
> > struct varlena *data;
> > char    *word           = NULL;
> > char    *cur_pos        = NULL;
> > int     cur_pos_length  = 0;
>
> > data = (struct varlena *) palloc(column_length);
>
> > while(cur_pos > word)
> > {
> > 	cur_pos_length = strlen(cur_pos);
> > 	/* Line below causes seg fault on SECOND iteration */
>
> You are not telling the whole truth here, as the above code excerpt
> will obviously never iterate the WHILE even once.  "NULL > NULL" is
> false in every C I ever heard of.
>
> Also, how much is column_length and how does it relate to the amount
> of data being copied into *data ?
>
> 			regards, tom lane
>


In response to

Responses

pgsql-hackers by date

Next:From: Christopher Kings-LynneDate: 2002-08-30 07:52:15
Subject: DROP COLUMN & TOASTED DATA
Previous:From: Christopher Kings-LynneDate: 2002-08-30 07:02:59
Subject: Re: RULE regression test failure

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group