PGRES_POLLING_ACTIVE is unused...

Started by Lennert Buytenhekover 23 years ago5 messagespatches
Jump to latest
#1Lennert Buytenhek
buytenh@gnu.org

...any reason why it is there at all?

(Please CC, not on this list.)

diff -urN postgresql-7.3.2.orig/doc/src/sgml/libpq.sgml postgresql-7.3.2/doc/src/sgml/libpq.sgml
--- postgresql-7.3.2.orig/doc/src/sgml/libpq.sgml	2003-01-30 20:50:07.000000000 +0100
+++ postgresql-7.3.2/doc/src/sgml/libpq.sgml	2003-02-26 17:20:34.000000000 +0100
@@ -316,9 +316,7 @@
   </para>
   <para>
    If <function>PQconnectStart</> succeeds, the next stage is to poll <application>libpq</> so that it may
-   proceed with the connection sequence.  Loop thus: Consider a connection
-   <quote>inactive</quote> by default. If <function>PQconnectPoll</function> last returned <symbol>PGRES_POLLING_ACTIVE</>,
-   consider it <quote>active</quote> instead. If <function>PQconnectPoll(conn)</function> last returned
+   proceed with the connection sequence.  Loop thus: If <function>PQconnectPoll(conn)</function> last returned
    <symbol>PGRES_POLLING_READING</symbol>, perform a <function>select()</> for reading on <function>PQsocket(conn)</function>. If
    it last returned <symbol>PGRES_POLLING_WRITING</symbol>, perform a <function>select()</> for writing on
    <function>PQsocket(conn)</function>. If you have yet to call <function>PQconnectPoll</function>, i.e. after the call
diff -urN postgresql-7.3.2.orig/src/interfaces/libpq/fe-connect.c postgresql-7.3.2/src/interfaces/libpq/fe-connect.c
--- postgresql-7.3.2.orig/src/interfaces/libpq/fe-connect.c	2003-01-30 20:50:07.000000000 +0100
+++ postgresql-7.3.2/src/interfaces/libpq/fe-connect.c	2003-02-26 17:19:04.000000000 +0100
@@ -1090,9 +1090,6 @@
 		 */
 		switch (flag)
 		{
-			case PGRES_POLLING_ACTIVE:
-				break;
-
 			case PGRES_POLLING_OK:
 				return 1;		/* success! */

@@ -1804,9 +1801,6 @@
*/
switch (flag)
{
- case PGRES_POLLING_ACTIVE:
- break;
-
case PGRES_POLLING_OK:
return true; /* success! */

diff -urN postgresql-7.3.2.orig/src/interfaces/libpq/libpq-fe.h postgresql-7.3.2/src/interfaces/libpq/libpq-fe.h
--- postgresql-7.3.2.orig/src/interfaces/libpq/libpq-fe.h	2002-09-04 22:31:47.000000000 +0200
+++ postgresql-7.3.2/src/interfaces/libpq/libpq-fe.h	2003-02-26 17:19:22.000000000 +0100
@@ -65,7 +65,6 @@
 	PGRES_POLLING_READING,		/* These two indicate that one may	  */
 	PGRES_POLLING_WRITING,		/* use select before polling again.   */
 	PGRES_POLLING_OK,
-	PGRES_POLLING_ACTIVE		/* Can call poll function immediately. */
 } PostgresPollingStatusType;

typedef enum

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: Lennert Buytenhek (#1)
Re: PGRES_POLLING_ACTIVE is unused...

Lennert Buytenhek <buytenh@gnu.org> writes:

...any reason why it is there at all?

Good question. Some digging in CVS shows that it was unused even in the
patch that introduced it, and never has been used in any release since.
So it does seem like useless complication.

However, I think it'd be unwise to remove the constant from libpq-fe.h,
because that would break the application of any poor sod who believed
the documentation and wrote code that actually checks for
PGRES_POLLING_ACTIVE.

I'd be inclined to remove it from the documentation and the library
innards, but leave something like this in libpq-fe.h:

PGRES_POLLING_ACTIVE /* unused; keep for awhile for
* backwards compatibility */

regards, tom lane

#3Bruce Momjian
bruce@momjian.us
In reply to: Lennert Buytenhek (#1)
Re: PGRES_POLLING_ACTIVE is unused...

Your patch has been added to the PostgreSQL unapplied patches list at:

http://momjian.postgresql.org/cgi-bin/pgpatches

I will try to apply it within the next 48 hours.

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

Lennert Buytenhek wrote:

...any reason why it is there at all?

(Please CC, not on this list.)

diff -urN postgresql-7.3.2.orig/doc/src/sgml/libpq.sgml postgresql-7.3.2/doc/src/sgml/libpq.sgml
--- postgresql-7.3.2.orig/doc/src/sgml/libpq.sgml	2003-01-30 20:50:07.000000000 +0100
+++ postgresql-7.3.2/doc/src/sgml/libpq.sgml	2003-02-26 17:20:34.000000000 +0100
@@ -316,9 +316,7 @@
</para>
<para>
If <function>PQconnectStart</> succeeds, the next stage is to poll <application>libpq</> so that it may
-   proceed with the connection sequence.  Loop thus: Consider a connection
-   <quote>inactive</quote> by default. If <function>PQconnectPoll</function> last returned <symbol>PGRES_POLLING_ACTIVE</>,
-   consider it <quote>active</quote> instead. If <function>PQconnectPoll(conn)</function> last returned
+   proceed with the connection sequence.  Loop thus: If <function>PQconnectPoll(conn)</function> last returned
<symbol>PGRES_POLLING_READING</symbol>, perform a <function>select()</> for reading on <function>PQsocket(conn)</function>. If
it last returned <symbol>PGRES_POLLING_WRITING</symbol>, perform a <function>select()</> for writing on
<function>PQsocket(conn)</function>. If you have yet to call <function>PQconnectPoll</function>, i.e. after the call
diff -urN postgresql-7.3.2.orig/src/interfaces/libpq/fe-connect.c postgresql-7.3.2/src/interfaces/libpq/fe-connect.c
--- postgresql-7.3.2.orig/src/interfaces/libpq/fe-connect.c	2003-01-30 20:50:07.000000000 +0100
+++ postgresql-7.3.2/src/interfaces/libpq/fe-connect.c	2003-02-26 17:19:04.000000000 +0100
@@ -1090,9 +1090,6 @@
*/
switch (flag)
{
-			case PGRES_POLLING_ACTIVE:
-				break;
-
case PGRES_POLLING_OK:
return 1;		/* success! */

@@ -1804,9 +1801,6 @@
*/
switch (flag)
{
- case PGRES_POLLING_ACTIVE:
- break;
-
case PGRES_POLLING_OK:
return true; /* success! */

diff -urN postgresql-7.3.2.orig/src/interfaces/libpq/libpq-fe.h postgresql-7.3.2/src/interfaces/libpq/libpq-fe.h
--- postgresql-7.3.2.orig/src/interfaces/libpq/libpq-fe.h	2002-09-04 22:31:47.000000000 +0200
+++ postgresql-7.3.2/src/interfaces/libpq/libpq-fe.h	2003-02-26 17:19:22.000000000 +0100
@@ -65,7 +65,6 @@
PGRES_POLLING_READING,		/* These two indicate that one may	  */
PGRES_POLLING_WRITING,		/* use select before polling again.   */
PGRES_POLLING_OK,
-	PGRES_POLLING_ACTIVE		/* Can call poll function immediately. */
} PostgresPollingStatusType;

typedef enum

---------------------------(end of broadcast)---------------------------
TIP 6: Have you searched our list archives?

http://archives.postgresql.org

-- 
  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
#4Bruce Momjian
bruce@momjian.us
In reply to: Tom Lane (#2)
Re: PGRES_POLLING_ACTIVE is unused...

This change will be made to the poll patch:

Your patch has been added to the PostgreSQL unapplied patches list at:

http://momjian.postgresql.org/cgi-bin/pgpatches

I will try to apply it within the next 48 hours.

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

Tom Lane wrote:

Lennert Buytenhek <buytenh@gnu.org> writes:

...any reason why it is there at all?

Good question. Some digging in CVS shows that it was unused even in the
patch that introduced it, and never has been used in any release since.
So it does seem like useless complication.

However, I think it'd be unwise to remove the constant from libpq-fe.h,
because that would break the application of any poor sod who believed
the documentation and wrote code that actually checks for
PGRES_POLLING_ACTIVE.

I'd be inclined to remove it from the documentation and the library
innards, but leave something like this in libpq-fe.h:

PGRES_POLLING_ACTIVE /* unused; keep for awhile for
* backwards compatibility */

regards, tom lane

---------------------------(end of broadcast)---------------------------
TIP 5: Have you checked our extensive FAQ?

http://www.postgresql.org/users-lounge/docs/faq.html

-- 
  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
#5Bruce Momjian
bruce@momjian.us
In reply to: Lennert Buytenhek (#1)
Re: PGRES_POLLING_ACTIVE is unused...

Patch applied. Thanks.

Symbol kept in include file for backward compatibility, with comment.

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

Lennert Buytenhek wrote:

...any reason why it is there at all?

(Please CC, not on this list.)

diff -urN postgresql-7.3.2.orig/doc/src/sgml/libpq.sgml postgresql-7.3.2/doc/src/sgml/libpq.sgml
--- postgresql-7.3.2.orig/doc/src/sgml/libpq.sgml	2003-01-30 20:50:07.000000000 +0100
+++ postgresql-7.3.2/doc/src/sgml/libpq.sgml	2003-02-26 17:20:34.000000000 +0100
@@ -316,9 +316,7 @@
</para>
<para>
If <function>PQconnectStart</> succeeds, the next stage is to poll <application>libpq</> so that it may
-   proceed with the connection sequence.  Loop thus: Consider a connection
-   <quote>inactive</quote> by default. If <function>PQconnectPoll</function> last returned <symbol>PGRES_POLLING_ACTIVE</>,
-   consider it <quote>active</quote> instead. If <function>PQconnectPoll(conn)</function> last returned
+   proceed with the connection sequence.  Loop thus: If <function>PQconnectPoll(conn)</function> last returned
<symbol>PGRES_POLLING_READING</symbol>, perform a <function>select()</> for reading on <function>PQsocket(conn)</function>. If
it last returned <symbol>PGRES_POLLING_WRITING</symbol>, perform a <function>select()</> for writing on
<function>PQsocket(conn)</function>. If you have yet to call <function>PQconnectPoll</function>, i.e. after the call
diff -urN postgresql-7.3.2.orig/src/interfaces/libpq/fe-connect.c postgresql-7.3.2/src/interfaces/libpq/fe-connect.c
--- postgresql-7.3.2.orig/src/interfaces/libpq/fe-connect.c	2003-01-30 20:50:07.000000000 +0100
+++ postgresql-7.3.2/src/interfaces/libpq/fe-connect.c	2003-02-26 17:19:04.000000000 +0100
@@ -1090,9 +1090,6 @@
*/
switch (flag)
{
-			case PGRES_POLLING_ACTIVE:
-				break;
-
case PGRES_POLLING_OK:
return 1;		/* success! */

@@ -1804,9 +1801,6 @@
*/
switch (flag)
{
- case PGRES_POLLING_ACTIVE:
- break;
-
case PGRES_POLLING_OK:
return true; /* success! */

diff -urN postgresql-7.3.2.orig/src/interfaces/libpq/libpq-fe.h postgresql-7.3.2/src/interfaces/libpq/libpq-fe.h
--- postgresql-7.3.2.orig/src/interfaces/libpq/libpq-fe.h	2002-09-04 22:31:47.000000000 +0200
+++ postgresql-7.3.2/src/interfaces/libpq/libpq-fe.h	2003-02-26 17:19:22.000000000 +0100
@@ -65,7 +65,6 @@
PGRES_POLLING_READING,		/* These two indicate that one may	  */
PGRES_POLLING_WRITING,		/* use select before polling again.   */
PGRES_POLLING_OK,
-	PGRES_POLLING_ACTIVE		/* Can call poll function immediately. */
} PostgresPollingStatusType;

typedef enum

---------------------------(end of broadcast)---------------------------
TIP 6: Have you searched our list archives?

http://archives.postgresql.org

-- 
  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