On 03/29/2018 11:58 PM, Andres Freund wrote: > On 2018-03-29 23:52:18 +0200, Tomas Vondra wrote: >>> I have added details about this in src/backend/storage/lmgr/README as >>> suggested by you. >>> >> >> Thanks. I think the README is a good start, but I think we also need to >> improve the comments, which is usually more detailed than the README. >> For example, it's not quite acceptable that LogicalLockTransaction and >> LogicalUnlockTransaction have about no comments, especially when it's >> meant to be public API for decoding plugins. > > FWIW, for me that's ground to not accept the feature. Burdening output > plugins with this will make their development painful (because they'll > have to adapt regularly) and correctness doubful (there's nothing > checking for the lock being skipped). Another way needs to be found. >
The lack of docs/comments, or the fact that the decoding plugins would need to do some lock/unlock operation? I agree with the former, of course - docs are a must. I disagree with the latter, though - there have been about no proposals how to do it without the locking. If there are, I'd like to hear about it. FWIW plugins that don't want to decode in-progress transactions don't need to do anything, obviously. regards -- Tomas Vondra http://www.2ndQuadrant.com PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services