[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: postgresql



On Thu, Oct 18, 2001 at 11:56:03AM +0300, Sergey Chumakov wrote:
> On Thu, Oct 18, 2001 at 01:54:28PM -0700, Viktor Vislobokov wrote:
> > > Hi, All!
> > >
> > > Сорри, вопрос не совсем про дебиан.
> > > С помощью какого интерфейса и каким образом можно записать в
> > > PostgreSQL поле типа TEXT строку размером > pagesize (8k).
> > 
> >         А что обычные уже не работают? Ты пробовал?
> >         Помоему такое ограничение было у старых версий, а с новыми
> > такого нет.
> 
> 7.1.3
> Пробую c libpq PQexec(conn, "update test set f1='AAAA..8k+1'")
> Возвращается NULL. Cледующиц PQexec(conn, "select f1 from test")
> выдает ошибку про незакрытую '''. Я так понимаю на каком-то этапе
> управление вернулось, но весь буфер с запросом небыл обработан.
> 

Вылезает это только если клиент на windows - нативный или цыгвиновый.
Похоже вот это место в PQsendQuery (в конце) виновато:

	else
	{
		/*
		 * the frontend-backend protocol uses 'Q' to designate queries
		 */
		if (pqPutnchar("Q", 1, conn) ||
			pqPuts(query, conn) ||
			pqFlush(conn))
		{
			handleSendFailure(conn);
			return 0;
		}
	}

т.е. виновато не явно - если обламывается один из первых двух вызовов
(что по видимому м получается) не очищается out buffer.

-- 
Best regards,
Sergey Chumakov 2:450/77[.43]



Reply to: