pike.git/
lib/
modules/
Sql.pmod/
pgsql_util.pmod
Branch:
Tag:
Non-build tags
All tags
No tags
2018-05-17
2018-05-17 07:27:01 by Stephen R. van den Berg <srb@cuci.nl>
e5da1bf67e412cb993121063bdf607a4ed6b5731 (
14
lines) (+
10
/-
4
)
[
Show
|
Annotate
]
Branch:
8.0
pgsql: Return data even after the local backend has died.
1497:
return local_backend->call_out(gottimeout, timeout); }
+
inline void scuttletimeout(array cid) {
+
if (local_backend)
+
local_backend->remove_call_out(cid);
+
}
+
//! @returns //! One result row at a time. //!
1515:
PD("%O Block for datarow\n", _portalname); array cid = setuptimeout(); PT(datarow = datarows->read());
-
local_backend->remove_call_out
(cid);
+
scuttletimeout
(cid);
if (arrayp(datarow)) return datarow; }
1542:
if (!sizeof(datarow)) { array cid = setuptimeout(); PT(datarow = datarows->read_array());
-
local_backend->remove_call_out
(cid);
+
scuttletimeout
(cid);
} replenishrows(); if (arrayp(datarow[-1]))
1585:
for (;;) { array cid = setuptimeout(); PT(datarow = datarows->read());
-
local_backend->remove_call_out
(cid);
+
scuttletimeout
(cid);
if (!arrayp(datarow)) break; callout(callback, 0, this, datarow, @args);
1614:
for (;;) { array cid = setuptimeout(); PT(datarow = datarows->read_array());
-
local_backend->remove_call_out
(cid);
+
scuttletimeout
(cid);
if (!datarow || !arrayp(datarow[-1])) break; callout(callback, 0, this, datarow, @args);