Calvin Wan <calvinwan@xxxxxxxxxx> writes: > While `info` takes object ids one at a time, this creates overhead when > making requests to a server so `remote-object-info` instead can take > multiple object ids at once. I am not sure if the above is desirable---doesn't it make the protocol (i.e. the requests the invoker of "cat-file" needs to prepare) unnecessarily complex? If we have "buffered" mode, the implementation can collect and batch requests and talk with the other side in a single communication with the other end, no? > In --buffer mode, this changes to: > > - Receive and parse input from user > - Store respective function attached to command in a queue > - After flush, loop through commands in queue > - Call respective function attached to command > - Set batch mode state, get object info, print object info So, the existing buffered mode is poorly designed, in other words. Isn't this something we can fix for performance without affecting the existing callers?