|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
[2006-02-23 04:43 UTC] mandersm at student dot ethz dot ch
Description:
------------
When trying to checkout or update from any (I tested two servers, many repositories) SVN server I'm getting the following errors:
Warning: svn_checkout() [function.svn-checkout]: svn error(s) occured
22 (Invalid argument) Can't recode string
in /data/www/maarten/sb3/classes/svn/SvnConnection.class.php on line 102
I know what the "Can't recode string" issue is about and how to fix it. This repository, however, consists only of a single "test.txt" file, so there shouldn't be any problems with that. Additionally, checking out / updating the repository with the command-line client (or any other) works perfectly.
For security reasons, the SVN server is only accessible from intranet. I could give you access over SSL if you need it. I don't think it's a SVN server issue though.
Finally, here's the SVN information from my php.ini
svn support => enabled
svn client version => 1.1.4
Thanks very much for your help!
Maarten Manders
Students.ch
Reproduce code:
---------------
Here's my debug output:
Calling svn_checkout('http://svn.students.ch/test/.', '/data/www/maarten/repo1', -1)
Warning: svn_checkout() [function.svn-checkout]: svn error(s) occured
22 (Invalid argument) Can't recode string
in /data/www/maarten/sb3/classes/svn/SvnConnection.class.php on line 102
bool(false)
Calling svn_update('/data/www/maarten/repo2', -1)
Warning: svn_update() [function.svn-update]: svn error(s) occured
22 (Invalid argument) Can't recode string
in /data/www/maarten/sb3/classes/svn/SvnConnection.class.php on line 206
bool(false)
Expected result:
----------------
No errors.
Actual result:
--------------
As seen above. Here's the SVN server's transfer log:
192.168.120.75 - - [23/Feb/2006:10:27:45 +0100] "PROPFIND /test HTTP/1.1" 401 401 "-" "SVN/1.1.4 (r13838) neon/0.24.7"
192.168.120.75 - maarten [23/Feb/2006:10:27:45 +0100] "PROPFIND /test HTTP/1.1" 207 639 "-" "SVN/1.1.4 (r13838) neon/0.24.7"
192.168.120.75 - maarten [23/Feb/2006:10:27:45 +0100] "PROPFIND /test/!svn/vcc/default HTTP/1.1" 207 390 "-" "SVN/1.1.4 (r13838) neon/0.24.7"
192.168.120.75 - maarten [23/Feb/2006:10:27:45 +0100] "PROPFIND /test/!svn/bln/2 HTTP/1.1" 207 441 "-" "SVN/1.1.4 (r13838) neon/0.24.7"
192.168.120.75 - maarten [23/Feb/2006:10:27:45 +0100] "PROPFIND /test HTTP/1.1" 207 639 "-" "SVN/1.1.4 (r13838) neon/0.24.7"
192.168.120.75 - maarten [23/Feb/2006:10:27:45 +0100] "PROPFIND /test/!svn/vcc/default HTTP/1.1" 207 441 "-" "SVN/1.1.4 (r13838) neon/0.24.7"
192.168.120.75 - maarten [23/Feb/2006:10:27:45 +0100] "PROPFIND /test/!svn/bc/2 HTTP/1.1" 207 649 "-" "SVN/1.1.4 (r13838) neon/0.24.7"
192.168.120.75 - maarten [23/Feb/2006:10:27:45 +0100] "PROPFIND /test HTTP/1.1" 207 639 "-" "SVN/1.1.4 (r13838) neon/0.24.7"
192.168.120.75 - - [23/Feb/2006:10:27:45 +0100] "PROPFIND /test HTTP/1.1" 401 401 "-" "SVN/1.1.4 (r13838) neon/0.24.7"
192.168.120.75 - maarten [23/Feb/2006:10:27:45 +0100] "PROPFIND /test HTTP/1.1" 207 639 "-" "SVN/1.1.4 (r13838) neon/0.24.7"
192.168.120.75 - maarten [23/Feb/2006:10:27:45 +0100] "PROPFIND /test/!svn/vcc/default HTTP/1.1" 207 390 "-" "SVN/1.1.4 (r13838) neon/0.24.7"
192.168.120.75 - maarten [23/Feb/2006:10:27:45 +0100] "PROPFIND /test/!svn/bln/2 HTTP/1.1" 207 441 "-" "SVN/1.1.4 (r13838) neon/0.24.7"
192.168.120.75 - - [23/Feb/2006:10:27:47 +0100] "PROPFIND /test HTTP/1.1" 401 401 "-" "SVN/1.1.4 (r13838) neon/0.24.7"
192.168.120.75 - maarten [23/Feb/2006:10:27:47 +0100] "PROPFIND /test HTTP/1.1" 207 639 "-" "SVN/1.1.4 (r13838) neon/0.24.7"
192.168.120.75 - maarten [23/Feb/2006:10:27:47 +0100] "PROPFIND /test/!svn/vcc/default HTTP/1.1" 207 390 "-" "SVN/1.1.4 (r13838) neon/0.24.7"
192.168.120.75 - maarten [23/Feb/2006:10:27:47 +0100] "PROPFIND /test/!svn/bln/2 HTTP/1.1" 207 441 "-" "SVN/1.1.4 (r13838) neon/0.24.7"
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
|
|||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Fri Nov 07 14:00:02 2025 UTC |
Here's another debug output for checking out / updating from the eZ SVN server. Calling svn_checkout('http://svn.ez.no/svn/ezcomponents/releases/Archive/1.0rc1/tests/.', '/data/www/maarten/repo3', -1) Warning: svn_checkout() [function.svn-checkout]: svn error(s) occured 22 (Invalid argument) Can't recode string in /data/www/maarten/sb3/classes/svn/SvnConnection.class.php on line 102 bool(false) Calling svn_update('/data/www/maarten/repo4', -1) Warning: svn_update() [function.svn-update]: svn error(s) occured 22 (Invalid argument) Can't recode string in /data/www/maarten/sb3/classes/svn/SvnConnection.class.php on line 206 bool(false)I havent really got time to look at this at present, from what I remember the url might need utf8'ing before sending to the C command Changing the code to something like this: chars *utf8_repos_url = NULL; // convert to utf c string svn_utf_cstring_to_utf8 (&utf8_repos_url, repos_url, SVN_G(pool)); // use utf8 string in checkout call. svn_client_checkout (NULL, svn_path_canonicalize(utf8_repos_url, SVN_G(pool)), ...Thanks for your response! I tried it but unfortunately, it won't work yet. This is what I changed the c code to: // convert to utf c string char *utf8_repos_url = NULL; svn_utf_cstring_to_utf8 (&utf8_repos_url, repos_url, SVN_G(pool)); err = svn_client_checkout (NULL, /* repos_url, */ svn_path_canonicalize(utf8_repos_url, SVN_G(pool)), And this is my new output (which appears after a extremely long timeout): Calling svn_checkout('http://svn.students.ch/test/', '/data/www/maarten/repo1', -1) Warning: svn_checkout() [function.svn-checkout]: svn error(s) occured 155004 (Attempted to lock an already-locked dir) Working copy '/data/www/maarten/repo1' locked in /data/www/maarten/sb3/classes/svn/SvnLibConnection.class.php on line 120 bool(false) Calling svn_update('/data/www/maarten/repo2', -1) Warning: svn_update() [function.svn-update]: svn error(s) occured 175002 (RA layer request failed) REPORT request failed on '/test/!svn/vcc/default' 175002 (RA layer request failed) REPORT of '/test/!svn/vcc/default': 400 Bad Request (http://svn.students.ch) in /data/www/maarten/sb3/classes/svn/SvnLibConnection.class.php on line 224 bool(false) Here's those two requests in my apache access log: 192.168.120.75 - - [24/Feb/2006:11:14:24 +0100] "PROPFIND /test HTTP/1.1" 401 401 "-" "SVN/1.1.4 (r13838) neon/0.24.7" 192.168.120.75 - maarten [24/Feb/2006:11:14:24 +0100] "PROPFIND /test HTTP/1.1" 207 639 "-" "SVN/1.1.4 (r13838) neon/0.24.7" 192.168.120.75 - maarten [24/Feb/2006:11:14:24 +0100] "PROPFIND /test/!svn/vcc/default HTTP/1.1" 207 390 "-" "SVN/1.1.4 (r13838) neon/0.24.7" 192.168.120.75 - maarten [24/Feb/2006:11:14:24 +0100] "PROPFIND /test/!svn/bln/2 HTTP/1.1" 207 441 "-" "SVN/1.1.4 (r13838) neon/0.24.7" 192.168.120.75 - maarten [24/Feb/2006:11:14:24 +0100] "PROPFIND /test HTTP/1.1" 207 639 "-" "SVN/1.1.4 (r13838) neon/0.24.7" 192.168.120.75 - maarten [24/Feb/2006:11:14:24 +0100] "PROPFIND /test/!svn/vcc/default HTTP/1.1" 207 441 "-" "SVN/1.1.4 (r13838) neon/0.24.7" 192.168.120.75 - maarten [24/Feb/2006:11:14:24 +0100] "PROPFIND /test/!svn/bc/2 HTTP/1.1" 207 649 "-" "SVN/1.1.4 (r13838) neon/0.24.7" 192.168.120.75 - maarten [24/Feb/2006:11:14:24 +0100] "PROPFIND /test HTTP/1.1" 207 639 "-" "SVN/1.1.4 (r13838) neon/0.24.7" 192.168.120.75 - - [24/Feb/2006:11:14:25 +0100] "PROPFIND /test HTTP/1.1" 401 401 "-" "SVN/1.1.4 (r13838) neon/0.24.7" 192.168.120.75 - maarten [24/Feb/2006:11:14:25 +0100] "PROPFIND /test HTTP/1.1" 207 639 "-" "SVN/1.1.4 (r13838) neon/0.24.7" 192.168.120.75 - maarten [24/Feb/2006:11:14:25 +0100] "PROPFIND /test/!svn/vcc/default HTTP/1.1" 207 390 "-" "SVN/1.1.4 (r13838) neon/0.24.7" 192.168.120.75 - maarten [24/Feb/2006:11:14:25 +0100] "PROPFIND /test/!svn/bln/2 HTTP/1.1" 207 441 "-" "SVN/1.1.4 (r13838) neon/0.24.7" 192.168.120.75 - maarten [24/Feb/2006:11:14:25 +0100] "PROPFIND /test HTTP/1.1" 207 639 "-" "SVN/1.1.4 (r13838) neon/0.24.7" 192.168.120.75 - maarten [24/Feb/2006:11:13:24 +0100] "REPORT /test/!svn/vcc/default HTTP/1.1" 400 226 "-" "SVN/1.1.4 (r13838) neon/0.24.7" 192.168.120.75 - maarten [24/Feb/2006:11:14:25 +0100] "REPORT /test/!svn/vcc/default HTTP/1.1" 400 226 "-" "SVN/1.1.4 (r13838) neon/0.24.7" These are the two requests which make the SVN client hang: 192.168.120.75 - maarten [24/Feb/2006:11:22:22 +0100] "PROPFIND /test HTTP/1.1" 207 639 "-" "SVN/1.1.4 (r13838) neon/0.24.7" 192.168.120.74 - frank [24/Feb/2006:11:22:42 +0100] "REPORT /students.ch/!svn/vcc/default HTTP/1.1" 200 522560 "-" "SVN/1.1.4 (r13838) neon/0.24.7" My Apache error log, on the other hand, stays empty, although I set error level to 'notice'. I hope you've still got some tricks up your sleeve.. :) Maarten