Re: Segmentation fault in git apply

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Jan 14, 2015 at 10:58 AM, Michael Blume <blume.mike@xxxxxxxxx> wrote:
> On Wed, Jan 14, 2015 at 10:48 AM, Michael Blume <blume.mike@xxxxxxxxx> wrote:
>> On Wed, Jan 14, 2015 at 10:44 AM, Michael Blume <blume.mike@xxxxxxxxx> wrote:
>>> On Wed, Jan 14, 2015 at 10:40 AM, Michael Blume <blume.mike@xxxxxxxxx> wrote:
>>>> On Wed, Jan 14, 2015 at 10:20 AM, Michael Blume <blume.mike@xxxxxxxxx> wrote:
>>>>> This is a mac with a fresh build of git from pu branch, commit 53b80d0.
>>>>>
>>>>> With my gitconfig looking like
>>>>>
>>>>> [user]
>>>>>     email = blume.mike@xxxxxxxxx
>>>>>     name = Michael Blume
>>>>> [apply]
>>>>>     whitespace = fix
>>>>> [core]
>>>>>     whitespace = fix,trailing-space,space-before-tab, tab-in-indent, tabwidth=4
>>>>>
>>>>> If I run
>>>>> git clone git@xxxxxxxxxx:MichaelBlume/clojure.git
>>>>> cd clojure
>>>>> git checkout origin/rebase-start
>>>>> git rebase origin/rebase-base
>>>>>
>>>>> I get
>>>>>
>>>>> src/jvm/clojure/lang/Compiler.java                          |  26
>>>>> +++++++++++++++++---------
>>>>>  test/clojure/test_clojure/compilation.clj                   |  33
>>>>> ++++++++++++++++++++++++++++++++-
>>>>>  test/clojure/test_clojure/compilation/examples_clj_1561.clj | 121
>>>>> +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>>>>>  3 files changed, 170 insertions(+), 10 deletions(-)
>>>>>  create mode 100644 test/clojure/test_clojure/compilation/examples_clj_1561.clj
>>>>> First, rewinding head to replay your work on top of it...
>>>>> Applying: CLJ-1603 - add reducible cycle, iterate, repeat
>>>>> Applying: CLJ-1515 Reify range
>>>>> Applying: CLJ-1499 Direct iterators for PersistentHashMap,
>>>>> APersistentSet, PersistentQueue, and PersistentStructMap, and records.
>>>>> Added new IMapIterable interface for key and val iterators.
>>>>> Applying: CLJ-1602 Make keys and vals return Iterable result
>>>>> Applying: fix AOT bug preventing overriding of clojure.core functions
>>>>> Applying: catch multiple rest forms
>>>>> Applying: zipmap using iterators and transient maps
>>>>> Applying: Define merge/merge-with after reduce has loaded
>>>>> Applying: very simple test of the merge function
>>>>> Applying: Support get on arbitrary java.util.List instances
>>>>> Applying: CLJ-1451 add take-until
>>>>> Applying: CLJ-1606 - complete eduction's xform without completing outer rfn
>>>>> Applying: add unrolled vector implementation
>>>>> Applying: add transient? predicate
>>>>> Applying: fix emitted line numbers
>>>>> Using index info to reconstruct a base tree...
>>>>> M src/jvm/clojure/lang/Compiler.java
>>>>> Falling back to patching base and 3-way merge...
>>>>> Auto-merging src/jvm/clojure/lang/Compiler.java
>>>>> Applying: just use a not
>>>>> Applying: trailing whitespace
>>>>> Applying: don't mix tabs/spaces in clojure.xml/emit-element
>>>>> Applying: avoid mixing tabs with spaces in clojure core code
>>>>> Applying: don't optimize for defrecord lookup if keyword is namespaced
>>>>> Applying: CLJ-1572 - Extend CollReduce to IReduceInit for supported arity
>>>>> Applying: unrolled impls for maps
>>>>> Applying: CLJ-703: Remove flush and sync calls when writing class files.
>>>>> Applying: CLJ-1078: Add queue and queue? to clojure.core
>>>>> Applying: make RT.boundedLength lazier
>>>>> Applying: first try for adding compare
>>>>> Applying: Fix for #CLJ-1565
>>>>> Applying: CLJ-1074: Read +/- Infinity and NaN
>>>>> Applying: Fix CLJ-1074 for EdnReader too, see
>>>>> eaeda2e7bf2697e565decdf14a8a99fbf8588c57
>>>>> Applying: add get-and-set! to expose AtomicReference.getAndSet() for atoms
>>>>> Applying: CLJ-1472 Locking macro without explicit monitor-enter, monitor-exit
>>>>> Applying: CLJ-1449: Add starts-with? ends-with? contains? to clojure.string
>>>>> Applying: if test expr of an if statement is a literal, don't emit the
>>>>> runtime test
>>>>> Applying: evaluate def symbol metadata only once
>>>>> Applying: CLJ-1295: Speed up dissoc on array-maps
>>>>> Applying: some throwing
>>>>> Applying: don't pass offset to ArrayChunk
>>>>> Applying: make EMPTY accessible
>>>>> Applying: add handy create methods
>>>>> Applying: regenerate
>>>>> Applying: regenerate
>>>>> /Users/michael.blume/libexec/git-core/git-am: line 854: 92059
>>>>> Segmentation fault: 11  git apply --index "$dotest/patch" > /dev/null
>>>>> 2>&1
>>>>> /Users/michael.blume/workspace/clojure/.git/rebase-apply/patch:13: tab
>>>>> in indent.
>>>>>    IPersistentVector v = (IPersistentVector) asTransient().conj(val)
>>>>> /Users/michael.blume/workspace/clojure/.git/rebase-apply/patch:14: tab
>>>>> in indent.
>>>>>    .persistent();
>>>>> /Users/michael.blume/workspace/clojure/.git/rebase-apply/patch:15: tab
>>>>> in indent.
>>>>>    return (IPersistentVector) ((IObj) v).withMeta(meta);
>>>>> /Users/michael.blume/workspace/clojure/.git/rebase-apply/patch:25: tab
>>>>> in indent.
>>>>> ITransientCollection coll = PersistentVector.EMPTY
>>>>> /Users/michael.blume/workspace/clojure/.git/rebase-apply/patch:27: tab
>>>>> in indent.
>>>>> return (ITransientVector) coll.conj(e0).conj(e1).conj(e2)
>>>>> warning: squelched 1 whitespace error
>>>>> warning: 6 lines add whitespace errors.
>>>>> Using index info to reconstruct a base tree...
>>>>> M src/jvm/clojure/lang/PersistentUnrolledVector.java
>>>>> <stdin>:13: tab in indent.
>>>>>    IPersistentVector v = (IPersistentVector) asTransient().conj(val)
>>>>> <stdin>:14: tab in indent.
>>>>>    .persistent();
>>>>> <stdin>:15: tab in indent.
>>>>>    return (IPersistentVector) ((IObj) v).withMeta(meta);
>>>>> <stdin>:25: tab in indent.
>>>>> ITransientCollection coll = PersistentVector.EMPTY
>>>>> <stdin>:27: tab in indent.
>>>>> return (ITransientVector) coll.conj(e0).conj(e1).conj(e2)
>>>>> warning: squelched 1 whitespace error
>>>>> warning: 6 lines applied after fixing whitespace errors.
>>>>> Falling back to patching base and 3-way merge...
>>>>> fatal: Unable to create
>>>>> '/Users/michael.blume/workspace/clojure/.git/index.lock': File exists.
>>>>>
>>>>> If no other git process is currently running, this probably means a
>>>>> git process crashed in this repository earlier. Make sure no other git
>>>>> process is running and remove the file manually to continue.
>>>>> Failed to merge in the changes.
>>>>> Patch failed at 0041 regenerate
>>>>> The copy of the patch that failed is found in:
>>>>>    /Users/michael.blume/workspace/clojure/.git/rebase-apply/patch
>>>>>
>>>>> When you have resolved this problem, run "git rebase --continue".
>>>>> If you prefer to skip this patch, run "git rebase --skip" instead.
>>>>> To check out the original branch and stop rebasing, run "git rebase --abort".
>>>>
>>>> Same problem, exists on master, checking 2.2.2
>>> Exists in 2.2.2, checking 2.0.0
>> Ok, problem exists in 2.0.0 but not in 1.8.0, bisecting...
> Hmm, sorry, no, this is strange, problem actually does exist in 1.8.0
> but waits until a later commit and has somewhat different output but
> still looks like a crash in git-apply...
>
> First, rewinding head to replay your work on top of it...
> Applying: CLJ-1603 - add reducible cycle, iterate, repeat
> Applying: CLJ-1515 Reify range
> Applying: CLJ-1499 Direct iterators for PersistentHashMap,
> APersistentSet, PersistentQueue, and PersistentStructMap, and records.
> Added new IMapIterable interface for key and val iterators.
> Applying: CLJ-1602 Make keys and vals return Iterable result
> Applying: fix AOT bug preventing overriding of clojure.core functions
> Applying: catch multiple rest forms
> Applying: zipmap using iterators and transient maps
> Applying: Define merge/merge-with after reduce has loaded
> Applying: very simple test of the merge function
> Applying: Support get on arbitrary java.util.List instances
> Applying: CLJ-1451 add take-until
> Applying: CLJ-1606 - complete eduction's xform without completing outer rfn
> Applying: add unrolled vector implementation
> Applying: add transient? predicate
> Applying: fix emitted line numbers
> Using index info to reconstruct a base tree...
> M src/jvm/clojure/lang/Compiler.java
> Falling back to patching base and 3-way merge...
> Auto-merging src/jvm/clojure/lang/Compiler.java
> Applying: just use a not
> Applying: trailing whitespace
> Applying: don't mix tabs/spaces in clojure.xml/emit-element
> Applying: avoid mixing tabs with spaces in clojure core code
> Applying: don't optimize for defrecord lookup if keyword is namespaced
> Applying: CLJ-1572 - Extend CollReduce to IReduceInit for supported arity
> Applying: unrolled impls for maps
> Applying: CLJ-703: Remove flush and sync calls when writing class files.
> Applying: CLJ-1078: Add queue and queue? to clojure.core
> Applying: make RT.boundedLength lazier
> Applying: first try for adding compare
> Applying: Fix for #CLJ-1565
> Applying: CLJ-1074: Read +/- Infinity and NaN
> Applying: Fix CLJ-1074 for EdnReader too, see
> eaeda2e7bf2697e565decdf14a8a99fbf8588c57
> Applying: add get-and-set! to expose AtomicReference.getAndSet() for atoms
> Applying: CLJ-1472 Locking macro without explicit monitor-enter, monitor-exit
> Applying: CLJ-1449: Add starts-with? ends-with? contains? to clojure.string
> Applying: if test expr of an if statement is a literal, don't emit the
> runtime test
> Applying: evaluate def symbol metadata only once
> Applying: CLJ-1295: Speed up dissoc on array-maps
> Applying: some throwing
> Applying: don't pass offset to ArrayChunk
> Applying: make EMPTY accessible
> Applying: add handy create methods
> Applying: regenerate
> Applying: regenerate
> Applying: fix handling of key meta in assoc
> Applying: don't check mapequivalence
> Applying: add editablemap
> Applying: use an arraymap in persistenthashset
> Applying: no, use an unrolledmap
> Applying: use the new stuff
> Applying: CLJ-1613: evaluate :or defaults in enclosing scope in map
> destructuring
> Applying: CLJ-1615 ensure transient set "keys" and "values" have
> consistent metadata
> Applying: fix the unrolledmap transient entryat thing
> /Users/michael.blume/libexec/git-core/git-am: line 811: 59793 Abort
> trap: 6           git apply --index "$dotest/patch" > /dev/null 2>&1
> /Users/michael.blume/workspace/clojure/.git/rebase-apply/patch:10: tab
> in indent.
> IMapEntry doEntryAt(Object key) {
> /Users/michael.blume/workspace/clojure/.git/rebase-apply/patch:11: tab
> in indent.
>    int h = Util.hasheq(key);
> /Users/michael.blume/workspace/clojure/.git/rebase-apply/patch:12: tab
> in indent.
>    int idx = indexOf(h, key);
> /Users/michael.blume/workspace/clojure/.git/rebase-apply/patch:13: tab
> in indent.
>    switch (idx) {
> /Users/michael.blume/workspace/clojure/.git/rebase-apply/patch:14: tab
> in indent.
>    case 0:
> warning: squelched 15 whitespace errors
> warning: 20 lines add whitespace errors.
> Using index info to reconstruct a base tree...
> M src/jvm/clojure/lang/PersistentUnrolledMap.java
> <stdin>:10: tab in indent.
> IMapEntry doEntryAt(Object key) {
> <stdin>:11: tab in indent.
>    int h = Util.hasheq(key);
> <stdin>:12: tab in indent.
>    int idx = indexOf(h, key);
> <stdin>:13: tab in indent.
>    switch (idx) {
> <stdin>:14: tab in indent.
>    case 0:
> warning: squelched 15 whitespace errors
> warning: 20 lines applied after fixing whitespace errors.
> Falling back to patching base and 3-way merge...
> fatal: Unable to create
> '/Users/michael.blume/workspace/clojure/.git/index.lock': File exists.
>
> If no other git process is currently running, this probably means a
> git process crashed in this repository earlier. Make sure no other git
> process is running and remove the file manually to continue.
> Failed to merge in the changes.
> Patch failed at 0050 fix the unrolledmap transient entryat thing
> The copy of the patch that failed is found in:
>    /Users/michael.blume/workspace/clojure/.git/rebase-apply/patch
>
> When you have resolved this problem, run "git rebase --continue".
> If you prefer to skip this patch, run "git rebase --skip" instead.
> To check out the original branch and stop rebasing, run "git rebase --abort".
Ok, looks like this is not purely a mac bug, that's good I guess:

[11:08][ubuntu@saucy-server:~/dev/clojure((f70fdba...))]$ git rebase
origin/rebase-base
 src/jvm/clojure/lang/Compiler.java                          |  26
+++++++++++++++++---------
 test/clojure/test_clojure/compilation.clj                   |  33
++++++++++++++++++++++++++++++++-
 test/clojure/test_clojure/compilation/examples_clj_1561.clj | 121
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 170 insertions(+), 10 deletions(-)
 create mode 100644 test/clojure/test_clojure/compilation/examples_clj_1561.clj
First, rewinding head to replay your work on top of it...
Applying: CLJ-1603 - add reducible cycle, iterate, repeat
Applying: CLJ-1515 Reify range
Applying: CLJ-1499 Direct iterators for PersistentHashMap,
APersistentSet, PersistentQueue, and PersistentStructMap, and records.
Added new IMapIterable interface for key and val iterators.
Applying: CLJ-1602 Make keys and vals return Iterable result
Applying: fix AOT bug preventing overriding of clojure.core functions
Applying: catch multiple rest forms
Applying: zipmap using iterators and transient maps
Applying: Define merge/merge-with after reduce has loaded
Applying: very simple test of the merge function
Applying: Support get on arbitrary java.util.List instances
Applying: CLJ-1451 add take-until
Applying: CLJ-1606 - complete eduction's xform without completing outer rfn
Applying: add unrolled vector implementation
Applying: add transient? predicate
Applying: fix emitted line numbers
Using index info to reconstruct a base tree...
M src/jvm/clojure/lang/Compiler.java
Falling back to patching base and 3-way merge...
Auto-merging src/jvm/clojure/lang/Compiler.java
Applying: just use a not
Applying: trailing whitespace
Applying: don't mix tabs/spaces in clojure.xml/emit-element
Applying: avoid mixing tabs with spaces in clojure core code
Applying: don't optimize for defrecord lookup if keyword is namespaced
Applying: CLJ-1572 - Extend CollReduce to IReduceInit for supported arity
Applying: unrolled impls for maps
Applying: CLJ-703: Remove flush and sync calls when writing class files.
Applying: CLJ-1078: Add queue and queue? to clojure.core
Applying: make RT.boundedLength lazier
Applying: first try for adding compare
Applying: Fix for #CLJ-1565
Applying: CLJ-1074: Read +/- Infinity and NaN
Applying: Fix CLJ-1074 for EdnReader too, see
eaeda2e7bf2697e565decdf14a8a99fbf8588c57
Applying: add get-and-set! to expose AtomicReference.getAndSet() for atoms
Applying: CLJ-1472 Locking macro without explicit monitor-enter, monitor-exit
Applying: CLJ-1449: Add starts-with? ends-with? contains? to clojure.string
Applying: if test expr of an if statement is a literal, don't emit the
runtime test
Applying: evaluate def symbol metadata only once
Applying: CLJ-1295: Speed up dissoc on array-maps
Applying: some throwing
Applying: don't pass offset to ArrayChunk
Applying: make EMPTY accessible
Applying: add handy create methods
Applying: regenerate
Applying: regenerate
*** Error in `git': malloc(): memory corruption: 0x0000000001d690a0 ***
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]