I have just discovered that the recently implemented pipe chunking protocol is broken on Windows. This is because the pipes are operating in text mode and doing LF->CR-LF translation, so the number of bytes received is not the number transmitted and set in the protocol header.

I have not yet succeeded in turning this behaviour off (_setmode() didn't seem to affect it). If we can't find a way to turn it off, the only solution short of abandoning its use on Windows that I can think of is to translate LF on input to something unlikely like 0x1C and then translate it back when we read it from the pipe.



---------------------------(end of broadcast)---------------------------
TIP 7: You can help support the PostgreSQL project by donating at


Reply via email to