Opened 7 years ago
Closed 6 years ago
#56229 closed defect (fixed)
subversion @1.9.7_1 can be compiled with db48 on PPC Mac OS X 10.5.8, Leopard
Reported by: | ballapete (Peter "Pete" Dyballa) | Owned by: | danielluke (Daniel J. Luke) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.4.2 |
Keywords: | leopard | Cc: | blair (Blair Zajac) |
Port: | subversion |
Description
Hello!
I want to get rid of Berkeley DB 4.6, to have only one version installed, and tried to compile apr-util and subversion with Berkeley DB 4.8. make libsvn_test check
produces few failures:
LIBRARY_PATH='/opt/local/lib' MACOSX_DEPLOYMENT_TARGET='10.5' Executing: cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_nue.de.rsync.macports.org_macports_release_tarballs_ports_devel_subversion/subversion/work/subversion-1.9.7" && /usr/bin/make libsvn_test check DEBUG: system: cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_nue.de.rsync.macports.org_macports_release_tarballs_ports_devel_subversion/subversion/work/subversion-1.9.7" && /usr/bin/make libsvn_test check make: Nothing to be done for `libsvn_test'. [001/112] auth-testsuccess [002/112] bit-array-testsuccess [003/112] cache-testsuccess [004/112] changes-testsuccess [005/112] checksum-testsuccess [006/112] client-testsuccess [007/112] compat-testsuccess [008/112] config-testsuccess [009/112] conflict-data-testsuccess [010/112] crypto-testsuccess [011/112] db-testsuccess [012/112] diff-diff3-testsuccess [013/112] dirent_uri-testsuccess [014/112] dump-load-testsuccess [015/112] entries-compat-testsuccess [016/112] error-code-testsuccess [017/112] error-testsuccess [018/112] fs-base-testsuccess [019/112] fs-fs-pack-testsuccess [020/112] fs-fs-private-testsuccess [021/112] fs-testsuccess [022/112] fs-x-pack-testsuccess [023/112] hashdump-testsuccess [024/112] io-testsuccess [025/112] locks-testsuccess [026/112] mergeinfo-testsuccess [027/112] mtcc-testsuccess [028/112] op-depth-testFAILURE [029/112] opt-testsuccess [030/112] packed-data-testsuccess [031/112] parse-diff-testsuccess [032/112] path-testsuccess [033/112] prefix-string-testsuccess [034/112] priority-queue-testsuccess [035/112] pristine-store-testsuccess [036/112] ra-local-testsuccess [037/112] ra-testFAILURE [038/112] random-testsuccess [039/112] repos-testsuccess [040/112] revision-testsuccess [041/112] root-pools-testsuccess [042/112] skel-testsuccess [043/112] spillbuf-testsuccess [044/112] sqlite-testsuccess [045/112] stream-testsuccess [046/112] string-table-testsuccess [047/112] string-testsuccess [048/112] strings-reps-testsuccess [049/112] subst_translate-testsuccess [050/112] time-testsuccess [051/112] translate-testsuccess [052/112] utf-testsuccess [053/112] wc-queries-testsuccess [054/112] wc-testsuccess [055/112] window-testsuccess [056/112] x509-testsuccess [057/112] authz_tests.pysuccess [058/112] autoprop_tests.pysuccess [059/112] basic_tests.pysuccess [060/112] blame_tests.pysuccess [061/112] cat_tests.pysuccess [062/112] changelist_tests.pysuccess [063/112] checkout_tests.pysuccess [064/112] commit_tests.pysuccess [065/112] copy_tests.pyFAILURE [066/112] depth_tests.pysuccess [067/112] diff_tests.pysuccess [068/112] entries_tests.pysuccess [069/112] export_tests.pysuccess [070/112] externals_tests.pysuccess [071/112] getopt_tests.pysuccess [072/112] history_tests.pysuccess [073/112] import_tests.pysuccess [074/112] info_tests.pysuccess [075/112] input_validation_tests.pysuccess [076/112] iprop_authz_tests.pysuccess [077/112] iprop_tests.pysuccess [078/112] lock_tests.pysuccess [079/112] log_tests.pysuccess [080/112] merge_authz_tests.pysuccess [081/112] merge_automatic_tests.pysuccess [082/112] merge_reintegrate_tests.pysuccess [083/112] merge_tests.pysuccess [084/112] merge_tree_conflict_tests.pysuccess [085/112] mergeinfo_tests.pysuccess [086/112] mod_authz_svn_tests.pysuccess [087/112] move_tests.pysuccess [088/112] patch_tests.pysuccess [089/112] prop_tests.pysuccess [090/112] redirect_tests.pysuccess [091/112] relocate_tests.pysuccess [092/112] resolve_tests.pysuccess [093/112] revert_tests.pysuccess [094/112] schedule_tests.pysuccess [095/112] special_tests.pysuccess [096/112] stat_tests.pysuccess [097/112] svnadmin_tests.pysuccess [098/112] svnauthz_tests.pyFAILURE [099/112] svndumpfilter_tests.pysuccess [100/112] svnfsfs_tests.pysuccess [101/112] svnlook_tests.pyFAILURE [102/112] svnmucc_tests.pysuccess [103/112] svnrdump_tests.pysuccess [104/112] svnsync_authz_tests.pysuccess [105/112] svnsync_tests.pysuccess [106/112] svnversion_tests.pysuccess [107/112] switch_tests.pyFAILURE [108/112] trans_tests.pyFAILURE [109/112] tree_conflict_tests.pysuccess [110/112] update_tests.pysuccess [111/112] upgrade_tests.pysuccess [112/112] wc_tests.pysuccess At least one test was SKIPPED, checking /opt/local/var/macports/build/_opt_local_var_macports_sources_nue.de.rsync.macports.org_macports_release_tarballs_ports_devel_subversion/subversion/work/subversion-1.9.7/tests.log SKIP: cache-test 2: basic memcache svn_cache test SKIP: cache-test 3: memcache svn_cache with very long keys SKIP: crypto-test 1: basic password encryption/decryption test SKIP: crypto-test 2: password checktext generation/validation SKIP: fs-x-pack-test 1: pack a FSX filesystem SKIP: fs-x-pack-test 2: pack FSX where revs % shard = 0 SKIP: fs-x-pack-test 3: read from a packed FSX filesystem SKIP: fs-x-pack-test 4: commit to a packed FSX filesystem SKIP: fs-x-pack-test 5: get/set revprop while packing FSX filesystem SKIP: fs-x-pack-test 6: get/set large packed revprops in FSX SKIP: fs-x-pack-test 7: get/set huge packed revprops in FSX SKIP: fs-x-pack-test 8: recover a fully packed filesystem SKIP: fs-x-pack-test 9: test file hint at shard boundary SKIP: fs-x-pack-test 10: test svn_fs_info SKIP: fs-x-pack-test 11: test representations container SKIP: fs-x-pack-test 12: test packing with shard size = 1 SKIP: pristine-store-test 3: reject_mismatching_text SKIP: authz_tests.py 1: authz issue #2486 - open root SKIP: authz_tests.py 2: authz issue #2486 - open directory SKIP: authz_tests.py 3: broken authz files cause errors SKIP: authz_tests.py 4: test authz for read operations SKIP: authz_tests.py 5: test authz for write operations SKIP: authz_tests.py 6: test authz for checkout SKIP: authz_tests.py 7: test authz for log and tracing path changes SKIP: authz_tests.py 8: test authz for checkout and update SKIP: authz_tests.py 9: test authz for export with unreadable subfolder SKIP: authz_tests.py 10: test authz for aliases SKIP: authz_tests.py 11: test the authz validation rules SKIP: authz_tests.py 12: test authz for locking SKIP: authz_tests.py 13: authz issue #2712 SKIP: authz_tests.py 14: switched to directory, no read access on parents SKIP: authz_tests.py 15: authz issue #3242 - access required at repo root SKIP: authz_tests.py 16: more authz issue #3242 - update to renamed file SKIP: authz_tests.py 17: multiple lines matching a user SKIP: authz_tests.py 18: wc-to-wc-copy with absent nodes and then revert SKIP: authz_tests.py 19: recursive ls with private subtrees SKIP: authz_tests.py 20: authz issue #3781, check case sensitivity SKIP: authz_tests.py 21: authz should notice a tree conflict SKIP: authz_tests.py 22: wc delete with absent nodes SKIP: authz_tests.py 23: verify commit error reporting SKIP: authz_tests.py 24: upgrade absent nodes to server-excluded SKIP: authz_tests.py 25: remove a subdir with authz file SKIP: authz_tests.py 26: authz with configured global groups SKIP: authz_tests.py 27: delete file without rights on the root SKIP: authz_tests.py 28: log --diff on dontdothat SKIP: authz_tests.py 29: replace file external with authz node SKIP: authz_tests.py 30: log censors revprops for partially visible revs SKIP: authz_tests.py 31: remove a subdir with authz file SKIP: basic_tests.py 52: verify that neon/serf are compiled if tested SKIP: checkout_tests.py 14: checkout from the root of a Windows drive SKIP: iprop_authz_tests.py 1: property inheritance and read restricted parents SKIP: lock_tests.py 54: create generic DAV lock with timeout SKIP: lock_tests.py 57: refresh timeout of DAV lock SKIP: lock_tests.py 58: lock and delete a file called 'a %( ) .txt' SKIP: merge_authz_tests.py 1: skipped paths get overriding mergeinfo SKIP: merge_authz_tests.py 3: reintegrate fails if no root access SKIP: mod_authz_svn_tests.py 1: test anonymous access SKIP: mod_authz_svn_tests.py 2: test mixed anonymous and authenticated access SKIP: mod_authz_svn_tests.py 3: test mixed with noauthwhenanon directive SKIP: mod_authz_svn_tests.py 4: test authenticated only access SKIP: mod_authz_svn_tests.py 5: test authenticated only access with anonoff SKIP: mod_authz_svn_tests.py 6: test authenticated only access with lcuser SKIP: mod_authz_svn_tests.py 7: test authenticated only access via groups SKIP: mod_authz_svn_tests.py 8: test satisfy all require any config SKIP: mod_authz_svn_tests.py 9: test satisfy all require all config SKIP: redirect_tests.py 1: temporary redirect should error out SKIP: redirect_tests.py 2: redirected checkout SKIP: redirect_tests.py 3: redirected update SKIP: redirect_tests.py 4: redirected update of non-repos-root wc SKIP: redirect_tests.py 5: redirected externals SKIP: redirect_tests.py 6: redirected copy SKIP: redirect_tests.py 7: redirected commands SKIP: svnadmin_tests.py 9: 'svnadmin hotcopy' checking db/format file SKIP: svnsync_authz_tests.py 1: verify that unreadable content is not synced SKIP: svnsync_authz_tests.py 2: verify that copies from unreadable dirs work SKIP: svnsync_authz_tests.py 3: verify copies with mods from unreadable dirs SKIP: svnsync_authz_tests.py 4: verify copies with mods from unreadable dirs +copy SKIP: svnsync_authz_tests.py 6: verify if specifically denied paths dont sync SKIP: svnsync_authz_tests.py 7: copy, then rm at-src-unreadable child SKIP: update_tests.py 31: update wc on the root of a Windows (virtual) drive SKIP: update_tests.py 57: access denied paths should be skipped SKIP: update_tests.py 76: test filename with backslashes inside SKIP: wc_tests.py 11: missing .svn/wc.db and .svn/entries At least one test XFAILED, checking /opt/local/var/macports/build/_opt_local_var_macports_sources_nue.de.rsync.macports.org_macports_release_tarballs_ports_devel_subversion/subversion/work/subversion-1.9.7/tests.log XFAIL: dirent_uri-test 46: test match with RFC 6125 s. 6.4.3 Rule 3 XFAIL: fs-test 44: test reopen and modify txn XFAIL: op-depth-test 42: mixed_rev_move [[needs different libsvn_wc entry point]] XFAIL: op-depth-test 56: commit_moved_away_descendant XFAIL: op-depth-test 68: move retract (issue 4336) XFAIL: op-depth-test 75: move more than once, revert intermediate XFAIL: op-depth-test 79: del4: delete AAA XFAIL: op-depth-test 80: del4: add AAA XFAIL: op-depth-test 81: del4: replace AAA XFAIL: op-depth-test 83: del4: replace self AAA XFAIL: op-depth-test 85: move4: delete AAA XFAIL: op-depth-test 86: move4: add AAA XFAIL: op-depth-test 87: move4: replace AAA XFAIL: op-depth-test 89: move4: replace self AAA XFAIL: op-depth-test 95: move within mixed move XFAIL: basic_tests.py 63: peg rev resolution on non-existent wc paths XFAIL: blame_tests.py 15: blame -g handles changes from empty mergeinfo XFAIL: commit_tests.py 66: last changed of copied subdir XFAIL: copy_tests.py 103: copy and move conflicts XFAIL: diff_tests.py 77: diff repo to wc of a copy XFAIL: export_tests.py 11: export working copy at base revision XFAIL: externals_tests.py 49: file externals versioned obstruction XFAIL: merge_automatic_tests.py 16: cherry2_fwd XFAIL: merge_automatic_tests.py 17: cherry3_fwd XFAIL: merge_tests.py 49: avoid repeated merges for cyclic merging XFAIL: merge_tests.py 64: merge target with non inheritable mergeinfo XFAIL: merge_tests.py 114: don't inherit bogus mergeinfo XFAIL: merge_tests.py 115: don't inherit bogus working mergeinfo XFAIL: patch_tests.py 46: patch file lacking trailing eol on context XFAIL: patch_tests.py 52: hunks that overlap XFAIL: revert_tests.py 25: revert a copy with depth=files XFAIL: revert_tests.py 26: revert a nested add with depth=immediates XFAIL: special_tests.py 24: cat added symlink XFAIL: special_tests.py 27: multiline link file with svn:special XFAIL: stat_tests.py 37: modified before translation, unmodified after XFAIL: svnrdump_tests.py 51: load: mergeinfo that contains r0 XFAIL: switch_tests.py 9: switch a file to a dir and back to the file XFAIL: trans_tests.py 10: able to handle inconsistent eols on add XFAIL: trans_tests.py 11: able to handle inconsistent mime on add XFAIL: wc_tests.py 1: file status through unversioned symlink XFAIL: wc_tests.py 2: file status through versioned symlink XFAIL: wc_tests.py 3: file status with not-parent symlink XFAIL: wc_tests.py 4: add file through unversioned symlink XFAIL: wc_tests.py 5: add file through versioned symlink XFAIL: wc_tests.py 6: add file with not-parent symlink At least one test XPASSED, checking /opt/local/var/macports/build/_opt_local_var_macports_sources_nue.de.rsync.macports.org_macports_release_tarballs_ports_devel_subversion/subversion/work/subversion-1.9.7/tests.log XPASS: op-depth-test 23: test_case_rename on case (in)sensitive system XPASS: copy_tests.py 102: case-only rename At least one test FAILED, checking /opt/local/var/macports/build/_opt_local_var_macports_sources_nue.de.rsync.macports.org_macports_release_tarballs_ports_devel_subversion/subversion/work/subversion-1.9.7/tests.log FAIL: ra-test: Unknown test failure; see tests.log. FAIL: svnauthz_tests.py 3: test 'svnauthz validate --transaction' FAIL: svnauthz_tests.py 10: test 'svnauthz accessof --transaction' FAIL: svnlook_tests.py 12: test 'svnlook * -t' FAIL: switch_tests.py 38: switch and svn:keywords FAIL: trans_tests.py 1: commit new files with keywords active from birth Summary of test results: 2219 tests PASSED 83 tests SKIPPED 45 tests XFAILED (1 WORK-IN-PROGRESS) 2 tests XPASSED 6 tests FAILED SUMMARY: Some tests failed.
Is this good enough for a regular release?
Attachments (7)
Change History (16)
comment:1 follow-up: 3 Changed 7 years ago by ballapete (Peter "Pete" Dyballa)
comment:2 Changed 7 years ago by ballapete (Peter "Pete" Dyballa)
apr-util @1.6.1
with db48
builds fine, even all tests succeed:
{{{if test ! -d "./data"; then cp -r ./data data; fi teststatus=0; \
progfailed=""; \ for prog in dbd testall; do \
if test "$prog" = 'dbd'; then \
for driver in none sqlite3; do \
if test "$driver" != 'none'; then \
DYLD_LIBRARY_PATH="
echo "../crypto/.libs:../dbm/.libs:../dbd/.libs:../ldap/.libs:$DYLD_LIBRARY_PATH" | sed -e 's/::*$//'
" \ ./$prog $driver; \ status=$?; \ if test $status != 0; then \teststatus=$status; \ progfailed="$progfailed '$prog $driver'"; \
fi; \
fi; \
done; \
else \
DYLD_LIBRARY_PATH="
echo "../crypto/.libs:../dbm/.libs:../dbd/.libs:../ldap/.libs:$DYLD_LIBRARY_PATH" | sed -e 's/::*$//'
" \ ./$prog; \ status=$?; \ if test $status != 0; then \teststatus=$status; \ progfailed="$progfailed $prog"; \
fi; \
fi; \
done; \ if test $teststatus != 0; then \
echo "Programs failed:$progfailed"; \
fi; \ exit $teststatus
Loaded sqlite3 driver OK. Opened sqlite3[] OK ======== create table ======== create table test successful
======== insert rows ======== insert rows test successful
======== invalid op ======== invalid op returned 1 (should be nonzero). Error msg follows 'no such table: apr_dbd_test1' valid op returned 0 (should be zero; error shouldn't affect subsequent ops) invalid op test successful
======== select random ======== ROW 5: wibble nothing 5 ROW 1: asdfgh bar 1 select random test successful
======== select sequential ======== ROW 1: asdfgh bar 1 ROW 2: bar foo (null) ROW 3: foo (null) (null) ROW 4: qwerty foo 0 ROW 5: wibble nothing 5 ROW 6: wibble other 5 select sequential test successful
======== transactions ======== Transaction 1 6 rows updated Valid insert returned 1. Should be nonzero (fail) because transaction is bad Transaction ended (should be rollback) - viewing table A column of "failed" indicates transaction failed (no rollback) ROW 1: asdfgh bar 1 ROW 2: bar foo (null) ROW 3: foo (null) (null) ROW 4: qwerty foo 0 ROW 5: wibble nothing 5 ROW 6: wibble other 5 Transaction 2 6 rows updated Valid insert returned 0. Should be zero (OK) Transaction ended (should be commit) - viewing table ROW 1: aaa zzz 3 ROW 2: asdfgh success 1 ROW 3: bar success (null) ROW 4: foo success (null) ROW 5: qwerty success 0 ROW 6: wibble success 5 ROW 7: wibble success 5 transactions test successful
======== prepared select ======== Selecting rows where col3 <= 3 and bar row where it's unset. Should show four rows. ROW 1: qwerty success 0 ROW 2: asdfgh success 1 ROW 3: bar success (null) ROW 4: aaa zzz 3 prepared select test successful
======== prepared query ======== Showing table (should now contain row "prepared insert 2") ROW 1: aaa zzz 3 ROW 2: asdfgh success 1 ROW 3: bar success (null) ROW 4: foo success (null) ROW 5: prepared insert 2 ROW 6: qwerty success 0 ROW 7: wibble success 5 ROW 8: wibble success 5 prepared query test successful
======== drop table ======== drop table test successful
teststrmatch : SUCCESS testuri : SUCCESS testuuid : SUCCESS testbuckets : SUCCESS testpass : SUCCESS testmd4 : SUCCESS testmd5 : SUCCESS testcrypto : SUCCESS testdbd : SUCCESS testdate : SUCCESS testmemcache : SUCCESS testredis : SUCCESS testxml : SUCCESS testxlate : SUCCESS testrmm : SUCCESS testdbm : SUCCESS testqueue : SUCCESS testreslist : SUCCESS testsiphash : SUCCESS All tests passed. }}}
comment:3 Changed 7 years ago by raimue (Rainer Müller)
Replying to ballapete:
Attaching files fails with
IndexError: pop from empty list
andGET: /attachment/ticket/56229/
.
We are investigating this and it looks like it is related to using Trac in a different language. See also Trac upstream. Please try changing the language to English as an immediate workaround in the user preferences.
comment:4 Changed 7 years ago by mf2k (Frank Schima)
Cc: | blair added; dluke@… blair@… removed |
---|---|
Owner: | set to danielluke |
Status: | new → assigned |
comment:5 Changed 7 years ago by danielluke (Daniel J. Luke)
The reason why subversion (and a bunch of other ports) are stuck on bdb4.6 is that was the last release before Oracle changed the license. Originally, Oracle's license for later bdb releases was pretty incompatible with normal use - I think they fixed that. Someone needs to verify that the licensing is OK for newer bdb (I was going to do it, but I guess I've never gotten around to it, and it has been quite a while). We should move to the latest bdb release that is supported by subversion (and the other ports) that has a license that is reasonable.
As far as test failures, we don't want to commit any update that generates more failures than existed before our change - and ideally nothing that generates any failures that we can't explain away as problems with the test (and if there are problems with the test, we should report upstream and maybe help fix them).
comment:7 Changed 7 years ago by ballapete (Peter "Pete" Dyballa)
I compared he main.log
files of 'make test'
– no difference.
The fails.log
files from both 'make test'
are exactly the same.
The tests.log
files from both 'make test'
are a bi differen – he duration of the tests. There seems to be one more difference in sequence of DB operations, I would say subversions functions with db46 and db48 equally.
Changed 7 years ago by ballapete (Peter "Pete" Dyballa)
Attachment: | main.2.log added |
---|
Main.log from PPC Leopard wih db46
Changed 7 years ago by ballapete (Peter "Pete" Dyballa)
Attachment: | tests.2.log added |
---|
Complete log from 'make test' with db46
Changed 7 years ago by ballapete (Peter "Pete" Dyballa)
Attachment: | fails.2.log added |
---|
Failures from 'make test' with db46
Changed 7 years ago by ballapete (Peter "Pete" Dyballa)
Attachment: | main.3.log added |
---|
Main.log from PPC Leopard with db46
Changed 7 years ago by ballapete (Peter "Pete" Dyballa)
Failures from 'make test' with db48
Changed 7 years ago by ballapete (Peter "Pete" Dyballa)
Complete log from 'make test' with db48
Changed 7 years ago by ballapete (Peter "Pete" Dyballa)
Main.log from PPC Leopard with db48
comment:8 Changed 7 years ago by ballapete (Peter "Pete" Dyballa)
main.2.log is wrong, main.3.log is the build log from port test subversion
with db46.
comment:9 Changed 6 years ago by danielluke (Daniel J. Luke)
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Updated to bdb48 in PR 3124
Attaching files fails with
IndexError: pop from empty list
andGET: /attachment/ticket/56229/
.