]> git.ipfire.org Git - thirdparty/psycopg.git/commitdiff
fix: fix iteration on server-side cursor 1227/head
authorDaniele Varrazzo <daniele.varrazzo@gmail.com>
Tue, 2 Dec 2025 18:01:53 +0000 (19:01 +0100)
committerDaniele Varrazzo <daniele.varrazzo@gmail.com>
Tue, 2 Dec 2025 18:03:47 +0000 (19:03 +0100)
Close #1226

docs/news.rst
psycopg/psycopg/_server_cursor.py
psycopg/psycopg/_server_cursor_async.py

index d0aeff505b64a5a2f310c57af5b286d6c7833a01..c8d569831c59696ebecf84981e4187a5bc27ce5e 100644 (file)
@@ -7,6 +7,15 @@
 ``psycopg`` release notes
 =========================
 
+Future releases
+---------------
+
+Psycopg 3.3.1 (unreleased)
+^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+Fix iteration on server-side cursors (:ticket:`#1226`).
+
+
 Current release
 ---------------
 
index 6eefb851092ead84b88a6b247717920415a555f1..413961e661876af1f70b2638700fe0b684b79752 100644 (file)
@@ -140,7 +140,7 @@ class ServerCursor(ServerCursorMixin["Connection[Any]", Row], Cursor[Row]):
         ):
             with self._conn.lock:
                 self._iter_rows = self._conn.wait(self._fetch_gen(self.itersize))
-                self._page_pos += 0
+                self._page_pos = 0
 
         if self._page_pos >= len(self._iter_rows):
             raise StopIteration("no more records to return")
index a37084b321bbe9dc120ffb35cb5f00533e085b78..0150e7818a783fb179c765765e365946ac84d167 100644 (file)
@@ -138,7 +138,7 @@ class AsyncServerCursor(
         ):
             async with self._conn.lock:
                 self._iter_rows = await self._conn.wait(self._fetch_gen(self.itersize))
-                self._page_pos += 0
+                self._page_pos = 0
 
         if self._page_pos >= len(self._iter_rows):
             raise StopAsyncIteration("no more records to return")