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

Re: [PATCH] t9010: svnadmin can fail even if available

From
Junio C Hamano <gitster@pobox.com>
Date
Jan 6, 2011, 20:16 UTC
Message-ID
<7vpqs9aiul.fsf@alter.siamese.dyndns.org>
In-Reply-To
<20110106180051.GC11346@burratino>
Jonathan Nieder <jrnieder@gmail.com> writes:
Show 18 quoted lines
> If svn is built against one version of SQLite and run against
> another, svnadmin (needlessly) errors out during t9010:
>
>  <<< Started new transaction, based on original revision 1
>       * adding path : branches ... done.
>       * adding path : trunk ... done.
>  svnadmin: Couldn't perform atomic initialization
>  svnadmin: Couldn't perform atomic initialization
>  svnadmin: SQLite compiled for 3.7.4, but running with 3.7.3
>
> Work around this by putting the svn invocations into a single test
> that builds a repo to compare the test-svn-fe result against.  This
> test would always pass but only set the new SVNREPO test prereq if svn
> succeeds; and the test using that repo gets an SVNREPO prerequisite so
> it only runs with working svn installations.
>
> This seems like the right thing to, anyway: the test script is meant
> to test the version of git just built, not the installed svn.

Yes, and I understand that this will prevent the mailing list from getting spammed by useless "bug reports" that should have been directed to distros that packaged broken subversion, which is a plus.

But I am somewhat unhappy because I do not think we want to cater to all the broken installations of system tools. When tests fail because somebody's "mkdir -p" (just a random example I picked from your patch) does not work correctly, we would just say "Your system is broken, and here is a nickle; get a better computer". Why is svnadmin so special?

Also isn't the breakage not just this test, but also in all the tests that try to run "svnadmin load"? Shouldn't we somehow hoist this logic out of t9010 and put it in t/lib-vcs-svn.sh or somewhere?

As far as I understand, svn interoperability bits (git-svn and vcs-svn) do not rely on svnadmin at runtime, so a breakage in the system's svnadmin would not be a reason to omit building and installing them. It however somehow feels wrong to install something we cannot even test. I do not have a good solution to this offhand, though.

Previous: A Large Angry SCMNext: Jonathan Nieder
Message 6 of 13 in “Repeatable test t9010-svn-fe.sh failure w/ master (685e9d9, 1.7.4.rc1)”
  1. A Large Angry SCMJan 6, 2011
  2. Jonathan NiederJan 6, 2011
  3. A Large Angry SCMJan 6, 2011
  4. t9010: svnadmin can fail even if availableJonathan Nieder, Jan 6, 2011
  5. A Large Angry SCMJan 6, 2011
  6. Junio C HamanoJan 6, 2011
  7. Jonathan NiederJan 6, 2011
  8. Junio C HamanoJan 7, 2011
  9. Jonathan NiederJan 7, 2011
  10. Ramkumar RamachandraJan 7, 2011
  11. Junio C HamanoJan 7, 2011
  12. Junio C HamanoJan 6, 2011
  13. A Large Angry SCMJan 6, 2011

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.