* Marco Colombo <marco@xxxxxx> [28 05 02 18:26]: >On Tue, 28 May 2002, Eckhard Hoeffner wrote: > >> * Marco Colombo <marco@xxxxxx> [28 05 02 17:32]: > >> >AFAIK, a CURSOR may be used only inside a single transaction, not a >> >single session. So it can't be used to 'page' the output of a query, >> >for example. >> > >> >And, also AFAIK, even with pconnect, each connect creates a different >> >session. Only the (TCP) connection is re-used. I mean, nothing changes >> >from the PHP script standpoint when you switch from pg_connect() to >> >pg_pconnect(). >> >> I think, you are right. The connection browser<->web server is cut >> after the web server has send all TCP/IP-packages, no matter how >> long it takes till they are received on the client side (browser). >> If there ist a request for a new database connection, the web server >> does not know whether this is the former user or a new user. For >> this reason the result I wanted to acchive is not possible. > >Well, with HTTP keepalive, it may even keep the HTTP session open. >But the problem is that you can't relay on it. >Moreover, I suspect that PHP resets the SQL session when it performs >an pconnect (that means, it asks the SQL backend to abort uncommitted >transactions, drop TEMP relations, and so on). > >And, no matter what is the actual behaviour, the docs are clear: > > "An important summary. Persistent connections were designed to have > one-to-one mapping to regular connections. That means that you should > always be able to replace persistent connections with non-persistent > connections, and it won't change the way your script behaves. It may > (and probably will) change the efficiency of the script, but not its > behavior!" > >so even if it worked, it's an undocumented feature... well, it's a bug, I did not claim, that it worked and after having read the thread I also think, it will not work, however, I will try this at home. If it works, I will send the results. -- --//--\\-- Eckhard Hoeffner e-hoeffner@xxxxxxxxxxx Tal 44 D-80331 München