Message-ID: From: "davecramer (@davecramer)" To: "pgjdbc/pgjdbc" Date: Thu, 14 May 2026 14:38:08 +0000 Subject: [pgjdbc/pgjdbc] PR #4071: Pipeline option b List-Id: X-GitHub-Author-Id: 406518 X-GitHub-Author-Login: davecramer X-GitHub-Issue: 4071 X-GitHub-Repo: pgjdbc/pgjdbc X-GitHub-State: closed X-GitHub-Type: pull_request X-GitHub-Url: https://github.com/pgjdbc/pgjdbc/pull/4071 Content-Type: text/plain; charset=utf-8 feat(pipeline): route simple queries through reader thread (Option B) Remove pause/unpause mechanism from PipelineReaderThread and instead route simple protocol queries through the pipeline via new executeSimplePipeline() and executeBatchSimplePipeline() methods. Key changes: - Remove pause()/unpause() and associated polling logic from reader thread - Add executeSimplePipeline() that sends 'Q' messages and waits on a ResponseSlot for the reader thread to deliver results - Add executeBatchSimplePipeline() for batch simple query execution - Fix slot ordering: add slots to pending queue before flush/sync to prevent race where reader processes response before slot exists