Missing empty transaction optimization in pgoutput plugin
| От | Ashutosh Bapat |
|---|---|
| Тема | Missing empty transaction optimization in pgoutput plugin |
| Дата | |
| Msg-id | CAExHW5tSVyf7fjaCF4jk4swvwzO-hZp=wvOHXthmaMDWtc0eGA@mail.gmail.com обсуждение исходный текст |
| Ответы |
Re: Missing empty transaction optimization in pgoutput plugin
RE: Missing empty transaction optimization in pgoutput plugin |
| Список | pgsql-hackers |
Hi All, test_decoding output plugin skips sending stream_start and stream_end if no change from a segment of a streamed transaction is sent downstream. If no change has been sent downstream across all the streamed segments it doesn't send commit or abort for that streamed transaction. But I don't see similar changes in stream related callbacks in pgoutput output plugin. While the changes discussed in thread [1] were committed, those didn't include this optimization for test_decoding plugin as well. The optimization was discussed in [2] separately as a bug fix. Maybe because it wasn't considered as an optimization that time, we may not have considered it for pgoutput plugin which doesn't have explicit skip-empty-xacts option. I think the optimization would be useful in setups where multiple publications and long transactions are common. Any reason not to have it. [1] https://www.postgresql.org/message-id/flat/688b0b7f-2f6c-d827-c27b-216a8e3ea700%402ndquadrant.com [2] https://www.postgresql.org/message-id/flat/CAA4eK1%2BOqgFNZkf7%3DETe_y5ntjgDk3T0wcdkd4Sot_u1hySGfw%40mail.gmail.com -- Best Wishes, Ashutosh Bapat
В списке pgsql-hackers по дате отправления: