[ https://issues.apache.org/jira/browse/SVN-2354?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15769874#comment-15769874 ]
Julian Foad edited comment on SVN-2354 at 12/22/16 11:56 AM: ------------------------------------------------------------- A real, though not particularly important, use case has been encountered in which "svn propget" runs out of memory. In diagnosing merge problems, people sometimes suggest running "svn propget --recursive svn:mergeinfo" (perhaps with --xml, which I don't think is relevant here) at the repository root in order to easily collect mergeinfo for all branches at once. In a recent case, a WANdisco customer tried this on a repository with a lot of branches and a lot of mergeinfo, and it ran out of memory on a machine with 30 GB of RAM. A fix is not needed for this case, but it does illustrate that it it perfectly feasible to encounter such cases in real life. was (Author: julianfoad): A real, though not particularly important, use case has been encountered in which "svn propget" runs out of memory. In diagnosing merge problems, people sometimes suggest running "svn propget --recursive svn:mergeinfo" (perhaps with --xml, which I don't think is relevant here) at the repository root in order to easily collect mergeinfo for all branches at once. In a recent case, a WANdisco customer tried this and it ran out of memory on a machine with 30 GB of RAM. A fix is not needed for this case, but it does illustrate that it it perfectly feasible to encounter such cases in real life. > Make svn_client_propget/list APIs use streamy notification. > ----------------------------------------------------------- > > Key: SVN-2354 > URL: https://issues.apache.org/jira/browse/SVN-2354 > Project: Subversion > Issue Type: Improvement > Components: libsvn_client > Affects Versions: 1.2.x > Reporter: C. Michael Pilato > Fix For: unscheduled > > > The current implementations of libsvn_client's property functions currently > offer only the following feedback mechanisms: > * a single error code (which doesn't offer per-item feedback on recursive > operations) > * a massive hash of paths and properties (which is very un-streamy, memory > wasteful, etc.) > -The property setting functions should learn to use the client notification- > -function and baton to report per-item status of operations ("i did set that- > -property on path FOO", "i ran into an error setting that property on path > BAR",- > -etc.).- (See SVN-783) > The property getting functions should grow custom callbacks for > reporting property findings on a per-item basis, something like: > * propget: path -> (err, propval) > * proplist: path -> (err, { propname : propval, propname : propval ... }) > And then, the command-line client should learn to use the now-streamy APIs. -- This message was sent by Atlassian JIRA (v6.3.4#6332)