Recommended Java Version

31 views
Skip to first unread message

Jason Lohrey

unread,
Dec 7, 2013, 5:18:10 PM12/7/13
to medi...@googlegroups.com
Some advice on Java virtual machines to use with Mediaflux..


1. Use Oracle Java

We test on Oracle Java, no other versions, and we will continue to do so until there is some reason to change.

Use OpenJDK or other variants of Java at your own risk - we know some earlier versions of OpenJDK would crash, when the Oracle version would not.


2. Install the JDK, not JRE

Install the JDK. Whilst you are not doing software development, the JDK version contains additional debugging tools that are essential for identifying some issues on production systems. The following tools allow external dumping of the call stack, which is essential if you cannot connect to the system using aterm:

jps — print the process ids of the running Java process
jstack — print a stack dump of a specified Java process - this tool also identifies any deadlocks known to Java (there may be others, that are not visible).

We can use those tools to grab a stack trace, and potentially identify deadlocks.


3. Use The Latest Version (of 1.7.x)

Use the latest Java version - currently, that is 1.7.0_45. When a new stream is released, the initial versions typically have issues, and over time become more stable, as well as security fixes. Oracle seem to have honed in on pretty stable versions for 1.7.

There are known issues with earlier versions on the 1.7.0 stream. For instance, I’ve just been reminded by a deadlock at a customer site that 1.7.0_07 is flawed, as I indicated to them:

The deadlock issue you encountered is a known issue with Java 1.7.0_07:


Let’s never install 1.7.0_07 again — or anything less than 1.7.0_45 for that matter.

Jason

JASON LOHREY
Chief Technical Officer


King Lung Chiu

unread,
Dec 23, 2013, 12:52:03 AM12/23/13
to Jason Lohrey, medi...@googlegroups.com
In regards to runinng MF with JDK 1.7+, does this mean we can / should now compile all our plugins using JDK 7 too? (previous advice was to use JDK 6)

I'm using this right now: mflux-dev_3.8.045_jvm_1.6.jar

thanks,

King




--
You received this message because you are subscribed to the Google Groups "mediaflux" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mediaflux+...@googlegroups.com.
To post to this group, send email to medi...@googlegroups.com.
Visit this group at http://groups.google.com/group/mediaflux.
For more options, visit https://groups.google.com/groups/opt_out.

Arcitecta.png

Jason Lohrey

unread,
Dec 27, 2013, 6:02:05 PM12/27/13
to King Lung Chiu, medi...@googlegroups.com
Well, we compile for 1.6.x. Compiling is different to using a JRE.  That is, we might compile for 1.6, but then run using 1.7 (or 1.8 when that comes out).

If you know you are deploying a 1.7.x JVM, then you can compile your plugins using 1.7.x.

Jason


On 23 Dec 2013, at 4:52 pm, King Lung Chiu <kinglu...@gmail.com> wrote:

In regards to runinng MF with JDK 1.7+, does this mean we can / should now compile all our plugins using JDK 7 too? (previous advice was to use JDK 6)

I'm using this right now: mflux-dev_3.8.045_jvm_1.6.jar

thanks,

King


On 8 December 2013 09:18, Jason Lohrey <jason....@arcitecta.com> wrote:
Some advice on Java virtual machines to use with Mediaflux..


1. Use Oracle Java

We test on Oracle Java, no other versions, and we will continue to do so until there is some reason to change.

Use OpenJDK or other variants of Java at your own risk - we know some earlier versions of OpenJDK would crash, when the Oracle version would not.


2. Install the JDK, not JRE

Install the JDK. Whilst you are not doing software development, the JDK version contains additional debugging tools that are essential for identifying some issues on production systems. The following tools allow external dumping of the call stack, which is essential if you cannot connect to the system using aterm:

jps — print the process ids of the running Java process
jstack — print a stack dump of a specified Java process - this tool also identifies any deadlocks known to Java (there may be others, that are not visible).

We can use those tools to grab a stack trace, and potentially identify deadlocks.


3. Use The Latest Version (of 1.7.x)

Use the latest Java version - currently, that is 1.7.0_45. When a new stream is released, the initial versions typically have issues, and over time become more stable, as well as security fixes. Oracle seem to have honed in on pretty stable versions for 1.7.

There are known issues with earlier versions on the 1.7.0 stream. For instance, I’ve just been reminded by a deadlock at a customer site that 1.7.0_07 is flawed, as I indicated to them:

The deadlock issue you encountered is a known issue with Java 1.7.0_07:


Let’s never install 1.7.0_07 again — or anything less than 1.7.0_45 for that matter.

Jason

JASON LOHREY
Chief Technical Officer

<Arcitecta.png>


--
You received this message because you are subscribed to the Google Groups "mediaflux" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mediaflux+...@googlegroups.com.
To post to this group, send email to medi...@googlegroups.com.
Visit this group at http://groups.google.com/group/mediaflux.
For more options, visit https://groups.google.com/groups/opt_out.

--
You received this message because you are subscribed to the Google Groups "mediaflux" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mediaflux+...@googlegroups.com.
To post to this group, send email to medi...@googlegroups.com.
Visit this group at http://groups.google.com/group/mediaflux.
For more options, visit https://groups.google.com/groups/opt_out.
Reply all
Reply to author
Forward
0 new messages