On Wed, Aug 25, 2010 at 11:34 AM, Stefan Fuhrmann
<stefanfuhrm...@alice-dsl.de> wrote:
> Johan Corveleyn wrote:
>> However, I also experienced a crash of svnserve, for both "svn log"
>> and "svn blame" of a big file with >2000 revisions (so this is quite
>> an extreme case). See both .log files in attachment. Something goes
>> wrong in svn_fs_fs__id_deserialize, during processing of
>> fs_history_prev.
>>
>
> Hm, I couldn't reproduce that problem so far even with large
> repositories. Could you rerun your tests in debug mode?
> The stack trace should be more reliable then (e.g. "data_len"
> on level #3 is either bogus or the reason for the crash).

Ok, here they are in attachment (one for blame and one for log).
Reproduced with a debug build (of branches/performa...@now), on the
same machine.

Crashed with both "blame" and "log" of large file with large number of
revisions (but I don't know if that's actually relevant, maybe it's
not related). With blame it crashed much sooner as my release build.

Cheers,
-- 
Johan
Process info:
Cmd line: 
C:\research\svn\client_build\svn_branch_performance\dist\bin\svnserve.exe -d -r 
c:/research/svn/experiment/repos
Working Dir: C:\research\svn
Version:  1.7.0 (dev build), compiled Aug 19 2010, 00:50:40
Platform: Windows OS version 5.1 build 2600 Service Pack 3

Exception: ACCESS_VIOLATION

Registers:
eax=dc307ce7 ebx=00d31370 ecx=00db54eb edx=00db54eb esi=00f0f8d0 edi=00f0f930
eip=003bb02c esp=00f0f8b4 ebp=00f0f8b4 efl=00010216
cs=001b  ss=0023  ds=0023  es=0023  fs=003b  gs=0000

Stacktrace:
#1  0x003bb02c in svn_fs_fs__id_deserialize()
        buffer = 0x00db54e7
        id = 
#2  0x003bb5ca in svn_fs_fs__noderev_deserialize()
        buffer = 0x00db54e8
        noderev_p = 
        noderev = 
#3  0x003bfaa9 in svn_fs_fs__dag_deserialize()
        out = 
        data = 
        data_len = 1e0
        pool = 
        node = 
#4  0x004bcdfe in membuffer_cache_get()
        cache = 
        key = 
        key_len = 31
        item = 
        deserializer = 
        pool = 
        buffer = 0x00db5308 ""
        group_index = faa
        to_find = 
        entry = 
#5  0x004bcb64 in svn_membuffer_cache_get()
        svn_err__temp = 
        value_p = 
        found = 0x00f0f9e8
        cache_void = 0x00d6bc40
        key = 
        pool = 
        full_key = 0x00db52b8
        cache = 
        full_key_len = 31
#6  0x004bdc63 in svn_cache__get()
        value_p = 
        found = 0x00f0f9e8
        cache = 
        key = 
        pool = 
#7  0x003b1188 in dag_node_cache_get()
        svn_err__temp = 
        node_p = 
        root = 
        path = 
        pool = 
        node = 
        cache = 
        key = 
        found = 0
#8  0x003b1436 in open_path()
        svn_err__temp = 
        inherit = 
        err = 
        copy_path = 
        cached_node = 
        entry = 0x00db5258 "s9server"
        next = 
        child = 
        parent_path_p = 
        root = 
        path = 
        flags = 0
        txn_id = 
        pool = 
        canon_path = 
        fs = 
        parent_path = 
        rest = 
        path_so_far = 
        here = 
#9  0x003b85b3 in history_prev()
        svn_err__temp = 
        baton = 0x00f0fbb4
        pool = 
        node = 
        path = 
        commit_rev = cccccccc
        retpool = 
        retry = 0
        copyroot_path = 
        fhd = 
        history = 
        revision = a1d1
        fs = 
        src_path = 
        parent_path = 
        copyroot_rev = cccccccc
        commit_path = 
        src_rev = cccccccc
        dst_rev = cccccccc
        root = 
        reported = 1
        prev_history = 
        args = 
#10  0x003b83d0 in fs_history_prev()
        svn_err__temp = 
        args = 
        prev_history_p = 
        history = 
        cross_copies = 1
        pool = 
        fhd = 
        fs = 
        prev_history = 
#11  0x00395c26 in svn_fs_history_prev()
        prev_history_p = 
        history = 
        cross_copies = 1
        pool = 
#12  0x00631c86 in find_interesting_revisions()
        svn_err__temp = 
        tmp_pool = 
        path_rev = 
        path_revisions = 
        repos = 
        path = 
        start = 0
        end = 17831
        include_merged_revisions = 0
        mark_as_merged = 0
        duplicate_path_revs = 
        authz_read_func = 
        authz_read_baton = 0x00f0fe9c
        pool = 
        history = 
        iter_pool = 
        last_pool = 
        root = 
        kind = 
#13  0x00631706 in svn_repos_get_file_revs2()
        svn_err__temp = 
        repos = 
        path = 
        start = 0
        end = 17831
        include_merged_revisions = 0
        authz_read_func = 
        authz_read_baton = 0x00f0fe9c
        handler = 
        handler_baton = 0x00f0fdb0
        pool = 
        duplicate_path_revs = 
        mainline_pos = -858993460
        merged_path_revisions = 
        merged_pos = -858993460
        sb = 
        mainline_path_revisions = 
#14  0x0040d45a in get_file_revs()
        conn = 
        pool = 
        params = 
        baton = 0x00f0fe9c
        full_path = 
        path = 
        err = 
        include_merged_revisions = 0
        b = 
        write_err = 
        include_merged_revs_param = 0
        frb = 
        start_rev = 0
        end_rev = 17831
#15  0x004157ea in svn_ra_svn_handle_commands2()
        conn = 
        pool = 
        commands = 
        baton = 0x00f0fe9c
        error_on_disconnect = 0
        subpool = 
        iterpool = 
        err = 
        cmdname = 
        write_err = 
        params = 
        cmd_hash = 
        command = 
#16  0x00410e9b in serve()
        conn = 
        params = 
        pool = 
        warn_baton = 
        err = 
        uuid = 
        client_string = 
        cap_log = 
        client_url = 
        ra_client_string = 
        b = 
        ver = 2
        io_err = 
        cap_words = 
        caplist = 
#17  0x004035cb in serve_thread()
        tid = 
        data = 0x00d2e428
        d = 
#18  0x6eedee40 in dummy_worker()
        opaque = 0x00d2e438
        thd = 
#19  0x1023dfd3 in beginthreadex()
#20  0x1023df69 in beginthreadex()
#21  0x7c80b729 in GetModuleFileNameA()


Loaded modules:
0x00400000  
C:\research\svn\client_build\svn_branch_performance\dist\bin\svnserve.exe 
(1.7.0.0, 229376 bytes)
0x7c900000  C:\Windows\system32\ntdll.dll (5.1.2600.5755, 729088 bytes)
0x7c800000  C:\Windows\system32\kernel32.dll (5.1.2600.5781, 1007616 bytes)
0x77dd0000  C:\Windows\system32\advapi32.dll (5.1.2600.5755, 634880 bytes)
0x77e70000  C:\Windows\system32\rpcrt4.dll (5.1.2600.5795, 598016 bytes)
0x77fe0000  C:\Windows\system32\secur32.dll (5.1.2600.5834, 69632 bytes)
0x71ab0000  C:\Windows\system32\ws2_32.dll (5.1.2600.5512, 94208 bytes)
0x77c10000  C:\Windows\system32\msvcrt.dll (7.0.2600.5512, 360448 bytes)
0x71aa0000  C:\Windows\system32\ws2help.dll (5.1.2600.5512, 32768 bytes)
0x6eec0000  
C:\research\svn\client_build\svn_branch_performance\dist\bin\libapr-1.dll 
(1.3.8.0, 208896 bytes)
0x71a50000  C:\Windows\system32\mswsock.dll (5.1.2600.5625, 258048 bytes)
0x10200000  
C:\Windows\Winsxs\x86_Microsoft.VC90.DebugCRT_1fc8b3b9a1e18e3b_9.0.30729.1_x-ww_f863c71f\msvcr90d.dll
 (9.0.30729.1, 1191936 bytes)
0x10000000  
C:\research\svn\client_build\svn_branch_performance\dist\bin\libsvn_delta-1.dll 
(1.7.0.0, 262144 bytes)
0x6ee60000  
C:\research\svn\client_build\svn_branch_performance\dist\bin\libaprutil-1.dll 
(1.3.9.0, 282624 bytes)
0x6ee50000  
C:\research\svn\client_build\svn_branch_performance\dist\bin\libapriconv-1.dll 
(1.2.1.0, 45056 bytes)
0x00440000  
C:\research\svn\client_build\svn_branch_performance\dist\bin\libsvn_subr-1.dll 
(1.7.0.0, 1875968 bytes)
0x7c9c0000  C:\Windows\system32\shell32.dll (6.0.2900.6018, 8482816 bytes)
0x77f10000  C:\Windows\system32\gdi32.dll (5.1.2600.5698, 299008 bytes)
0x7e410000  C:\Windows\system32\user32.dll (5.1.2600.5512, 593920 bytes)
0x77f60000  C:\Windows\system32\shlwapi.dll (6.0.2900.5912, 483328 bytes)
0x774e0000  C:\Windows\system32\ole32.dll (5.1.2600.5512, 1298432 bytes)
0x77a80000  C:\Windows\system32\crypt32.dll (5.131.2600.5512, 610304 bytes)
0x77b20000  C:\Windows\system32\msasn1.dll (5.1.2600.5875, 73728 bytes)
0x00390000  
C:\research\svn\client_build\svn_branch_performance\dist\bin\libsvn_fs-1.dll 
(1.7.0.0, 413696 bytes)
0x00620000  
C:\research\svn\client_build\svn_branch_performance\dist\bin\libsvn_repos-1.dll 
(1.7.0.0, 368640 bytes)
0x76390000  C:\Windows\system32\imm32.dll (5.1.2600.5512, 118784 bytes)
0x773d0000  
C:\Windows\Winsxs\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.2600.5512_x-ww_35d4ce83\comctl32.dll
 (6.0.2900.5512, 1060864 bytes)
0x5d090000  C:\Windows\system32\comctl32.dll (5.82.2900.5512, 630784 bytes)
0x662b0000  C:\Windows\system32\hnetcfg.dll (5.1.2600.5512, 360448 bytes)
0x71a90000  C:\Windows\system32\wshtcpip.dll (5.1.2600.5512, 32768 bytes)
0x59a60000  C:\Windows\system32\dbghelp.dll (5.1.2600.5512, 659456 bytes)
0x77c00000  C:\Windows\system32\version.dll (5.1.2600.5512, 32768 bytes)
0x76bf0000  C:\Windows\system32\psapi.dll (5.1.2600.5512, 45056 bytes)
Process info:
Cmd line: 
C:\research\svn\client_build\svn_branch_performance\dist\bin\svnserve.exe -d -r 
c:/research/svn/experiment/repos
Working Dir: C:\research\svn
Version:  1.7.0 (dev build), compiled Aug 19 2010, 00:50:40
Platform: Windows OS version 5.1 build 2600 Service Pack 3

Exception: ACCESS_VIOLATION

Registers:
eax=da5ab0ef ebx=096ed028 ecx=00d980f3 edx=00d980f3 esi=00f0f7b0 edi=00f0f810
eip=003bb02c esp=00f0f794 ebp=00f0f794 efl=00010212
cs=001b  ss=0023  ds=0023  es=0023  fs=003b  gs=0000

Stacktrace:
#1  0x003bb02c in svn_fs_fs__id_deserialize()
        buffer = 0x00d980ef
        id = 
#2  0x003bb5ca in svn_fs_fs__noderev_deserialize()
        buffer = 0x00d980f0
        noderev_p = 
        noderev = 
#3  0x003bfaa9 in svn_fs_fs__dag_deserialize()
        out = 
        data = 
        data_len = 1e0
        pool = 
        node = 
#4  0x004bcdfe in membuffer_cache_get()
        cache = 
        key = 
        key_len = 31
        item = 
        deserializer = 
        pool = 
        buffer = 0x00d97f10 ""
        group_index = faa
        to_find = 
        entry = 
#5  0x004bcb64 in svn_membuffer_cache_get()
        svn_err__temp = 
        value_p = 
        found = 0x00f0f8c8
        cache_void = 0x00d46690
        key = 
        pool = 
        full_key = 0x00d97ec0
        cache = 
        full_key_len = 31
#6  0x004bdc63 in svn_cache__get()
        value_p = 
        found = 0x00f0f8c8
        cache = 
        key = 
        pool = 
#7  0x003b1188 in dag_node_cache_get()
        svn_err__temp = 
        node_p = 
        root = 
        path = 
        pool = 
        node = 
        cache = 
        key = 
        found = 0
#8  0x003b1436 in open_path()
        svn_err__temp = 
        inherit = 
        err = 
        copy_path = 
        cached_node = 
        entry = 0x00d97e60 "s9server"
        next = 
        child = 
        parent_path_p = 
        root = 
        path = 
        flags = 0
        txn_id = 
        pool = 
        canon_path = 
        fs = 
        parent_path = 
        rest = 
        path_so_far = 
        here = 
#9  0x003b85b3 in history_prev()
        svn_err__temp = 
        baton = 0x00f0fa94
        pool = 
        node = 
        path = 
        commit_rev = cccccccc
        retpool = 
        retry = 0
        copyroot_path = 
        fhd = 
        history = 
        revision = a1d1
        fs = 
        src_path = 
        parent_path = 
        copyroot_rev = cccccccc
        commit_path = 
        src_rev = cccccccc
        dst_rev = cccccccc
        root = 
        reported = 1
        prev_history = 
        args = 
#10  0x003b83d0 in fs_history_prev()
        svn_err__temp = 
        args = 
        prev_history_p = 
        history = 
        cross_copies = 1
        pool = 
        fhd = 
        fs = 
        prev_history = 
#11  0x00395c26 in svn_fs_history_prev()
        prev_history_p = 
        history = 
        cross_copies = 1
        pool = 
#12  0x00629d61 in get_history()
        svn_err__temp = 
        info = 
        fs = 
        strict = 0
        authz_read_func = 
        authz_read_baton = 0x00f0fe9c
        start = 0
        pool = 
        subpool = 
        path = 
        history_root = 
        hist = 
#13  0x00629cf9 in check_history()
        changed = 0x00f0fbf4
        info = 
        fs = 
        current = a1d1
        strict = 0
        authz_read_func = 
        authz_read_baton = 0x00f0fe9c
        start = 0
        pool = 
#14  0x00629736 in do_logs()
        svn_err__temp = 
        info = 
        changed = 1
        fs = 
        paths = 
        hist_start = 0
        hist_end = 17831
        limit = 0
        discover_changed_paths = 0
        strict_node_history = 0
        include_merged_revisions = 0
        revprops = 
        descending_order = 1
        receiver = 
        receiver_baton = 0x00f0fd20
        authz_read_func = 
        authz_read_baton = 0x00f0fe9c
        pool = 
        iterpool = 
        any_histories_left = 0
        histories = 
        rev_mergeinfo = 
        revs = 
        i = 0
        current = a1d1
        send_count = 0
#15  0x00628c09 in svn_repos_get_logs4()
        repos = 
        paths = 
        start = 0
        end = 17831
        limit = 0
        discover_changed_paths = 0
        strict_node_history = 0
        include_merged_revisions = 0
        revprops = 
        authz_read_func = 
        authz_read_baton = 0x00f0fe9c
        receiver = 
        receiver_baton = 0x00f0fd20
        pool = 
        head = 17831
        fs = 
        descending_order = 1
#16  0x0040b738 in log_cmd()
        conn = 
        pool = 
        params = 
        baton = 0x00f0fe9c
        full_path = 
        lb = 
        full_paths = 
        err = 
        include_merged_revisions = 0
        limit = 0
        b = 
        write_err = 
        paths = 
        revprop_items = 
        changed_paths = 0
        include_merged_revs_param = 0
        elt = 
        i = 1
        start_rev = 17831
        end_rev = 0
        strict_node = 0
        revprop_word = 0x00d8aa10 "revprops"
        revprops = 
#17  0x004157ea in svn_ra_svn_handle_commands2()
        conn = 
        pool = 
        commands = 
        baton = 0x00f0fe9c
        error_on_disconnect = 0
        subpool = 
        iterpool = 
        err = 
        cmdname = 
        write_err = 
        params = 
        cmd_hash = 
        command = 
#18  0x00410e9b in serve()
        conn = 
        params = 
        pool = 
        warn_baton = 
        err = 
        uuid = 
        client_string = 
        cap_log = 
        client_url = 
        ra_client_string = 
        b = 
        ver = 2
        io_err = 
        cap_words = 
        caplist = 
#19  0x004035cb in serve_thread()
        tid = 
        data = 0x00dc5da0
        d = 
#20  0x6eedee40 in dummy_worker()
        opaque = 0x00dc5db0
        thd = 
#21  0x1023dfd3 in beginthreadex()
#22  0x1023df69 in beginthreadex()
#23  0x7c80b729 in GetModuleFileNameA()


Loaded modules:
0x00400000  
C:\research\svn\client_build\svn_branch_performance\dist\bin\svnserve.exe 
(1.7.0.0, 229376 bytes)
0x7c900000  C:\Windows\system32\ntdll.dll (5.1.2600.5755, 729088 bytes)
0x7c800000  C:\Windows\system32\kernel32.dll (5.1.2600.5781, 1007616 bytes)
0x77dd0000  C:\Windows\system32\advapi32.dll (5.1.2600.5755, 634880 bytes)
0x77e70000  C:\Windows\system32\rpcrt4.dll (5.1.2600.5795, 598016 bytes)
0x77fe0000  C:\Windows\system32\secur32.dll (5.1.2600.5834, 69632 bytes)
0x71ab0000  C:\Windows\system32\ws2_32.dll (5.1.2600.5512, 94208 bytes)
0x77c10000  C:\Windows\system32\msvcrt.dll (7.0.2600.5512, 360448 bytes)
0x71aa0000  C:\Windows\system32\ws2help.dll (5.1.2600.5512, 32768 bytes)
0x6eec0000  
C:\research\svn\client_build\svn_branch_performance\dist\bin\libapr-1.dll 
(1.3.8.0, 208896 bytes)
0x71a50000  C:\Windows\system32\mswsock.dll (5.1.2600.5625, 258048 bytes)
0x10200000  
C:\Windows\Winsxs\x86_Microsoft.VC90.DebugCRT_1fc8b3b9a1e18e3b_9.0.30729.1_x-ww_f863c71f\msvcr90d.dll
 (9.0.30729.1, 1191936 bytes)
0x10000000  
C:\research\svn\client_build\svn_branch_performance\dist\bin\libsvn_delta-1.dll 
(1.7.0.0, 262144 bytes)
0x6ee60000  
C:\research\svn\client_build\svn_branch_performance\dist\bin\libaprutil-1.dll 
(1.3.9.0, 282624 bytes)
0x6ee50000  
C:\research\svn\client_build\svn_branch_performance\dist\bin\libapriconv-1.dll 
(1.2.1.0, 45056 bytes)
0x00440000  
C:\research\svn\client_build\svn_branch_performance\dist\bin\libsvn_subr-1.dll 
(1.7.0.0, 1875968 bytes)
0x7c9c0000  C:\Windows\system32\shell32.dll (6.0.2900.6018, 8482816 bytes)
0x77f10000  C:\Windows\system32\gdi32.dll (5.1.2600.5698, 299008 bytes)
0x7e410000  C:\Windows\system32\user32.dll (5.1.2600.5512, 593920 bytes)
0x77f60000  C:\Windows\system32\shlwapi.dll (6.0.2900.5912, 483328 bytes)
0x774e0000  C:\Windows\system32\ole32.dll (5.1.2600.5512, 1298432 bytes)
0x77a80000  C:\Windows\system32\crypt32.dll (5.131.2600.5512, 610304 bytes)
0x77b20000  C:\Windows\system32\msasn1.dll (5.1.2600.5875, 73728 bytes)
0x00390000  
C:\research\svn\client_build\svn_branch_performance\dist\bin\libsvn_fs-1.dll 
(1.7.0.0, 413696 bytes)
0x00620000  
C:\research\svn\client_build\svn_branch_performance\dist\bin\libsvn_repos-1.dll 
(1.7.0.0, 368640 bytes)
0x76390000  C:\Windows\system32\imm32.dll (5.1.2600.5512, 118784 bytes)
0x773d0000  
C:\Windows\Winsxs\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.2600.5512_x-ww_35d4ce83\comctl32.dll
 (6.0.2900.5512, 1060864 bytes)
0x5d090000  C:\Windows\system32\comctl32.dll (5.82.2900.5512, 630784 bytes)
0x662b0000  C:\Windows\system32\hnetcfg.dll (5.1.2600.5512, 360448 bytes)
0x71a90000  C:\Windows\system32\wshtcpip.dll (5.1.2600.5512, 32768 bytes)
0x59a60000  C:\Windows\system32\dbghelp.dll (5.1.2600.5512, 659456 bytes)
0x77c00000  C:\Windows\system32\version.dll (5.1.2600.5512, 32768 bytes)
0x76bf0000  C:\Windows\system32\psapi.dll (5.1.2600.5512, 45056 bytes)

Reply via email to