git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] git-svn: workaround for a bug in svn serf backend

From
Jonathan Nieder <jrnieder@gmail.com>
Date
Dec 26, 2013, 20:28 UTC
Message-ID
<20131226202805.GV20443@google.com>
In-Reply-To
<1388059524-4864-1-git-send-email-rkagan@mail.ru>
Roman Kagan wrote:
> Subversion serf backend in versions 1.8.5 and below has a bug that the
> function creating the descriptor of a file change -- add_file() --
> doesn't make a copy of its 3d argument when storing it on the returned

3d makes me think of 3-dimensional. ;-) I think you mean third (or the abbreviation 3rd).

> descriptor.  As a result, by the time this field is used (in
> transactions of file copying or renaming) it may well be released.

Please describe the symptom so this patch is easy to find when other people run into it.

Do I remember correctly that "... released and scribbled over with a new value, causing such-and-such assertion to fire" was what happened?

> This patch works around this bug, by storing the value to be passed as
> the 3d argument to add_file() in a local variable with the same scope as
> the file change descriptor, making sure their lifetime is the same.

Could this be reproduced with a test script to make sure we don't reintroduce the bug again later? (It's okay if the test only fails on machines with the problematic svn version.)

Modulo the confusing 3-dimensional arguments in comments, the code change looks good.

Thanks and hope that helps, Jonathan

Previous: Roman KaganNext: Roman Kagan
Message 12 of 27 in “Fwd: Error with git-svn pushing a rename”
  1. Benjamin PabstNov 14, 2013
  2. Andreas StrickerNov 15, 2013
  3. Andreas StrickerNov 15, 2013
  4. Jonathan NiederNov 15, 2013
  5. Andreas StrickerNov 17, 2013
  6. Benjamin PabstNov 20, 2013
  7. Roman KaganDec 24, 2013
  8. Roman KaganDec 25, 2013
  9. Roman KaganDec 25, 2013
  10. Thomas RastDec 25, 2013
  11. git-svn: workaround for a bug in svn serf backendRoman Kagan, Dec 26, 2013
  12. Jonathan NiederDec 26, 2013
  13. Roman KaganDec 27, 2013
  14. Roman KaganDec 27, 2013
  15. git-svn: workaround for a bug in svn serf backendRoman Kagan, Dec 27, 2013
  16. Jonathan NiederDec 27, 2013
  17. Eric WongDec 27, 2013
  18. Junio C HamanoDec 27, 2013
  19. Roman KaganDec 28, 2013
  20. Junio C HamanoDec 30, 2013
  21. Roman KaganDec 31, 2013
  22. Roman KaganJan 17, 2014
  23. Junio C HamanoJan 17, 2014
  24. Andreas StrickerJan 6, 2014
  25. Thomas RastDec 30, 2013
  26. Roman KaganDec 30, 2013
  27. Benjamin PabstNov 18, 2013

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.