Bug 1085696 - JARs Made Invalid By Patch Installation Should Be Renamed to Indicate Their Status
Summary: JARs Made Invalid By Patch Installation Should Be Renamed to Indicate Their S...
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: JBoss Enterprise Application Platform 6
Classification: JBoss
Component: Patching
Version: 6.2.0
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
: EAP 6.4.0
Assignee: Emmanuel Hugonnet (ehsavoie)
QA Contact: Jan Martiska
Russell Dickenson
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2014-04-09 07:18 UTC by Jimmy Wilson
Modified: 2018-12-06 16:16 UTC (History)
19 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2014-11-18 14:31:09 UTC
Type: Enhancement
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Issue Tracker WFLY-3406 0 Major Resolved JARs Made Invalid By Patch Installation Should Be Renamed to Indicate Their Status 2018-09-27 06:43:49 UTC
Red Hat Knowledge Base (Solution) 768193 0 None None None Never

Description Jimmy Wilson 2014-04-09 07:18:05 UTC
For various reasons, JARs that are updated by overlays provided in patches are made invalid.  However these JARs maintain the same name which lots of folks find confusing.

Comment 2 Jimmy Wilson 2014-04-09 07:20:02 UTC
I would suggest something like *.jar.backup as that's what they're left on the disk for...

Comment 4 dereed 2014-04-09 08:04:36 UTC
If they were renamed (particularly to something other than *.jar), there would no longer be a reason to break them.

If module.xml was also renamed the same, there wouldn't be anything preventing the new version from just being updated in place (which could quit breaking anything that references the jars from EAP -- many customers' build scripts or classpaths for client apps, IDEs including JBDS, etc).

Comment 5 Max Rydahl Andersen 2014-04-09 08:07:27 UTC
Just want to point out it is not just humans.
Compilers or IDE's looking at these jars will complain too.

Comment 6 Max Rydahl Andersen 2014-04-09 08:12:22 UTC
btw. if we could be told if this change would be done in 6.2.x timeframe (i.e. fixed in the next CP) we would *not* have to release updates to older JBDS releases.

If it won't be fixed in 6.2.x we either need to say either:

A) anything beyond EAP 6.2.0 is not supported for development
B) Provide full EAP 6.2 zips for downloads
C) Do update release to JBDS 7.1 which would need to add a much more complex jar lookup than it currently uses.

p.s. for JBDS 8+ we want to fix this properly since even if jars get renamed they moved location so we need to handle that issue anyway.

Comment 7 Max Rydahl Andersen 2014-04-10 11:26:13 UTC
related tooling jira: https://issues.jboss.org/browse/JBIDE-17025

please note just because we can potentially fix it in our tools it does not fix the overall issue that a patched EAP contains jar that are not jars and humans as well as tools will fail on these.

Comment 8 Mustafa Musaji 2014-04-10 14:58:09 UTC
This is a real issue. I'm trying to see how feasible the workaround for removing corrupt JAR's from a JBDS project is and it's not nice at all. 

You have to manually remove the invalid JAR's (even then doing so you get an error saying that the build patch references non existing library '/home/mmusaji/JBoss/jboss-eap-6.2.1/modules/system/layers/base/org/picketbox/main/picketbox-4.0.19.SP2-redhat-1.jar') and add the new ones manually in to your build path!

This basically makes the feature of being able to add a server runtime library to your project redundant as you end up adding them manually in the end.

I'm still looking in other options but wanted to share this.

Comment 9 wfink 2014-05-02 12:04:35 UTC
From my perspective there is one think more to consider.

If there are some links to this modules (i.e. JBIDE or a from a customer build)
renaming might end in the same situation, the JAR is not longer available.

Also if we 'save' the modules before applying the patch and place the new one into the original directory it miget be still a renaming as the version might changed i.e. jgroups-a.b.c.jar => jgroups-a.b.d.jar.

A possible solution might to only modify/invalid the module.xml

Comment 11 Emanuel Muckenhuber 2014-05-16 11:57:20 UTC
We won't be able to do this in the EAP 6.3 timeframe, so i guess i should devel Nack this?

In general there is no guarantee that we can rename all disabled .jars on all platforms and we cannot fail applying the patch if this happens. So it would be  more of a best effort approach.

Comment 12 Emanuel Muckenhuber 2014-05-23 12:41:20 UTC
As mentioned before - this won't make it into 6.3, so I am nacking this for now.

Emmanuel is going to look into getting this done for 6.4.

Comment 14 Emmanuel Hugonnet (ehsavoie) 2014-06-03 06:49:54 UTC
Upstream PR: https://github.com/wildfly/wildfly/pull/6325
6.x PR: https://github.com/jbossas/jboss-eap/pull/1398

Comment 17 Kabir Khan 2014-09-11 07:45:15 UTC
This should be acked by Jimmy


Note You need to log in before you can comment on or make changes to this bug.