Bug 1063322

Summary: multiple occurrences of abrt-java-connector on command line causes double-free error at then end of process
Product: Red Hat Enterprise Linux 7 Reporter: Jakub Filak <jfilak>
Component: abrt-java-connectorAssignee: Jakub Filak <jfilak>
Status: CLOSED CURRENTRELEASE QA Contact: Lukáš Zachar <lzachar>
Severity: high Docs Contact:
Priority: unspecified    
Version: 7.0CC: ahughes, dbhole, ecohen, gshereme, jberan, jerboaa, jfilak, jvanek, omajid, ptisnovs, rvokal
Target Milestone: rc   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: abrt-java-connector-1.0.6-6.el7 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 1049011 Environment:
Last Closed: 2014-06-13 10:27:29 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1049011    
Bug Blocks: 1060198    
Attachments:
Description Flags
Patch fixing this bug none

Description Jakub Filak 2014-02-10 13:56:44 UTC
+++ This bug was initially created as a clone of Bug #1049011 +++

Description of problem:
GWT compiling on Fedora 20 using either OpenJDK 1.7 or Oracle JDK 1.7 causes a crash:

[INFO] Compiling module com.github.gwtbootstrap.Bootstrap
[INFO]    Compiling 6 permutations
[INFO]       Compiling permutation 0...
[INFO]       Compiling permutation 2...
[INFO]       Process output
[INFO]          Compiling
[INFO]             Compiling permutation 1...
[INFO]       Compiling permutation 3...
[INFO]       Compiling permutation 4...
[INFO]       Compiling permutation 5...
[INFO]    Compile of permutations succeeded
*** Error in `java': double free or corruption (out): 0x00007eff24015d60 ***
======= Backtrace: =========
/lib64/libc.so.6[0x342ce75d9f]
/lib64/libc.so.6[0x342ce7d098]
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.60-2.4.3.0.fc20.x86_64/jre-abrt/lib/amd64/server/libjvm.so(+0x8dcc3b)[0x7eff2b9d6c3b]
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.60-2.4.3.0.fc20.x86_64/jre-abrt/lib/amd64/server/libjvm.so(+0x5ce967)[0x7eff2b6c8967]
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.60-2.4.3.0.fc20.x86_64/jre-abrt/lib/amd64/server/libjvm.so(JVM_Halt+0x30)[0x7eff2b706b10]
[0x7eff210135ec]
<snip>

I've duplicated this in two GWT projects, GWT-Bootstrap and oVirt.

Does not crash on Fedora 19.

Version-Release number of selected component (if applicable):
Fedora 20

java-1.7.0-openjdk.x86_64                                          1:1.7.0.60-2.4.3.0.fc20                                 @fedora  
java-1.7.0-openjdk-devel.x86_64                                    1:1.7.0.60-2.4.3.0.fc20                                 @fedora  
java-1.7.0-openjdk-headless.x86_64                                 1:1.7.0.60-2.4.3.0.fc20                                 installed

GWT 2.5.1


How reproducible:
Always


Steps to Reproduce:
1. Setup a Fedora 20 vm
2. sudo yum install java-devel maven git
3. git clone https://github.com/gwtbootstrap/gwt-bootstrap.git
4. cd gwt-bootstrap
5. mvn package
<crash right after GWT compile>

Actual results:
crash right after GWT compile

Expected results:
no crash

Additional info:
Encountered while GWT compiling for multiple browsers., at the very end of the GWT compile. It doesn't crash if only compiling for one browser, but you'd only ever compile for one browser for development work, so it's not a valid workaround path.)

I first reported the bug against GWT: https://code.google.com/p/google-web-toolkit/issues/detail?id=8513

--- Additional comment from Deepak Bhole on 2014-01-06 20:12:14 CET ---

Is there a full stack trace and/or an hs_err file available?

--- Additional comment from Adam Litke on 2014-01-06 20:17:21 CET ---

I am also hitting this problem.

--- Additional comment from Greg Sheremeta on 2014-01-06 20:35:20 CET ---



--- Additional comment from Greg Sheremeta on 2014-01-06 20:36:08 CET ---



--- Additional comment from Greg Sheremeta on 2014-01-06 20:37:30 CET ---

I have the entire ABRT directory -- let me know if you need anything else. I can also ship you the VM if you want to duplicate (although it's pretty easy to dupe on your own VM)

--- Additional comment from Greg Sheremeta on 2014-01-06 20:43:46 CET ---

This may or may not be related, but Eclipse also crashes in Fedora 20, and it did not in 19.

Blogged here: http://eclipseandlinux.blogspot.com/2013/10/google-talk-plugin-presence-breaks.html
Discussed here: https://bugs.eclipse.org/bugs/show_bug.cgi?id=334466

--- Additional comment from Deepak Bhole on 2014-01-06 22:24:15 CET ---

Thanks Greg. The Eclipse issue appears to be unrelated.

Can you please provide a listing of what else is available in the ABRT directory? The hs_err file does not appear to be complete as it has no JVM state information, just a partial trace and that too is a pure Java error (unlike this one which appears to be in the JVM itself).

--- Additional comment from Greg Sheremeta on 2014-01-06 23:08:22 CET ---

Sure, I have

-rw-rw----. 1 greg abrt         5 Jan  3 12:19 abrt_version
-rw-rw----. 1 greg abrt         4 Jan  3 12:19 analyzer
-rw-rw----. 1 greg abrt         6 Jan  3 12:19 architecture
-rw-rw----. 1 greg abrt       172 Jan  3 12:19 cgroup
-rw-rw----. 1 greg abrt       819 Jan  3 12:19 cmdline
-rw-rw----. 1 greg abrt        18 Jan  3 12:19 component
-rw-rw----. 1 greg abrt     39560 Jan  3 12:19 core_backtrace
-rw-rw----. 1 greg abrt 180834304 Jan  3 12:19 coredump
-rw-rw----. 1 greg abrt         1 Jan  3 12:19 count
-rw-rw----. 1 greg abrt      3728 Jan  3 12:19 dso_list
-rw-rw----. 1 greg abrt      2981 Jan  3 12:19 environ
-rw-rw----. 1 greg abrt        78 Jan  3 12:19 executable
-rw-rw----. 1 greg abrt        21 Jan  3 12:19 hostname
-rw-rw----. 1 greg abrt        23 Jan  3 12:19 kernel
-rw-rw----. 1 greg abrt        10 Jan  3 12:19 last_occurrence
-rw-rw----. 1 greg abrt      1323 Jan  3 12:19 limits
-rw-rw----. 1 greg abrt     19575 Jan  3 12:19 maps
-rw-rw----. 1 greg abrt      1167 Jan  3 12:19 open_fds
-rw-rw----. 1 greg abrt       375 Jan  3 12:19 os_info
-rw-rw----. 1 greg abrt        29 Jan  3 12:19 os_release
-rw-rw----. 1 greg abrt        49 Jan  3 12:19 package
-rw-rw----. 1 greg abrt         4 Jan  3 12:19 pid
-rw-rw----. 1 greg abrt         6 Jan  3 12:19 pkg_arch
-rw-rw----. 1 greg abrt         1 Jan  3 12:19 pkg_epoch
-rw-rw----. 1 greg abrt        27 Jan  3 12:19 pkg_name
-rw-rw----. 1 greg abrt        12 Jan  3 12:19 pkg_release
-rw-rw----. 1 greg abrt         8 Jan  3 12:19 pkg_version
-rw-rw----. 1 greg abrt       926 Jan  3 12:19 proc_pid_status
-rw-rw----. 1 greg abrt        24 Jan  3 12:19 pwd
-rw-rw----. 1 greg abrt       119 Jan  3 12:19 reason
-rw-rw----. 1 greg abrt         4 Jan  3 12:19 runlevel
-rw-rw----. 1 greg abrt        10 Jan  3 12:19 time
-rw-rw----. 1 greg abrt         4 Jan  3 12:19 type
-rw-rw----. 1 greg abrt         4 Jan  3 12:19 uid
-rw-rw----. 1 greg abrt         5 Jan  3 12:19 username
-rw-rw----. 1 greg abrt        40 Jan  3 12:19 uuid
-rw-rw----. 1 greg abrt       702 Jan  3 12:19 var_log_messages

Lmk if there's a way to turn off abrt and generate the hs_err file. Stopping abrtd didn't do the trick.

--- Additional comment from Deepak Bhole on 2014-01-06 23:18:14 CET ---

Pavel, do you know why abrt might not be generating the hs_err file?

--- Additional comment from Greg Sheremeta on 2014-01-10 17:01:52 CET ---

Deepak, are any of those other files useful?

--- Additional comment from Deepak Bhole on 2014-01-10 17:34:48 CET ---

Hi Greg, unfortunately not afaik as they do not provide a full picture. 

Please bear with us (Pavel is on my team) on slow responses as we are currently fully engaged working on the January security update due next week.

--- Additional comment from Greg Sheremeta on 2014-01-22 18:56:53 CET ---

Deepak, Pavel, any progress on this?

--- Additional comment from Pavel Tisnovsky on 2014-02-03 17:47:05 CET ---

Hi Greg, Deepak,

the problem is caused by loading the abrt-java connector two times. I don't know exactly how the GWT build script handles java command line options, but it effectively use each option two times, so the connector is initialized and deinitialized two times too. We identified the issue (mutex is free-ed from memory in the deinitialization callback function).

If you would want, there are RPMs containing fix:
http://koji.fedoraproject.org/koji/taskinfo?taskID=6485811

--- Additional comment from Einav Cohen on 2014-02-03 19:07:22 CET ---

Thank you, Pavel.

- Should the component of this BZ be changed from "java-1.7.0-openjdk" to "abrt-java-connector"?

- Will the fix be backported to Fedora 20? If so: Any estimation on when will it happen?

--- Additional comment from Jakub Filak on 2014-02-04 10:09:23 CET ---

(In reply to Einav Cohen from comment #14)
Reassigning this bug from java-1.7.0-openjdk to abrt-java-connector as this is clearly a bug in abrt-java-connector.

Upstream commit https://github.com/jfilak/abrt-java-connector/commit/71ac5da86488ace3ebb3f3fa4adc747a511634e2 fixes this bug.

I'm about to release abrt-java-connector with this bug fixed for all supported Fedora releases.

--- Additional comment from Fedora Update System on 2014-02-04 14:50:04 CET ---

abrt-java-connector-1.0.8-2.fc20 has been submitted as an update for Fedora 20.
https://admin.fedoraproject.org/updates/abrt-java-connector-1.0.8-2.fc20

--- Additional comment from Fedora Update System on 2014-02-05 04:36:21 CET ---

Package abrt-java-connector-1.0.8-2.fc20:
* should fix your issue,
* was pushed to the Fedora 20 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing abrt-java-connector-1.0.8-2.fc20'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2014-2001/abrt-java-connector-1.0.8-2.fc20
then log in and leave karma (feedback).

--- Additional comment from Fedora Update System on 2014-02-06 04:52:35 CET ---

Package abrt-java-connector-1.0.8-3.fc20:
* should fix your issue,
* was pushed to the Fedora 20 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing abrt-java-connector-1.0.8-3.fc20'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2014-2001/abrt-java-connector-1.0.8-3.fc20
then log in and leave karma (feedback).

Comment 2 Jakub Filak 2014-02-10 14:34:24 UTC
Created attachment 861413 [details]
Patch fixing this bug

Comment 5 Ludek Smid 2014-06-13 10:27:29 UTC
This request was resolved in Red Hat Enterprise Linux 7.0.

Contact your manager or support representative in case you have further questions about the request.