All of lore.kernel.org
 help / color / mirror / Atom feed
* Repeatable test t9010-svn-fe.sh failure w/ master (685e9d9, 1.7.4.rc1)
@ 2011-01-06 16:04 A Large Angry SCM
  2011-01-06 16:59 ` Jonathan Nieder
  0 siblings, 1 reply; 13+ messages in thread
From: A Large Angry SCM @ 2011-01-06 16:04 UTC (permalink / raw)
  To: Jonathan Nieder, Junio C Hamano; +Cc: Git Mailing List

System:
	Linux debian 2.6.32-5-amd64 #1 SMP Fri Dec 10 15:35:08 UTC 2010 x86_64 
GNU/Linux
	All installed packages up-to-date as of 2011-01-06 15:55 UTC

Git:
	Latest master (685e9d9)
	$ ./git --version
	git version 1.7.4.rc1

Svn:
	libsvn-perl	1.6.12dfsg-3
	libsvn1		1.6.12dfsg-3
	subversion	1.6.12dfsg-3

Invocation:
	(make NO_OPENSSL=1 'gitexecdir=$(bindir)' all test strip)



*** t9010-svn-fe.sh ***
ok 1 - empty dump
ok 2 - v3 dumps not supported
not ok - 3 t9135/svn.dump
#
#               svnadmin create simple-svn &&
#               svnadmin load simple-svn 
<"$TEST_DIRECTORY/t9135/svn.dump" &&
#               svn_cmd export "file://$PWD/simple-svn" simple-svnco &&
#               git init simple-git &&
#               test-svn-fe "$TEST_DIRECTORY/t9135/svn.dump" >simple.fe &&
#               (
#                       cd simple-git &&
#                       git fast-import <../simple.fe
#               ) &&
#               (
#                       cd simple-svnco &&
#                       git init &&
#                       git add . &&
#                       git fetch ../simple-git master &&
#                       git diff --exit-code FETCH_HEAD
#               )
#
# failed 1 among 3 test(s)
1..3

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Repeatable test t9010-svn-fe.sh failure w/ master (685e9d9, 1.7.4.rc1)
  2011-01-06 16:04 Repeatable test t9010-svn-fe.sh failure w/ master (685e9d9, 1.7.4.rc1) A Large Angry SCM
@ 2011-01-06 16:59 ` Jonathan Nieder
  2011-01-06 17:20   ` A Large Angry SCM
  0 siblings, 1 reply; 13+ messages in thread
From: Jonathan Nieder @ 2011-01-06 16:59 UTC (permalink / raw)
  To: A Large Angry SCM; +Cc: Junio C Hamano, Git Mailing List

A Large Angry SCM wrote:

> *** t9010-svn-fe.sh ***
> ok 1 - empty dump
> ok 2 - v3 dumps not supported
> not ok - 3 t9135/svn.dump

Thanks for reporting.  Unfortunately I haven't been able to reproduce
this on the machines I have access to (amd64 with svn 1.5.0 and i386
with svn 1.6.15).

Does running

	sh t9010-svn-fe.sh -v

from the t/ directory give an error message?  If not, how about

	GIT_TRACE=1 sh -x t9010-svn-fe.sh -v

?

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Repeatable test t9010-svn-fe.sh failure w/ master (685e9d9, 1.7.4.rc1)
  2011-01-06 16:59 ` Jonathan Nieder
@ 2011-01-06 17:20   ` A Large Angry SCM
  2011-01-06 18:00     ` [PATCH] t9010: svnadmin can fail even if available Jonathan Nieder
  2011-01-06 18:15     ` Repeatable test t9010-svn-fe.sh failure w/ master (685e9d9, 1.7.4.rc1) Junio C Hamano
  0 siblings, 2 replies; 13+ messages in thread
From: A Large Angry SCM @ 2011-01-06 17:20 UTC (permalink / raw)
  To: Jonathan Nieder; +Cc: Junio C Hamano, Git Mailing List

[-- Attachment #1: Type: text/plain, Size: 569 bytes --]

On 01/06/2011 11:59 AM, Jonathan Nieder wrote:
> A Large Angry SCM wrote:
>
>> *** t9010-svn-fe.sh ***
>> ok 1 - empty dump
>> ok 2 - v3 dumps not supported
>> not ok - 3 t9135/svn.dump
>
> Thanks for reporting.  Unfortunately I haven't been able to reproduce
> this on the machines I have access to (amd64 with svn 1.5.0 and i386
> with svn 1.6.15).
>
> Does running
>
> 	sh t9010-svn-fe.sh -v
>
> from the t/ directory give an error message?  If not, how about
>
> 	GIT_TRACE=1 sh -x t9010-svn-fe.sh -v
>
> ?
>

See the attached typescript files from the above runs.

[-- Attachment #2: typescript1.txt --]
[-- Type: text/plain, Size: 3525 bytes --]

Script started on Thu 06 Jan 2011 12:11:03 PM EST
XXXXXXXX@debian:~/GIT/git/t$ sh t9010-svn-fe.sh -v
Initialized empty Git repository in /home/XXXXXXXX/GIT/git/t/trash directory.t9010-svn-fe/.git/
^[[33mexpecting success: 
	reinit_git &&
	echo "SVN-fs-dump-format-version: 2" >input &&
	test-svn-fe input >stream &&
	git fast-import <stream
^[(B^[[m
Initialized empty Git repository in /home/XXXXXXXX/GIT/git/t/trash directory.t9010-svn-fe/.git/
git-fast-import statistics:
---------------------------------------------------------------------
Alloc'd objects:       5000
Total objects:            0 (         0 duplicates                  )
      blobs  :            0 (         0 duplicates          0 deltas)
      trees  :            0 (         0 duplicates          0 deltas)
      commits:            0 (         0 duplicates          0 deltas)
      tags   :            0 (         0 duplicates          0 deltas)
Total branches:           0 (         0 loads     )
      marks:           1024 (         0 unique    )
      atoms:              0
Memory total:          2282 KiB
       pools:          2048 KiB
     objects:           234 KiB
---------------------------------------------------------------------
pack_report: getpagesize()            =       4096
pack_report: core.packedGitWindowSize = 1073741824
pack_report: core.packedGitLimit      = 8589934592
pack_report: pack_used_ctr            =          0
pack_report: pack_mmap_calls          =          0
pack_report: pack_open_windows        =          0 /          0
pack_report: pack_mapped              =          0 /          0
---------------------------------------------------------------------

ok 1 - empty dump^[(B^[[m

^[[33mexpecting success: 
	reinit_git &&
	echo "SVN-fs-dump-format-version: 3" >input &&
	test_must_fail test-svn-fe input >stream &&
	test_cmp empty stream
^[(B^[[m
Initialized empty Git repository in /home/XXXXXXXX/GIT/git/t/trash directory.t9010-svn-fe/.git/
fatal: expected svn dump format version <= 2, found 3
ok 2 - v3 dumps not supported^[(B^[[m

^[[33mexpecting success: 
	svnadmin create simple-svn &&
	svnadmin load simple-svn <"$TEST_DIRECTORY/t9135/svn.dump" &&
	svn_cmd export "file://$PWD/simple-svn" simple-svnco &&
	git init simple-git &&
	test-svn-fe "$TEST_DIRECTORY/t9135/svn.dump" >simple.fe &&
	(
		cd simple-git &&
		git fast-import <../simple.fe
	) &&
	(
		cd simple-svnco &&
		git init &&
		git add . &&
		git fetch ../simple-git master &&
		git diff --exit-code FETCH_HEAD
	)
^[(B^[[m
<<< 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
^[[1m^[[31mnot ok - 3 t9135/svn.dump^[(B^[[m
#	
#		svnadmin create simple-svn &&
#		svnadmin load simple-svn <"$TEST_DIRECTORY/t9135/svn.dump" &&
#		svn_cmd export "file://$PWD/simple-svn" simple-svnco &&
#		git init simple-git &&
#		test-svn-fe "$TEST_DIRECTORY/t9135/svn.dump" >simple.fe &&
#		(
#			cd simple-git &&
#			git fast-import <../simple.fe
#		) &&
#		(
#			cd simple-svnco &&
#			git init &&
#			git add . &&
#			git fetch ../simple-git master &&
#			git diff --exit-code FETCH_HEAD
#		)
#	

^[[1m^[[31m# failed 1 among 3 test(s)^[(B^[[m
^[[33m1..3^[(B^[[m
XXXXXXXX@debian:~/GIT/git/t$ exit

Script done on Thu 06 Jan 2011 12:11:16 PM EST

[-- Attachment #3: typescript2.txt --]
[-- Type: text/plain, Size: 18184 bytes --]

Script started on Thu 06 Jan 2011 12:11:40 PM EST
XXXXXXXX@debian:~/GIT/git/t$ GIT_TRACE=1 sh -x t9010-svn-fe.sh -v
+ test_description=check svn dumpfile importer
+ . ./test-lib.sh
+ ORIGINAL_TERM=xterm
+ LANG=C
+ LC_ALL=C
+ PAGER=cat
+ TZ=UTC
+ TERM=dumb
+ export LANG LC_ALL PAGER TERM TZ
+ EDITOR=:
+ unset VISUAL
+ unset GIT_EDITOR
+ unset AUTHOR_DATE
+ unset AUTHOR_EMAIL
+ unset AUTHOR_NAME
+ unset COMMIT_AUTHOR_EMAIL
+ unset COMMIT_AUTHOR_NAME
+ unset EMAIL
+ unset GIT_ALTERNATE_OBJECT_DIRECTORIES
+ unset GIT_AUTHOR_DATE
+ GIT_AUTHOR_EMAIL=author@example.com
+ GIT_AUTHOR_NAME=A U Thor
+ unset GIT_COMMITTER_DATE
+ GIT_COMMITTER_EMAIL=committer@example.com
+ GIT_COMMITTER_NAME=C O Mitter
+ unset GIT_DIFF_OPTS
+ unset GIT_DIR
+ unset GIT_WORK_TREE
+ unset GIT_EXTERNAL_DIFF
+ unset GIT_INDEX_FILE
+ unset GIT_OBJECT_DIRECTORY
+ unset GIT_CEILING_DIRECTORIES
+ unset SHA1_FILE_DIRECTORIES
+ unset SHA1_FILE_DIRECTORY
+ unset GIT_NOTES_REF
+ unset GIT_NOTES_DISPLAY_REF
+ unset GIT_NOTES_REWRITE_REF
+ unset GIT_NOTES_REWRITE_MODE
+ GIT_MERGE_VERBOSITY=5
+ export GIT_MERGE_VERBOSITY
+ export GIT_AUTHOR_EMAIL GIT_AUTHOR_NAME
+ export GIT_COMMITTER_EMAIL GIT_COMMITTER_NAME
+ export EDITOR
+ unset CDPATH
+ unset GREP_OPTIONS
+ echo 1
+ tr [A-Z] [a-z]
+ echo * warning: Some tests will not work if GIT_TRACE is set as to trace on STDERR ! *
* warning: Some tests will not work if GIT_TRACE is set as to trace on STDERR ! *
+ echo * warning: Please set GIT_TRACE to something other than 1, 2 or true ! *
* warning: Please set GIT_TRACE to something other than 1, 2 or true ! *
+ _x05=[0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f]
+ _x40=[0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f]
+ [ xxterm != xdumb ]
+ TERM=xterm
+ export TERM
+ [ -t 1 ]
+ tput bold
+ tput setaf 1
+ tput sgr0
+ color=t
+ test 1 -ne 0
+ verbose=t
+ shift
+ test 0 -ne 0
+ test -n t
+ test check svn dumpfile importer != 
+ test  = t
+ exec
+ test t = t
+ exec
+ test_failure=0
+ test_count=0
+ test_fixed=0
+ test_broken=0
+ test_success=0
+ test_external_has_tap=0
+ GIT_EXIT_OK=
+ trap die EXIT
+ satisfied= 
+ test -z 
+ pwd
+ TEST_DIRECTORY=/home/XXXXXXXX/GIT/git/t
+ GIT_BUILD_DIR=/home/XXXXXXXX/GIT/git/t/..
+ test -n 
+ test -n 
+ git_bin_dir=/home/XXXXXXXX/GIT/git/t/../bin-wrappers
+ test -x /home/XXXXXXXX/GIT/git/t/../bin-wrappers/git
+ PATH=/home/XXXXXXXX/GIT/git/t/../bin-wrappers:/home/XXXXXXXX/bin:/usr/local/bin:/usr/bin:/bin:/usr/games
+ GIT_EXEC_PATH=/home/XXXXXXXX/GIT/git/t/..
+ test -n 
+ GIT_TEMPLATE_DIR=/home/XXXXXXXX/GIT/git/t/../templates/blt
+ unset GIT_CONFIG
+ GIT_CONFIG_NOSYSTEM=1
+ GIT_CONFIG_NOGLOBAL=1
+ export PATH GIT_EXEC_PATH GIT_TEMPLATE_DIR GIT_CONFIG_NOSYSTEM GIT_CONFIG_NOGLOBAL
+ . /home/XXXXXXXX/GIT/git/t/../GIT-BUILD-OPTIONS
+ SHELL_PATH=/bin/sh
+ PERL_PATH=/usr/bin/perl
+ DIFF=diff
+ PYTHON_PATH=/usr/bin/python
+ TAR=tar
+ NO_CURL=
+ NO_PERL=
+ NO_PYTHON=
+ test -z 
+ test -n 
+ GIT_TEST_CMP=diff -u
+ GITPERLLIB=/home/XXXXXXXX/GIT/git/t/../perl/blib/lib:/home/XXXXXXXX/GIT/git/t/../perl/blib/arch/auto/Git
+ export GITPERLLIB
+ test -d /home/XXXXXXXX/GIT/git/t/../templates/blt
+ test -z 
+ test -z 
+ GITPYTHONLIB=/home/XXXXXXXX/GIT/git/t/../git_remote_helpers/build/lib
+ export GITPYTHONLIB
+ test -d /home/XXXXXXXX/GIT/git/t/../git_remote_helpers/build
+ test -x /home/XXXXXXXX/GIT/git/t/../test-chmtime
+ basename t9010-svn-fe.sh .sh
+ test=trash directory.t9010-svn-fe
+ test -n 
+ TRASH_DIRECTORY=/home/XXXXXXXX/GIT/git/t/trash directory.t9010-svn-fe
+ test ! -z 
+ remove_trash=/home/XXXXXXXX/GIT/git/t/trash directory.t9010-svn-fe
+ rm -fr trash directory.t9010-svn-fe
+ test_create_repo trash directory.t9010-svn-fe
+ test 1 = 1
+ repo=trash directory.t9010-svn-fe
+ mkdir -p trash directory.t9010-svn-fe
+ cd trash directory.t9010-svn-fe
+ /home/XXXXXXXX/GIT/git/t/../git-init --template=/home/XXXXXXXX/GIT/git/t/../templates/blt/
trace: built-in: git 'init' '--template=/home/XXXXXXXX/GIT/git/t/../templates/blt/'
Initialized empty Git repository in /home/XXXXXXXX/GIT/git/t/trash directory.t9010-svn-fe/.git/
+ mv .git/hooks .git/hooks-disabled
+ cd -P trash directory.t9010-svn-fe
+ pwd
+ HOME=/home/XXXXXXXX/GIT/git/t/trash directory.t9010-svn-fe
+ export HOME
+ this_test=t9010-svn-fe.sh
+ this_test=t9010
+ uname -s
+ test_set_prereq POSIXPERM
+ satisfied= POSIXPERM 
+ test_set_prereq BSLASHPSPEC
+ satisfied= POSIXPERM BSLASHPSPEC 
+ test_set_prereq EXECKEEPSPID
+ satisfied= POSIXPERM BSLASHPSPEC EXECKEEPSPID 
+ test_set_prereq NOT_MINGW
+ satisfied= POSIXPERM BSLASHPSPEC EXECKEEPSPID NOT_MINGW 
+ test -z 
+ test_set_prereq PERL
+ satisfied= POSIXPERM BSLASHPSPEC EXECKEEPSPID NOT_MINGW PERL 
+ test -z 
+ test_set_prereq PYTHON
+ satisfied= POSIXPERM BSLASHPSPEC EXECKEEPSPID NOT_MINGW PERL PYTHON 
+ ln -s x y
+ test -h y
+ test_set_prereq SYMLINKS
+ satisfied= POSIXPERM BSLASHPSPEC EXECKEEPSPID NOT_MINGW PERL PYTHON SYMLINKS 
+ rm -f y
+ test -w /
+ test_set_prereq SANITY
+ satisfied= POSIXPERM BSLASHPSPEC EXECKEEPSPID NOT_MINGW PERL PYTHON SYMLINKS SANITY 
+ svnadmin -h
+ svnconf=/home/XXXXXXXX/GIT/git/t/trash directory.t9010-svn-fe/svnconf
+ export svnconf
+ 
+ test_expect_success empty dump 
	reinit_git &&
	echo "SVN-fs-dump-format-version: 2" >input &&
	test-svn-fe input >stream &&
	git fast-import <stream

+ test 2 = 3
+ test_prereq=
+ test 2 = 2
+ export test_prereq
+ test_skip empty dump 
	reinit_git &&
	echo "SVN-fs-dump-format-version: 2" >input &&
	test-svn-fe input >stream &&
	git fast-import <stream

+ test_count=1
+ to_skip=
+ test -z 
+ test -n 
+ false
+ say expecting success: 
	reinit_git &&
	echo "SVN-fs-dump-format-version: 2" >input &&
	test-svn-fe input >stream &&
	git fast-import <stream

+ say_color info expecting success: 
	reinit_git &&
	echo "SVN-fs-dump-format-version: 2" >input &&
	test-svn-fe input >stream &&
	git fast-import <stream

+ TERM=xterm
+ export TERM
+ tput setaf 3
^[[33m+ shift
+ printf %s expecting success: 
	reinit_git &&
	echo "SVN-fs-dump-format-version: 2" >input &&
	test-svn-fe input >stream &&
	git fast-import <stream

expecting success: 
	reinit_git &&
	echo "SVN-fs-dump-format-version: 2" >input &&
	test-svn-fe input >stream &&
	git fast-import <stream
+ tput sgr0
^[(B^[[m+ echo

+ test_run_ 
	reinit_git &&
	echo "SVN-fs-dump-format-version: 2" >input &&
	test-svn-fe input >stream &&
	git fast-import <stream

+ test_cleanup=:
+ eval 
	reinit_git &&
	echo "SVN-fs-dump-format-version: 2" >input &&
	test-svn-fe input >stream &&
	git fast-import <stream

+ reinit_git
+ rm -fr .git
+ git init
trace: built-in: git 'init'
Initialized empty Git repository in /home/XXXXXXXX/GIT/git/t/trash directory.t9010-svn-fe/.git/
+ echo SVN-fs-dump-format-version: 2
+ test-svn-fe input
+ git fast-import
trace: exec: 'git-fast-import'
trace: run_command: 'git-fast-import'
git-fast-import statistics:
---------------------------------------------------------------------
Alloc'd objects:       5000
Total objects:            0 (         0 duplicates                  )
      blobs  :            0 (         0 duplicates          0 deltas)
      trees  :            0 (         0 duplicates          0 deltas)
      commits:            0 (         0 duplicates          0 deltas)
      tags   :            0 (         0 duplicates          0 deltas)
Total branches:           0 (         0 loads     )
      marks:           1024 (         0 unique    )
      atoms:              0
Memory total:          2282 KiB
       pools:          2048 KiB
     objects:           234 KiB
---------------------------------------------------------------------
pack_report: getpagesize()            =       4096
pack_report: core.packedGitWindowSize = 1073741824
pack_report: core.packedGitLimit      = 8589934592
pack_report: pack_used_ctr            =          0
pack_report: pack_mmap_calls          =          0
pack_report: pack_open_windows        =          0 /          0
pack_report: pack_mapped              =          0 /          0
---------------------------------------------------------------------

+ eval_ret=0
+ eval :
+ :
+ test t = t
+ test -n 
+ return 0
+ [ 0 = 0 -a 0 = 0 ]
+ test_ok_ empty dump
+ test_success=1
+ say_color  ok 1 - empty dump
+ TERM=xterm
+ export TERM
+ test -n 
+ shift
+ printf %s ok 1 - empty dump
ok 1 - empty dump+ tput sgr0
^[(B^[[m+ echo

+ echo 

+ test_expect_success v3 dumps not supported 
	reinit_git &&
	echo "SVN-fs-dump-format-version: 3" >input &&
	test_must_fail test-svn-fe input >stream &&
	test_cmp empty stream

+ test 2 = 3
+ test_prereq=
+ test 2 = 2
+ export test_prereq
+ test_skip v3 dumps not supported 
	reinit_git &&
	echo "SVN-fs-dump-format-version: 3" >input &&
	test_must_fail test-svn-fe input >stream &&
	test_cmp empty stream

+ test_count=2
+ to_skip=
+ test -z 
+ test -n 
+ false
+ say expecting success: 
	reinit_git &&
	echo "SVN-fs-dump-format-version: 3" >input &&
	test_must_fail test-svn-fe input >stream &&
	test_cmp empty stream

+ say_color info expecting success: 
	reinit_git &&
	echo "SVN-fs-dump-format-version: 3" >input &&
	test_must_fail test-svn-fe input >stream &&
	test_cmp empty stream

+ TERM=xterm
+ export TERM
+ tput setaf 3
^[[33m+ shift
+ printf %s expecting success: 
	reinit_git &&
	echo "SVN-fs-dump-format-version: 3" >input &&
	test_must_fail test-svn-fe input >stream &&
	test_cmp empty stream

expecting success: 
	reinit_git &&
	echo "SVN-fs-dump-format-version: 3" >input &&
	test_must_fail test-svn-fe input >stream &&
	test_cmp empty stream
+ tput sgr0
^[(B^[[m+ echo

+ test_run_ 
	reinit_git &&
	echo "SVN-fs-dump-format-version: 3" >input &&
	test_must_fail test-svn-fe input >stream &&
	test_cmp empty stream

+ test_cleanup=:
+ eval 
	reinit_git &&
	echo "SVN-fs-dump-format-version: 3" >input &&
	test_must_fail test-svn-fe input >stream &&
	test_cmp empty stream

+ reinit_git
+ rm -fr .git
+ git init
trace: built-in: git 'init'
Initialized empty Git repository in /home/XXXXXXXX/GIT/git/t/trash directory.t9010-svn-fe/.git/
+ echo SVN-fs-dump-format-version: 3
+ test_must_fail test-svn-fe input
+ test-svn-fe input
fatal: expected svn dump format version <= 2, found 3
+ exit_code=128
+ test 128 = 0
+ test 128 -gt 129 -a 128 -le 192
+ test 128 = 127
+ return 0
+ test_cmp empty stream
+ diff -u empty stream
+ eval_ret=0
+ eval :
+ :
+ test t = t
+ test -n 
+ return 0
+ [ 0 = 0 -a 0 = 0 ]
+ test_ok_ v3 dumps not supported
+ test_success=2
+ say_color  ok 2 - v3 dumps not supported
+ TERM=xterm
+ export TERM
+ test -n 
+ shift
+ printf %s ok 2 - v3 dumps not supported
ok 2 - v3 dumps not supported+ tput sgr0
^[(B^[[m+ echo

+ echo 

+ test_expect_success t9135/svn.dump 
	svnadmin create simple-svn &&
	svnadmin load simple-svn <"$TEST_DIRECTORY/t9135/svn.dump" &&
	svn_cmd export "file://$PWD/simple-svn" simple-svnco &&
	git init simple-git &&
	test-svn-fe "$TEST_DIRECTORY/t9135/svn.dump" >simple.fe &&
	(
		cd simple-git &&
		git fast-import <../simple.fe
	) &&
	(
		cd simple-svnco &&
		git init &&
		git add . &&
		git fetch ../simple-git master &&
		git diff --exit-code FETCH_HEAD
	)

+ test 2 = 3
+ test_prereq=
+ test 2 = 2
+ export test_prereq
+ test_skip t9135/svn.dump 
	svnadmin create simple-svn &&
	svnadmin load simple-svn <"$TEST_DIRECTORY/t9135/svn.dump" &&
	svn_cmd export "file://$PWD/simple-svn" simple-svnco &&
	git init simple-git &&
	test-svn-fe "$TEST_DIRECTORY/t9135/svn.dump" >simple.fe &&
	(
		cd simple-git &&
		git fast-import <../simple.fe
	) &&
	(
		cd simple-svnco &&
		git init &&
		git add . &&
		git fetch ../simple-git master &&
		git diff --exit-code FETCH_HEAD
	)

+ test_count=3
+ to_skip=
+ test -z 
+ test -n 
+ false
+ say expecting success: 
	svnadmin create simple-svn &&
	svnadmin load simple-svn <"$TEST_DIRECTORY/t9135/svn.dump" &&
	svn_cmd export "file://$PWD/simple-svn" simple-svnco &&
	git init simple-git &&
	test-svn-fe "$TEST_DIRECTORY/t9135/svn.dump" >simple.fe &&
	(
		cd simple-git &&
		git fast-import <../simple.fe
	) &&
	(
		cd simple-svnco &&
		git init &&
		git add . &&
		git fetch ../simple-git master &&
		git diff --exit-code FETCH_HEAD
	)

+ say_color info expecting success: 
	svnadmin create simple-svn &&
	svnadmin load simple-svn <"$TEST_DIRECTORY/t9135/svn.dump" &&
	svn_cmd export "file://$PWD/simple-svn" simple-svnco &&
	git init simple-git &&
	test-svn-fe "$TEST_DIRECTORY/t9135/svn.dump" >simple.fe &&
	(
		cd simple-git &&
		git fast-import <../simple.fe
	) &&
	(
		cd simple-svnco &&
		git init &&
		git add . &&
		git fetch ../simple-git master &&
		git diff --exit-code FETCH_HEAD
	)

+ TERM=xterm
+ export TERM
+ tput setaf 3
^[[33m+ shift
+ printf %s expecting success: 
	svnadmin create simple-svn &&
	svnadmin load simple-svn <"$TEST_DIRECTORY/t9135/svn.dump" &&
	svn_cmd export "file://$PWD/simple-svn" simple-svnco &&
	git init simple-git &&
	test-svn-fe "$TEST_DIRECTORY/t9135/svn.dump" >simple.fe &&
	(
		cd simple-git &&
		git fast-import <../simple.fe
	) &&
	(
		cd simple-svnco &&
		git init &&
		git add . &&
		git fetch ../simple-git master &&
		git diff --exit-code FETCH_HEAD
	)

expecting success: 
	svnadmin create simple-svn &&
	svnadmin load simple-svn <"$TEST_DIRECTORY/t9135/svn.dump" &&
	svn_cmd export "file://$PWD/simple-svn" simple-svnco &&
	git init simple-git &&
	test-svn-fe "$TEST_DIRECTORY/t9135/svn.dump" >simple.fe &&
	(
		cd simple-git &&
		git fast-import <../simple.fe
	) &&
	(
		cd simple-svnco &&
		git init &&
		git add . &&
		git fetch ../simple-git master &&
		git diff --exit-code FETCH_HEAD
	)
+ tput sgr0
^[(B^[[m+ echo

+ test_run_ 
	svnadmin create simple-svn &&
	svnadmin load simple-svn <"$TEST_DIRECTORY/t9135/svn.dump" &&
	svn_cmd export "file://$PWD/simple-svn" simple-svnco &&
	git init simple-git &&
	test-svn-fe "$TEST_DIRECTORY/t9135/svn.dump" >simple.fe &&
	(
		cd simple-git &&
		git fast-import <../simple.fe
	) &&
	(
		cd simple-svnco &&
		git init &&
		git add . &&
		git fetch ../simple-git master &&
		git diff --exit-code FETCH_HEAD
	)

+ test_cleanup=:
+ eval 
	svnadmin create simple-svn &&
	svnadmin load simple-svn <"$TEST_DIRECTORY/t9135/svn.dump" &&
	svn_cmd export "file://$PWD/simple-svn" simple-svnco &&
	git init simple-git &&
	test-svn-fe "$TEST_DIRECTORY/t9135/svn.dump" >simple.fe &&
	(
		cd simple-git &&
		git fast-import <../simple.fe
	) &&
	(
		cd simple-svnco &&
		git init &&
		git add . &&
		git fetch ../simple-git master &&
		git diff --exit-code FETCH_HEAD
	)

+ svnadmin create simple-svn
+ svnadmin load simple-svn
<<< 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
+ eval_ret=1
+ eval :
+ :
+ test t = t
+ test -n 
+ return 0
+ [ 0 = 0 -a 1 = 0 ]
+ test_failure_ t9135/svn.dump 
	svnadmin create simple-svn &&
	svnadmin load simple-svn <"$TEST_DIRECTORY/t9135/svn.dump" &&
	svn_cmd export "file://$PWD/simple-svn" simple-svnco &&
	git init simple-git &&
	test-svn-fe "$TEST_DIRECTORY/t9135/svn.dump" >simple.fe &&
	(
		cd simple-git &&
		git fast-import <../simple.fe
	) &&
	(
		cd simple-svnco &&
		git init &&
		git add . &&
		git fetch ../simple-git master &&
		git diff --exit-code FETCH_HEAD
	)

+ test_failure=1
+ say_color error not ok - 3 t9135/svn.dump
+ TERM=xterm
+ export TERM
+ tput bold
^[[1m+ tput setaf 1
^[[31m+ shift
+ printf %s not ok - 3 t9135/svn.dump
not ok - 3 t9135/svn.dump+ tput sgr0
^[(B^[[m+ echo

+ shift
+ echo 
	svnadmin create simple-svn &&
	svnadmin load simple-svn <"$TEST_DIRECTORY/t9135/svn.dump" &&
	svn_cmd export "file://$PWD/simple-svn" simple-svnco &&
	git init simple-git &&
	test-svn-fe "$TEST_DIRECTORY/t9135/svn.dump" >simple.fe &&
	(
		cd simple-git &&
		git fast-import <../simple.fe
	) &&
	(
		cd simple-svnco &&
		git init &&
		git add . &&
		git fetch ../simple-git master &&
		git diff --exit-code FETCH_HEAD
	)

+ sed -e s/^/#	/
#	
#		svnadmin create simple-svn &&
#		svnadmin load simple-svn <"$TEST_DIRECTORY/t9135/svn.dump" &&
#		svn_cmd export "file://$PWD/simple-svn" simple-svnco &&
#		git init simple-git &&
#		test-svn-fe "$TEST_DIRECTORY/t9135/svn.dump" >simple.fe &&
#		(
#			cd simple-git &&
#			git fast-import <../simple.fe
#		) &&
#		(
#			cd simple-svnco &&
#			git init &&
#			git add . &&
#			git fetch ../simple-git master &&
#			git diff --exit-code FETCH_HEAD
#		)
#	
+ test  = 
+ echo 

+ test_done
+ GIT_EXIT_OK=t
+ test -z 
+ test_results_dir=/home/XXXXXXXX/GIT/git/t/test-results
+ mkdir -p /home/XXXXXXXX/GIT/git/t/test-results
+ test_results_path=/home/XXXXXXXX/GIT/git/t/test-results/t9010-svn-fe-14042.counts
+ echo total 3
+ echo success 2
+ echo fixed 0
+ echo broken 0
+ echo failed 1
+ echo 
+ test 0 != 0
+ test 0 != 0
+ msg=3 test(s)
+ test 0 -eq 0
+ say_color error # failed 1 among 3 test(s)
+ TERM=xterm
+ export TERM
+ tput bold
^[[1m+ tput setaf 1
^[[31m+ shift
+ printf %s # failed 1 among 3 test(s)
# failed 1 among 3 test(s)+ tput sgr0
^[(B^[[m+ echo

+ say 1..3
+ say_color info 1..3
+ TERM=xterm
+ export TERM
+ tput setaf 3
^[[33m+ shift
+ printf %s 1..3
1..3+ tput sgr0
^[(B^[[m+ echo

+ exit 1
+ die
+ code=1
+ test -n t
+ exit 1
XXXXXXXX@debian:~/GIT/git/t$ exit

Script done on Thu 06 Jan 2011 12:12:07 PM EST

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [PATCH] t9010: svnadmin can fail even if available
  2011-01-06 17:20   ` A Large Angry SCM
@ 2011-01-06 18:00     ` Jonathan Nieder
  2011-01-06 18:32       ` A Large Angry SCM
  2011-01-06 20:16       ` Junio C Hamano
  2011-01-06 18:15     ` Repeatable test t9010-svn-fe.sh failure w/ master (685e9d9, 1.7.4.rc1) Junio C Hamano
  1 sibling, 2 replies; 13+ messages in thread
From: Jonathan Nieder @ 2011-01-06 18:00 UTC (permalink / raw)
  To: A Large Angry SCM; +Cc: Junio C Hamano, Git Mailing List

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.

As a side effect, earlier tests will run now even if svn is not
installed.  Remove the svn_cmd () helper to decrease the temptation to
run svn from those tests.

Works-around: http://bugs.debian.org/608925
Reported-by: A Large Angry SCM <gitzilla@gmail.com>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
---
Thanks.  Does this patch work for you?

 t/t9010-svn-fe.sh |   35 +++++++++++++++--------------------
 1 files changed, 15 insertions(+), 20 deletions(-)

diff --git a/t/t9010-svn-fe.sh b/t/t9010-svn-fe.sh
index c96bf2f..88a9751 100755
--- a/t/t9010-svn-fe.sh
+++ b/t/t9010-svn-fe.sh
@@ -4,22 +4,6 @@ test_description='check svn dumpfile importer'
 
 . ./test-lib.sh
 
-if ! svnadmin -h >/dev/null 2>&1
-then
-	skip_all='skipping svn-fe tests, svn not available'
-	test_done
-fi
-
-svnconf=$PWD/svnconf
-export svnconf
-
-svn_cmd () {
-	subcommand=$1 &&
-	shift &&
-	mkdir -p "$svnconf" &&
-	svn "$subcommand" --config-dir "$svnconf" "$@"
-}
-
 reinit_git () {
 	rm -fr .git &&
 	git init
@@ -41,10 +25,21 @@ test_expect_success 'v3 dumps not supported' '
 	test_cmp empty stream
 '
 
-test_expect_success 't9135/svn.dump' '
-	svnadmin create simple-svn &&
-	svnadmin load simple-svn <"$TEST_DIRECTORY/t9135/svn.dump" &&
-	svn_cmd export "file://$PWD/simple-svn" simple-svnco &&
+test_expect_success 'set up svn repo' '
+	svnconf=$PWD/svnconf &&
+	mkdir -p "$svnconf" &&
+
+	if
+		svnadmin -h >/dev/null 2>&1 &&
+		svnadmin create simple-svn &&
+		svnadmin load simple-svn <"$TEST_DIRECTORY/t9135/svn.dump" &&
+		svn export --config-dir "$svnconf" "file://$PWD/simple-svn" simple-svnco
+	then
+		test_set_prereq SVNREPO
+	fi
+'
+
+test_expect_success SVNREPO 't9135/svn.dump' '
 	git init simple-git &&
 	test-svn-fe "$TEST_DIRECTORY/t9135/svn.dump" >simple.fe &&
 	(
-- 
1.7.4.rc1

^ permalink raw reply related	[flat|nested] 13+ messages in thread

* Re: Repeatable test t9010-svn-fe.sh failure w/ master (685e9d9, 1.7.4.rc1)
  2011-01-06 17:20   ` A Large Angry SCM
  2011-01-06 18:00     ` [PATCH] t9010: svnadmin can fail even if available Jonathan Nieder
@ 2011-01-06 18:15     ` Junio C Hamano
  2011-01-06 19:06       ` A Large Angry SCM
  1 sibling, 1 reply; 13+ messages in thread
From: Junio C Hamano @ 2011-01-06 18:15 UTC (permalink / raw)
  To: gitzilla; +Cc: Jonathan Nieder, Git Mailing List

A Large Angry SCM <gitzilla@gmail.com> writes:

> + svnadmin load simple-svn
> <<< 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
> + eval_ret=1

Hmm.  Do any other svn related tests that use "svnadmin load" work in your
environment?

    $ cd t/
    $ git grep -l 'svnadmin load'
    t9010-svn-fe.sh
    t9110-git-svn-use-svm-props.sh
    t9111-git-svn-use-svnsync-props.sh
    t9112-git-svn-md5less-file.sh
    t9115-git-svn-dcommit-funky-renames.sh
    t9121-git-svn-fetch-renamed-dir.sh
    t9126-git-svn-follow-deleted-readded-directory.sh
    t9131-git-svn-empty-symlink.sh
    t9132-git-svn-broken-symlink.sh
    t9135-git-svn-moved-branch-empty-file.sh
    t9136-git-svn-recreated-branch-empty-file.sh
    t9150-svk-mergetickets.sh
    t9151-svn-mergeinfo.sh
    t9153-git-svn-rewrite-uuid.sh
    t9154-git-svn-fancy-glob.sh

Web searching for "svnadmin: SQLite compiled for" seems to give a handful
of hits, even though I don't see anything from Debian offhand.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH] t9010: svnadmin can fail even if available
  2011-01-06 18:00     ` [PATCH] t9010: svnadmin can fail even if available Jonathan Nieder
@ 2011-01-06 18:32       ` A Large Angry SCM
  2011-01-06 20:16       ` Junio C Hamano
  1 sibling, 0 replies; 13+ messages in thread
From: A Large Angry SCM @ 2011-01-06 18:32 UTC (permalink / raw)
  To: Jonathan Nieder; +Cc: Junio C Hamano, Git Mailing List

On 01/06/2011 01:00 PM, Jonathan Nieder wrote:
> 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.
>
> As a side effect, earlier tests will run now even if svn is not
> installed.  Remove the svn_cmd () helper to decrease the temptation to
> run svn from those tests.
>
> Works-around: http://bugs.debian.org/608925
> Reported-by: A Large Angry SCM<gitzilla@gmail.com>
> Signed-off-by: Jonathan Nieder<jrnieder@gmail.com>
> ---
> Thanks.  Does this patch work for you?

$ sh t9010-svn-fe.sh
ok 1 - empty dump
ok 2 - v3 dumps not supported
ok 3 - set up svn repo
ok 4 # skip t9135/svn.dump (missing SVNREPO)
# passed all 4 test(s)
1..4

Rerunning the full test suite now ...

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Repeatable test t9010-svn-fe.sh failure w/ master (685e9d9, 1.7.4.rc1)
  2011-01-06 18:15     ` Repeatable test t9010-svn-fe.sh failure w/ master (685e9d9, 1.7.4.rc1) Junio C Hamano
@ 2011-01-06 19:06       ` A Large Angry SCM
  0 siblings, 0 replies; 13+ messages in thread
From: A Large Angry SCM @ 2011-01-06 19:06 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: Jonathan Nieder, Git Mailing List

On 01/06/2011 01:15 PM, Junio C Hamano wrote:
> A Large Angry SCM<gitzilla@gmail.com>  writes:
>
>> + svnadmin load simple-svn
>> <<<  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
>> + eval_ret=1
>
> Hmm.  Do any other svn related tests that use "svnadmin load" work in your
> environment?
>
>      $ cd t/
>      $ git grep -l 'svnadmin load'
>      t9010-svn-fe.sh
>      t9110-git-svn-use-svm-props.sh
>      t9111-git-svn-use-svnsync-props.sh
>      t9112-git-svn-md5less-file.sh
>      t9115-git-svn-dcommit-funky-renames.sh
>      t9121-git-svn-fetch-renamed-dir.sh
>      t9126-git-svn-follow-deleted-readded-directory.sh
>      t9131-git-svn-empty-symlink.sh
>      t9132-git-svn-broken-symlink.sh
>      t9135-git-svn-moved-branch-empty-file.sh
>      t9136-git-svn-recreated-branch-empty-file.sh
>      t9150-svk-mergetickets.sh
>      t9151-svn-mergeinfo.sh
>      t9153-git-svn-rewrite-uuid.sh
>      t9154-git-svn-fancy-glob.sh
>
> Web searching for "svnadmin: SQLite compiled for" seems to give a handful
> of hits, even though I don't see anything from Debian offhand.
>

It looks like all of the svn tests are failing.

I checked out the last version I built and tested, f2665ec, and it's 
failing the svn tests also. So, it looks like the current Debian 
(Squeeze) svn package is broken. And the following seems to confirm that.

	http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=608925

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH] t9010: svnadmin can fail even if available
  2011-01-06 18:00     ` [PATCH] t9010: svnadmin can fail even if available Jonathan Nieder
  2011-01-06 18:32       ` A Large Angry SCM
@ 2011-01-06 20:16       ` Junio C Hamano
  2011-01-06 20:46         ` Jonathan Nieder
  1 sibling, 1 reply; 13+ messages in thread
From: Junio C Hamano @ 2011-01-06 20:16 UTC (permalink / raw)
  To: Jonathan Nieder; +Cc: A Large Angry SCM, Git Mailing List

Jonathan Nieder <jrnieder@gmail.com> writes:

> 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.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH] t9010: svnadmin can fail even if available
  2011-01-06 20:16       ` Junio C Hamano
@ 2011-01-06 20:46         ` Jonathan Nieder
  2011-01-07  1:07           ` Junio C Hamano
  0 siblings, 1 reply; 13+ messages in thread
From: Jonathan Nieder @ 2011-01-06 20:46 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: A Large Angry SCM, Git Mailing List, Ramkumar Ramachandra

Junio C Hamano wrote:

> 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.

You're right, I did not do a good job of selling the patch.  I should
have said:

	Subject: t9010: svnadmin can fail even if available

	If svn is built against one version of SQLite and run against
	another, libsvn_subr needlessly errors out in operations that
	need to make a commit.

	That is clearly not a bug in git but let us consider the
	ramifications for the test suite.  git-svn uses libsvn directly
	and is probably broken by that bug; it is right for git-svn
	tests to fail.  The vcs-svn lib, on the other hand, does not use
	libsvn and the test t9010 only uses svn to check its work.  This
	points to two possible improvements:

	 - do not disable most vcs-svn tests if svn is missing.
	 - skip validation rather than failing it when svn fails.

	Bring about both by putting the svn invocations into a single
	test that builds a repo to compare the test-svn-fe result
	against.  The test will always pass but only will set the new
	SVNREPO test prereq if svn succeeds; and validation using that
	repo gets an SVNREPO prerequisite so it only runs with working
	svn installations.

	Works-around: http://bugs.debian.org/608925
	Noticed-by: A Large Angry SCM <gitzilla@gmail.com>
	Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH] t9010: svnadmin can fail even if available
  2011-01-06 20:46         ` Jonathan Nieder
@ 2011-01-07  1:07           ` Junio C Hamano
  2011-01-07  1:31             ` Jonathan Nieder
  0 siblings, 1 reply; 13+ messages in thread
From: Junio C Hamano @ 2011-01-07  1:07 UTC (permalink / raw)
  To: Jonathan Nieder; +Cc: A Large Angry SCM, Git Mailing List, Ramkumar Ramachandra

Jonathan Nieder <jrnieder@gmail.com> writes:

>> 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?

Am I mistaken and t9010 is the only one that needs the fix in your patch?

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH] t9010: svnadmin can fail even if available
  2011-01-07  1:07           ` Junio C Hamano
@ 2011-01-07  1:31             ` Jonathan Nieder
  2011-01-07 16:58               ` Ramkumar Ramachandra
  0 siblings, 1 reply; 13+ messages in thread
From: Jonathan Nieder @ 2011-01-07  1:31 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: A Large Angry SCM, Git Mailing List, Ramkumar Ramachandra

Junio C Hamano wrote:
> Jonathan Nieder <jrnieder@gmail.com> writes:

>>> 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?
>
> Am I mistaken and t9010 is the only one that needs the fix in your patch?

Everything except t9010 is testing git-svn.  My argument before was
that this libsvn_subr breakage is going to leave git-svn broken
anyway, so why bother guarding against it in tests?

That precise argument is broken in at least three ways:

 - the libsvn_subr breakage would only breaks "git svn dcommit" (and
   "git svn set-tree") and only when the remote svn repo is actually a
   local svn repo using the FSFS backend.

 - maybe the next time "svnadmin load" breaks it will not break
   git svn

 - this particular breakage seems especially unworthy of workarounds
   because it is so easy to fix on the svn side.

So why do I like the patch to t9010?  Two reasons: first, it means
t9010 could run on systems without svn installed at all, and second,
it means that there is one less test to worry about if svn fails in
some other way in the future.

To do the same for t91* would be impossible.  If svn is broken or not
installed, svn-fe will run fine, but "git svn" will not.  On the other
hand, if svnadmin were broken but svn still worked, "git svn" would be
fine but that would be quite strange and I do not think it is worth
spending time to prepare for.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH] t9010: svnadmin can fail even if available
  2011-01-07  1:31             ` Jonathan Nieder
@ 2011-01-07 16:58               ` Ramkumar Ramachandra
  2011-01-07 18:54                 ` Junio C Hamano
  0 siblings, 1 reply; 13+ messages in thread
From: Ramkumar Ramachandra @ 2011-01-07 16:58 UTC (permalink / raw)
  To: Jonathan Nieder; +Cc: Junio C Hamano, A Large Angry SCM, Git Mailing List

Hi,

Jonathan Nieder writes:
> To do the same for t91* would be impossible.  If svn is broken or not
> installed, svn-fe will run fine, but "git svn" will not.  On the other
> hand, if svnadmin were broken but svn still worked, "git svn" would be
> fine but that would be quite strange and I do not think it is worth
> spending time to prepare for.

I don't think it's worth spending time preparing for every concievable
breakage. The patch A few more examples of possible breakages I've
encountered:
- APR compiled without threading support, SVN compiled with it, or
  viceversa.
- SVN is compiled against GNU iconv, but apr-iconv installed, or
  viceversa.
- Two different versions of a dependent library are installed, and SVN
  links to a different version in a different location.

One or many components of SVN may fail. So, I'm in favor of the
current approach: if SVN is installed, attempt to run all the t91*
tests. Any failure can either be interpreted as a real test failure or
malformed SVN installation.

-- Ram

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH] t9010: svnadmin can fail even if available
  2011-01-07 16:58               ` Ramkumar Ramachandra
@ 2011-01-07 18:54                 ` Junio C Hamano
  0 siblings, 0 replies; 13+ messages in thread
From: Junio C Hamano @ 2011-01-07 18:54 UTC (permalink / raw)
  To: Ramkumar Ramachandra; +Cc: Jonathan Nieder, A Large Angry SCM, Git Mailing List

Ramkumar Ramachandra <artagnon@gmail.com> writes:

> Jonathan Nieder writes:
>> To do the same for t91* would be impossible.  If svn is broken or not
>> installed, svn-fe will run fine, but "git svn" will not.  On the other
>> hand, if svnadmin were broken but svn still worked, "git svn" would be
>> fine but that would be quite strange and I do not think it is worth
>> spending time to prepare for.
>
> I don't think it's worth spending time preparing for every concievable
> breakage. The patch A few more examples of possible breakages I've
> encountered:
> - APR compiled without threading support, SVN compiled with it, or
>   viceversa.
> - SVN is compiled against GNU iconv, but apr-iconv installed, or
>   viceversa.
> - Two different versions of a dependent library are installed, and SVN
>   links to a different version in a different location.
>
> One or many components of SVN may fail. So, I'm in favor of the
> current approach: if SVN is installed, attempt to run all the t91*
> tests. Any failure can either be interpreted as a real test failure or
> malformed SVN installation.

That was what I was alluding to earlier, but ...

 (1) the patch has already been written and it looks obviously correct;

 (2) the code after the patch is shorter and more readable; and

 (3) this will prevent the mailing list from getting spammed by useless
     "bug reports" that should have been directed to distros that packaged
     subversion in one broken way.

Admittedly, it may only catch a breakage in one particular way and not
other ways, so we cannot put too much weight on (3), but I would say (2)
above alone is a merit enough for us to have this.

^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2011-01-07 18:54 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-01-06 16:04 Repeatable test t9010-svn-fe.sh failure w/ master (685e9d9, 1.7.4.rc1) A Large Angry SCM
2011-01-06 16:59 ` Jonathan Nieder
2011-01-06 17:20   ` A Large Angry SCM
2011-01-06 18:00     ` [PATCH] t9010: svnadmin can fail even if available Jonathan Nieder
2011-01-06 18:32       ` A Large Angry SCM
2011-01-06 20:16       ` Junio C Hamano
2011-01-06 20:46         ` Jonathan Nieder
2011-01-07  1:07           ` Junio C Hamano
2011-01-07  1:31             ` Jonathan Nieder
2011-01-07 16:58               ` Ramkumar Ramachandra
2011-01-07 18:54                 ` Junio C Hamano
2011-01-06 18:15     ` Repeatable test t9010-svn-fe.sh failure w/ master (685e9d9, 1.7.4.rc1) Junio C Hamano
2011-01-06 19:06       ` A Large Angry SCM

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.