You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by Jeremy Kitchen <ki...@scriptkitchen.com> on 2008/10/16 01:41:31 UTC

commit problem with 1.4.2 (r22196)

I asked about this in #svn on freenode earlier and the awesome peterS
attempted to help me out with it, but unfortunately we were unable to
come up with a solution.

The problem is this:
"svn-commit.tmp" 6L, 137C written
Sending        Mailfilterer.pm
Transmitting file data .svn: Commit failed (details follow):
svn: MERGE request failed on '/repo/trunk/perl/Ndn/Dreamhost/Service'
svn: Valid UTF-8 data
(hex: 4f 63 74 20 31 35 20 31 38 3a 33 30 3a 35 34 20 32 30 30 38 5d 20
70 60)
followed by invalid UTF-8 sequence
(hex: 9a 02 3a 20)
svn: Your commit message was left in a temporary file:
svn:    '/home/jeremyk/devel/ndn/perl/Ndn/Dreamhost/Service/svn-commit.tmp'


Now, everything I've been able to find on google about this has
suggested a filename in the same directory with non-utf8 characters.
This is not the case, so I'm a little lost.  The weird thing is the
contents of the hex:

Oct 15 18:30:54 2008] p`?:

I think the ? character is the invalid utf character as specified by
9a02 in the hex above.

The timestamp there is the time I attempted the commit, and the
p`<whatever>: is gibberish, the file does not have any sequence such as
that within it.

We have tried 4 different working copies from 2 different machines (and
one fresh working copy after I started troubleshooting), and all of them
give this error.

Details on the setup:
svn 1.4.2 (r22196) on both client and server
client OS: debian sarge 32-bit
server OS: debian etch 64-bit
svn server: apache 2.2.9 with mod_dav and mod_dav_svn
repository is an fsfs repository created by using svn load to load a
dump file created by cvs2svn

the error.log file from apache shows pretty much the same:
[Wed Oct 15 18:30:54 2008] [error] [client 10.x.x.x] Could not MERGE
resource "/repo/!svn/act/35f6b8cc-5459-0410-9701-84b585593b56" into
"/repo/trunk/perl/Ndn/Dreamhost/Service".  [409, #0]
[Wed Oct 15 18:30:54 2008] [error] [client 10.x.x.x] An error occurred
while committing the transaction.  [409, #22]
[Wed Oct 15 18:30:54 2008] [error] [client 10.x.x.x] Valid UTF-8
data\n(hex: 4f 63 74 20 31 35 20 31 38 3a 33 30 3a 35 34 20 32 30 30 38
5d 20 70 60)\nfollowed by invalid UTF-8 sequence\n(hex: 9a 02 3a 20)
[409, #22]

The only real weirdness with the file itself is that it has windows
format LFs, but even after running the file through dos2unix the error
persists.

Any help that could be provided with regard to this issue would be
greatly appreciated.  If more information is required from me to
troubleshoot this issue, please let me know, and I'll see what I can do!

-Jeremy


Re: commit problem with 1.4.2 (r22196) [solved, bugworthy?]

Posted by Jeremy Kitchen <ki...@scriptkitchen.com>.
Daniel Shahaf wrote:
>> turns out this was actually due to our pre-commit hook script failing
>> and spitting out some strange output:
>>
>> [Thu Oct 16 17:29:53 2008] @ߚ: Name "OpenSRS::OPENSRS_LOGOUT" used only
>> once: possible typo at @ߚ line 51.
>>
>> Now, my question is:
>> Should this message be a little more clear, perhaps?
> 
> What, reading the hex'ed timestamp isn't clear enough already?  :-)

nope, it wasn't, unfortunately.  If I come across it again, it certainly
will be, however ;)

>> If it said
>> something like 'pre-commit hook script exited non-zero, but we could not
>> parse the output, here's why', it would have been a lot easier to
>> troubleshoot this issue :)
>>
> 
> Seems that it's fixed already: in 1.5.3, the code reads:
> 
>   /* If we got the stderr output okay, try to translate it into UTF-8.
>      Ensure there is something sensible in the UTF-8 string regardless. */
[snip code]

Excellent, thanks!

-Jeremy





Re: commit problem with 1.4.2 (r22196) [solved, bugworthy?]

Posted by Daniel Shahaf <d....@daniel.shahaf.name>.
Jeremy Kitchen wrote on Thu, 16 Oct 2008 at 17:34 -0700:
> Jeremy Kitchen wrote:
> > The problem is this:
> > "svn-commit.tmp" 6L, 137C written
> > Sending        Mailfilterer.pm
> > Transmitting file data .svn: Commit failed (details follow):
> > svn: MERGE request failed on '/repo/trunk/perl/Ndn/Dreamhost/Service'
> > svn: Valid UTF-8 data
> > (hex: 4f 63 74 20 31 35 20 31 38 3a 33 30 3a 35 34 20 32 30 30 38 5d 20
> > 70 60)
> > followed by invalid UTF-8 sequence
> > (hex: 9a 02 3a 20)
> > svn: Your commit message was left in a temporary file:
> > svn:    '/home/jeremyk/devel/ndn/perl/Ndn/Dreamhost/Service/svn-commit.tmp'
> 
> turns out this was actually due to our pre-commit hook script failing
> and spitting out some strange output:
> 
> [Thu Oct 16 17:29:53 2008] @ߚ: Name "OpenSRS::OPENSRS_LOGOUT" used only
> once: possible typo at @ߚ line 51.
> 
> Now, my question is:
> Should this message be a little more clear, perhaps?

What, reading the hex'ed timestamp isn't clear enough already?  :-)

> If it said
> something like 'pre-commit hook script exited non-zero, but we could not
> parse the output, here's why', it would have been a lot easier to
> troubleshoot this issue :)
> 

Seems that it's fixed already: in 1.5.3, the code reads:

  /* If we got the stderr output okay, try to translate it into UTF-8.
     Ensure there is something sensible in the UTF-8 string regardless. */
  if (!err2)
    {
      err2 = svn_utf_cstring_to_utf8(&utf8_stderr, native_stderr->data, pool);
      if (err2)
        utf8_stderr = _("[Error output could not be translated from the "
                        "native locale to UTF-8.]");
    }
  else
    {
      utf8_stderr = _("[Error output could not be read.]");
    }

Daniel

> thoughts?
> 
> -Jeremy
> 
> 

Re: commit problem with 1.4.2 (r22196) [solved, bugworthy?]

Posted by Jeremy Kitchen <ki...@scriptkitchen.com>.
Jeremy Kitchen wrote:
> The problem is this:
> "svn-commit.tmp" 6L, 137C written
> Sending        Mailfilterer.pm
> Transmitting file data .svn: Commit failed (details follow):
> svn: MERGE request failed on '/repo/trunk/perl/Ndn/Dreamhost/Service'
> svn: Valid UTF-8 data
> (hex: 4f 63 74 20 31 35 20 31 38 3a 33 30 3a 35 34 20 32 30 30 38 5d 20
> 70 60)
> followed by invalid UTF-8 sequence
> (hex: 9a 02 3a 20)
> svn: Your commit message was left in a temporary file:
> svn:    '/home/jeremyk/devel/ndn/perl/Ndn/Dreamhost/Service/svn-commit.tmp'

turns out this was actually due to our pre-commit hook script failing
and spitting out some strange output:

[Thu Oct 16 17:29:53 2008] @ߚ: Name "OpenSRS::OPENSRS_LOGOUT" used only
once: possible typo at @ߚ line 51.

Now, my question is:
Should this message be a little more clear, perhaps?  If it said
something like 'pre-commit hook script exited non-zero, but we could not
parse the output, here's why', it would have been a lot easier to
troubleshoot this issue :)

thoughts?

-Jeremy


Re: commit problem with 1.4.2 (r22196)

Posted by Jeremy Kitchen <ki...@scriptkitchen.com>.
Jeremy Kitchen wrote:
> Details on the setup:
> svn 1.4.2 (r22196) on both client and server
> client OS: debian sarge 32-bit
> server OS: debian etch 64-bit
> svn server: apache 2.2.9 with mod_dav and mod_dav_svn
> repository is an fsfs repository created by using svn load to load a
> dump file created by cvs2svn

oh, and if it makes any difference, the repository is being served up
via https.