You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Jody Shumaker <jo...@gmail.com> on 2006/09/20 19:30:51 UTC

svn.exe crashes in libapr.dll when performing a checkout on specific set of data.

After updating to svn 1.4.0 using either the setup exe or the zip on
the website, svn.exe is crashing whenever I checkout a specific
directory in my repository. Doesn't matter which pc I'm running on and
I confirmed the libapr.dll is not corrupt,
7c345da2a199821bfd3af189b278e5ca *libapr.dll

When checking out this one directory, of unfortunately data I can't
give out, svn.exe crashes:
Faulting application svn.exe, version 1.4.0.21228, faulting module
libapr.dll, version 0.9.12.0, fault address 0x00010f67.

It seems to be crashing in the cleanup at the end of the run as
crashes after it has checked out and left the working copy in a good
state. I also found that if I take the libapr built for TSVN,
libapr_tsvn.dll and rename it to libapr.dll and replace the one that
came with svn 1.4.0 with this version, it will then work just fine.
For now this gives me a workaround I can use, but not an ideal
solution.

minidump saved from attaching vs2005 debugger is available at
http://mysite.verizon.net/jodys7/svn.dmp If there's anything else that
would be useful for me to provide short of figuring out how to build
subversion in debug mode, or providing the repository data that I
can't, please let me know.

- Jody

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: svn.exe crashes in libapr.dll when performing a checkout on specific set of data.

Posted by Stefan Küng <to...@gmail.com>.
Martin Hauner wrote:
> Hi,
> 
> "D.J. Heap" <dj...@gmail.com> wrote:
>> On 10/9/06, Ivan Zhakov <ch...@gmail.com> wrote:
>> [snip]
>>> [snip]
>>> The same workaround helps (copying libapr.dll from TSVN). My idea that
>>> there are some conflicts with TSVN iconv (which is build using
>>> vs2005), now I've asked that user to test without TSVN installed.
>>>
>>> --
>>> Ivan Zhakov
>>
>> Hmm, yes, since apr-iconv uses an environment variable for its path,
>> and TSVN uses a different apr-iconv, if we're picking up TSVN's
>> apr-iconv then there is definitely a potential for problems.  Is there
>> any other way to specify a path for apr-iconv besides an environment
>> variable?  We probably need to keep multiple copies private to the
>> installation they are for.
> 
> In Subcommander I use a small patch to apr-iconv to solve this issue.
> It first looks for an iconv folder in the same place where the binary
> is installed (in this case the iconv dll) before looking at APR_ICONV_PATH.
> 
> http://subcommander.tigris.org/source/browse/subcommander/trunk/doc/apr-iconv.patch?rev=265&view=markup

TSVN uses almost the same patch for apr-iconv. I've also sent that patch 
to the apr dev mailing list, explaining why using the APR_ICONV_PATH env 
variable is desasterous. But as with most of my patches, they get 
ignored. So I keep using my patched version of apr-iconv because I don't 
like having problems because of it.
http://marc.theaimsgroup.com/?l=apr-dev&m=111219823714841&w=2

In short, the patch to apr-iconv makes sure that TSVN uses it's own 
libraries - only if they get deleted or are for some unknown reason not 
accessible, it falls back to using the APR_ICONV_PATH variable.

And with version 1.4.0, TSVN even has renamed the apr libraries to 
libaprxxx_tsvn.dll to get out of the dll-hell for good.

Stefan

-- 
        ___
   oo  // \\      "De Chelonian Mobile"
  (_,\/ \_/ \     TortoiseSVN
    \ \_/_\_/>    The coolest Interface to (Sub)Version Control
    /_/   \_\     http://tortoisesvn.net

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: svn.exe crashes in libapr.dll when performing a checkout on specific set of data.

Posted by Martin Hauner <Ma...@gmx.net>.
Hi,

"D.J. Heap" <dj...@gmail.com> wrote:
> On 10/9/06, Ivan Zhakov <ch...@gmail.com> wrote:
> [snip]
> > [snip]
> > The same workaround helps (copying libapr.dll from TSVN). My idea that
> > there are some conflicts with TSVN iconv (which is build using
> > vs2005), now I've asked that user to test without TSVN installed.
> >
> > --
> > Ivan Zhakov
> 
> 
> Hmm, yes, since apr-iconv uses an environment variable for its path,
> and TSVN uses a different apr-iconv, if we're picking up TSVN's
> apr-iconv then there is definitely a potential for problems.  Is there
> any other way to specify a path for apr-iconv besides an environment
> variable?  We probably need to keep multiple copies private to the
> installation they are for.

In Subcommander I use a small patch to apr-iconv to solve this issue.
It first looks for an iconv folder in the same place where the binary
is installed (in this case the iconv dll) before looking at APR_ICONV_PATH.

http://subcommander.tigris.org/source/browse/subcommander/trunk/doc/apr-iconv.patch?rev=265&view=markup



-- 
Martin

Subcommander 1.2.0, http://subcommander.tigris.org
a cross platform Win32/Unix/MacOSX subversion gui client & diff/merge tool.

Der GMX SmartSurfer hilft bis zu 70% Ihrer Onlinekosten zu sparen! 
Ideal für Modem und ISDN: http://www.gmx.net/de/go/smartsurfer

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: svn.exe crashes in libapr.dll when performing a checkout on specific set of data.

Posted by Jody Shumaker <jo...@gmail.com>.
> Update on this topic: TortoiseSVN uninstallation doesn't fix problem.
>
>
Also, I stated that using the tsvn libapr.dll only caused it to fail
on a different directory in my repository, it only seemed to change
the dataset tha caused it but the same problem exists.

- Jody

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: svn.exe crashes in libapr.dll when performing a checkout on specific set of data.

Posted by Ivan Zhakov <ch...@gmail.com>.
On 10/9/06, D.J. Heap <dj...@gmail.com> wrote:
> On 10/9/06, Ivan Zhakov <ch...@gmail.com> wrote:
> [snip]
> > One of user reported me very similiar problem during svn export. It
> > fails on big tree with following stack trace:
> > libapriconv.dll!apr_iconv_ces_open(const char * cesname=0x00af02f0,
> > iconv_ces * * cespp=0x00b2f874, apr_pool_t * ctx=0x00b2fe20) Line 61 +
> > 0x2b C
> > libapriconv.dll!iconv_uc_open(const char * to=0x00af02f0, const char *
> > from=0x00af02f8, void * * data=0x0012f68c, apr_pool_t *
> > ctx=0x00af0060) Line 41 + 0xf C
> > libapriconv.dll!apr_iconv_open(const char * to=0x00b31fe0, const char
> > * from=0x0012f8c4, apr_pool_t * ctx=0x77f470e4, void * *
> > res=0x77f4725c) Line 88 + 0x10 C
> > libaprutil.dll!check_sbcs(apr_xlate_t * convset=0x00000000) Line 183 + 0x12 C
> > kernel32.dll!77e49325()
> > ntdll.dll!77f5109c()
> > ntdll.dll!77f50fdd()
> > ntdll.dll!77f45275()
> >
> > The same workaround helps (copying libapr.dll from TSVN). My idea that
> > there are some conflicts with TSVN iconv (which is build using
> > vs2005), now I've asked that user to test without TSVN installed.
> >
> > --
> > Ivan Zhakov
>
>
> Hmm, yes, since apr-iconv uses an environment variable for its path,
> and TSVN uses a different apr-iconv, if we're picking up TSVN's
> apr-iconv then there is definitely a potential for problems.  Is there
> any other way to specify a path for apr-iconv besides an environment
> variable?  We probably need to keep multiple copies private to the
> installation they are for.
>
Update on this topic: TortoiseSVN uninstallation doesn't fix problem.

-- 
Ivan Zhakov

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: svn.exe crashes in libapr.dll when performing a checkout on specific set of data.

Posted by "D.J. Heap" <dj...@gmail.com>.
On 10/9/06, Ivan Zhakov <ch...@gmail.com> wrote:
[snip]
> One of user reported me very similiar problem during svn export. It
> fails on big tree with following stack trace:
> libapriconv.dll!apr_iconv_ces_open(const char * cesname=0x00af02f0,
> iconv_ces * * cespp=0x00b2f874, apr_pool_t * ctx=0x00b2fe20) Line 61 +
> 0x2b C
> libapriconv.dll!iconv_uc_open(const char * to=0x00af02f0, const char *
> from=0x00af02f8, void * * data=0x0012f68c, apr_pool_t *
> ctx=0x00af0060) Line 41 + 0xf C
> libapriconv.dll!apr_iconv_open(const char * to=0x00b31fe0, const char
> * from=0x0012f8c4, apr_pool_t * ctx=0x77f470e4, void * *
> res=0x77f4725c) Line 88 + 0x10 C
> libaprutil.dll!check_sbcs(apr_xlate_t * convset=0x00000000) Line 183 + 0x12 C
> kernel32.dll!77e49325()
> ntdll.dll!77f5109c()
> ntdll.dll!77f50fdd()
> ntdll.dll!77f45275()
>
> The same workaround helps (copying libapr.dll from TSVN). My idea that
> there are some conflicts with TSVN iconv (which is build using
> vs2005), now I've asked that user to test without TSVN installed.
>
> --
> Ivan Zhakov


Hmm, yes, since apr-iconv uses an environment variable for its path,
and TSVN uses a different apr-iconv, if we're picking up TSVN's
apr-iconv then there is definitely a potential for problems.  Is there
any other way to specify a path for apr-iconv besides an environment
variable?  We probably need to keep multiple copies private to the
installation they are for.

DJ

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: svn.exe crashes in libapr.dll when performing a checkout on specific set of data.

Posted by Ivan Zhakov <ch...@gmail.com>.
On 9/23/06, D.J. Heap <dj...@gmail.com> wrote:
> On 9/21/06, zzzz4 <st...@gmail.com> wrote:
> [snip]
> >
> > FYI
> >
> > I'm also getting a crash in a similar situation: a recursive checkout
> > from the root path crashes, but checkouts of subdirectories complete
> > normally.
> >
> > This has started since:
> > svn, version 1.4.0 (r21228)
> >    compiled Sep 11 2006, 17:46:59
> >
> > I have a DrWatson log if you need it...
> > --
> > zzzz4
>
>
> Can you provide more information?  What version is the server running?
>  What protocol (http/https/svn)?  If you are running Apache, what
> version of Apache and can you post your Apache configuration?  Can you
> provide the repository for testing with?
>
> Thanks!
>
> DJ
>
One of user reported me very similiar problem during svn export. It
fails on big tree with following stack trace:
libapriconv.dll!apr_iconv_ces_open(const char * cesname=0x00af02f0,
iconv_ces * * cespp=0x00b2f874, apr_pool_t * ctx=0x00b2fe20) Line 61 +
0x2b C
libapriconv.dll!iconv_uc_open(const char * to=0x00af02f0, const char *
from=0x00af02f8, void * * data=0x0012f68c, apr_pool_t *
ctx=0x00af0060) Line 41 + 0xf C
libapriconv.dll!apr_iconv_open(const char * to=0x00b31fe0, const char
* from=0x0012f8c4, apr_pool_t * ctx=0x77f470e4, void * *
res=0x77f4725c) Line 88 + 0x10 C
libaprutil.dll!check_sbcs(apr_xlate_t * convset=0x00000000) Line 183 + 0x12 C
kernel32.dll!77e49325()
ntdll.dll!77f5109c()
ntdll.dll!77f50fdd()
ntdll.dll!77f45275()

The same workaround helps (copying libapr.dll from TSVN). My idea that
there are some conflicts with TSVN iconv (which is build using
vs2005), now I've asked that user to test without TSVN installed.

-- 
Ivan Zhakov

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: svn.exe crashes in libapr.dll when performing a checkout on specific set of data.

Posted by zzzz4 <st...@gmail.com>.
D.J. Heap wrote:
> On 9/21/06, zzzz4 <st...@gmail.com> wrote:
> [snip]
> >
> > FYI
> >
> > I'm also getting a crash in a similar situation: a recursive checkout
> > from the root path crashes, but checkouts of subdirectories complete
> > normally.
> >
> > This has started since:
> > svn, version 1.4.0 (r21228)
> >    compiled Sep 11 2006, 17:46:59
> >
> > I have a DrWatson log if you need it...
> > --
> > zzzz4
>
>
> Can you provide more information?  What version is the server running?
>  What protocol (http/https/svn)?  If you are running Apache, what
> version of Apache and can you post your Apache configuration?  Can you
> provide the repository for testing with?

ENVIRONMENT:
Windows 2000 5.00.2195 SP4

PROTOCOL:
'file' (i.e., RA_Local module for local disk access)

REPOSITORY:
Berkeley DB

Unfortunately, I'm not authorized to share the repository.
However, the following listings may be helpful...

# svn ls file:///d:/svn/myproject/dev/branches/PROD
bin/
build-DEV.properties
build-PROD.properties
build.number
build.properties
build.xml
db/
doc/
lib/
src/
test/
want.bat
web/

# svn co file:///d:/svn/myproject/dev/branches/PROD
CRASH: see svn_14_co_crash.log (emailed to Subversion dev Google
group...)

# svn co --non-recursive file:///d:/svn/myproject/dev/branches/PROD
# svn co file:///d:/svn/myproject/dev/branches/PROD/bin
# svn co file:///d:/svn/myproject/dev/branches/PROD/db
# svn co file:///d:/svn/myproject/dev/branches/PROD/doc
# svn co file:///d:/svn/myproject/dev/branches/PROD/lib
# svn co file:///d:/svn/myproject/dev/branches/PROD/src
# svn co file:///d:/svn/myproject/dev/branches/PROD/test
# svn co file:///d:/svn/myproject/dev/branches/PROD/web
All of the above completed normally.

If I think of anything else, I'll let you know...

Cheers
--
zzzz4

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: svn.exe crashes in libapr.dll when performing a checkout on specific set of data.

Posted by "D.J. Heap" <dj...@gmail.com>.
On 9/21/06, zzzz4 <st...@gmail.com> wrote:
[snip]
>
> FYI
>
> I'm also getting a crash in a similar situation: a recursive checkout
> from the root path crashes, but checkouts of subdirectories complete
> normally.
>
> This has started since:
> svn, version 1.4.0 (r21228)
>    compiled Sep 11 2006, 17:46:59
>
> I have a DrWatson log if you need it...
> --
> zzzz4


Can you provide more information?  What version is the server running?
 What protocol (http/https/svn)?  If you are running Apache, what
version of Apache and can you post your Apache configuration?  Can you
provide the repository for testing with?

Thanks!

DJ

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: svn.exe crashes in libapr.dll when performing a checkout on specific set of data.

Posted by zzzz4 <st...@gmail.com>.
Jody Shumaker wrote:
>
> There aren't any special characters in the directory or filenames
> where it crashes. Locale settings are the default english windows
> settings. I had originally thought it might be a specific file that
> was causing the problem and thus though i'd narrow the checkout down
> to the mininum set that causes the error, unfortunately
>
> The directory structure is something like this:
> Adobe
> Adobe/APDFL
> Adobe/NormL
>
> With only those 2 subdirectories under Adobe.  If I checkout Adobe I
> get the crash. If I checkout Adobe/APDFL and Adobe/NormL seperately, I
> don't get any crash. If i checkout the directory containing Adobe, I
> get the crash as soon as it finishes checking out the Adobe directory.
> If I checkout the Adobe directory non recursively, it doesn't crash.
> Something about the full set of files in the Adobe directory that is
> triggering the crash.
>

FYI

I'm also getting a crash in a similar situation: a recursive checkout
from the root path crashes, but checkouts of subdirectories complete
normally.

This has started since:
svn, version 1.4.0 (r21228)
   compiled Sep 11 2006, 17:46:59

I have a DrWatson log if you need it...
--
zzzz4

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: svn.exe crashes in libapr.dll when performing a checkout on specific set of data.

Posted by Jody Shumaker <jo...@gmail.com>.
> 
> Are there special characters somewhere in the directory or filenames
> where it crashes?  Can you give us those and your locale/language
> settings?
>

There aren't any special characters in the directory or filenames
where it crashes. Locale settings are the default english windows
settings. I had originally thought it might be a specific file that
was causing the problem and thus though i'd narrow the checkout down
to the mininum set that causes the error, unfortunately

The directory structure is something like this:
Adobe
Adobe/APDFL
Adobe/NormL

With only those 2 subdirectories under Adobe.  If I checkout Adobe I
get the crash. If I checkout Adobe/APDFL and Adobe/NormL seperately, I
don't get any crash. If i checkout the directory containing Adobe, I
get the crash as soon as it finishes checking out the Adobe directory.
If I checkout the Adobe directory non recursively, it doesn't crash.
Something about the full set of files in the Adobe directory that is
triggering the crash.

- Jody

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: svn.exe crashes in libapr.dll when performing a checkout on specific set of data.

Posted by "D.J. Heap" <dj...@gmail.com>.
On 9/21/06, Jody Shumaker <jo...@gmail.com> wrote:
> > It appears that you were doing an export, not a checkout?
>
> Sorry yes, that minidump was from an export.  It crashes the same with
> a checkout or an export though so I could create a minidump for the
> checkout.
>
> >
> > Do you have apr-iconv from the zip installed and APR_ICONV_PATH
> > pointing to it?   It shouldn't crash, of course, but it would be
> > interesting to know if that was the reason.
>
> apr-iconv is setup and the APR_ICONV_PATH environment variable does
> exist pointing to the correct location.
> E:\>echo %APR_ICONV_PATH%
> C:\Program Files\Subversion\iconv
>
> and unfortunately I just found that using the TSVN libapr.dll only
> causes it to fail on different checkouts.


Are there special characters somewhere in the directory or filenames
where it crashes?  Can you give us those and your locale/language
settings?

DJ

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: svn.exe crashes in libapr.dll when performing a checkout on specific set of data.

Posted by Jody Shumaker <jo...@gmail.com>.
> It appears that you were doing an export, not a checkout?

Sorry yes, that minidump was from an export.  It crashes the same with
a checkout or an export though so I could create a minidump for the
checkout.

>
> Do you have apr-iconv from the zip installed and APR_ICONV_PATH
> pointing to it?   It shouldn't crash, of course, but it would be
> interesting to know if that was the reason.

apr-iconv is setup and the APR_ICONV_PATH environment variable does
exist pointing to the correct location.
E:\>echo %APR_ICONV_PATH%
C:\Program Files\Subversion\iconv

and unfortunately I just found that using the TSVN libapr.dll only
causes it to fail on different checkouts.

-  Jody

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: svn.exe crashes in libapr.dll when performing a checkout on specific set of data.

Posted by "D.J. Heap" <dj...@gmail.com>.
On 9/20/06, Jody Shumaker <jo...@gmail.com> wrote:
> After updating to svn 1.4.0 using either the setup exe or the zip on
> the website, svn.exe is crashing whenever I checkout a specific
> directory in my repository. Doesn't matter which pc I'm running on and
> I confirmed the libapr.dll is not corrupt,
> 7c345da2a199821bfd3af189b278e5ca *libapr.dll
>
> When checking out this one directory, of unfortunately data I can't
> give out, svn.exe crashes:
> Faulting application svn.exe, version 1.4.0.21228, faulting module
> libapr.dll, version 0.9.12.0, fault address 0x00010f67.
>
> It seems to be crashing in the cleanup at the end of the run as
> crashes after it has checked out and left the working copy in a good
> state. I also found that if I take the libapr built for TSVN,
> libapr_tsvn.dll and rename it to libapr.dll and replace the one that
> came with svn 1.4.0 with this version, it will then work just fine.
> For now this gives me a workaround I can use, but not an ideal
> solution.
>
> minidump saved from attaching vs2005 debugger is available at
> http://mysite.verizon.net/jodys7/svn.dmp If there's anything else that
> would be useful for me to provide short of figuring out how to build
> subversion in debug mode, or providing the repository data that I
> can't, please let me know.
>
> - Jody
>


Here is the full call stack from the minidump:

>	libapr.dll!find_entry
 	libapr.dll!apr_hash_get
 	svn.exe!get_xlate_handle_node
 	svn.exe!svn_cmdline_cstring_from_utf8
 	svn.exe!svn_cmdline_printf
 	svn.exe!notify
 	svn.exe!svn_client_export3
 	svn.exe!svn_cl__export
 	svn.exe!main
 	svn.exe!_mainCRTStartup
 	kernel32.dll!_BaseProcessStart@4

It appears that you were doing an export, not a checkout?

Do you have apr-iconv from the zip installed and APR_ICONV_PATH
pointing to it?   It shouldn't crash, of course, but it would be
interesting to know if that was the reason.

The crash occurs on line 242 of apr/tables/apr_hash.c.

DJ

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org