I migrated to a Rocky 8.4 system from CentOS 6.3 system running ext4 file system. I migrated my Java Spring program to Rocky 8.4 with ext4 file system. Java is platform independent mainly so in theory no need to rewrite/modify my Java Spring program.
So, when I run on Rocky 8.4 the Java program (JVM) fails to start up on Rocky 8.4 with ext4 file system. However, when I run it on a Rocky 8.4 system with xfs file system, it works. I am aware that on xfs file system, if the Java program is 32 bit it won’t run. In this case the program doesnt run on Rocky 8.4 with ext4 file system.
How can I diagnose this in detail for this Java JVM?
First, CentOS 6.3 ceased to have support in 2013-03-09. Nine years ago. Similarly, Rocky 8.4 has not been supported since 2021-11-15, when Rocky 8.5 was released.
Both CentOS and Rocky use the public sources of RHEL that Red Hat releases. They can’t support anything but content based on latest point updates of RHEL.
“Fails to start” With what errors? Where does the program / Apache write logs?
sudo journalctl -xe
Something in /var/log
or /var/log/httpd
?
SELinux blocks it, perhaps? I think you can see those events with:
sudo cat /var/log/audit/audit.log | audit2why
Thank you for the pointer. I need to configure the JVM logs to see why it is tripping when it is run on ext4 file system. I am working on this. Currently there’s no information from the logs you mention. Also nothing in the audit logs either.
Java apps normally implement logging, for example using java.util.logging or log4j, plus webapps will have their own logging, e.g. tomcat, jetty. In addition, there should also be some console output for anything not handled by the configured loggers.
1 Like
Hi @gerry666uk, thanks for your feedback. I agree with you that log4j or slf4j should give out some output. Here is the logging utility output redirected to a file. The output seems to show that the classloader failed to load all the classes or it had some kind of trouble loading a class on this Rocky 8.5 system with ext4 file system. However, the problem is not present when Rocky 8.5 is installed on xfs file system. Could the class loader be file system sensitive?
You don’t need to post it as an image, you can use plain text and format as code. Can you show the console from the start of the app to the exception. I can only see the exception. It looks like it’s trying to find a method defined in a WSDL file. Check that the WSDL file is not corrupt. Those capital 'L’s look odd too.
You say it works in Rocky 8.5 with ‘xfs’, which is the default, so I’m not sure why you’re trying to run it using ‘ext4’.
Let me answer the ‘xfs’ story first. I could use ‘xfs’ default file system but I have only opted for ‘ext4’ because of past experience with the filesystem. I will consider using the ‘xfs’ virtual machine. The ‘xfs’ offers better I/O throughput than ‘ext4’ fs I read.
As for the code please see below. I haven’t tested to see if the wsdl is corrupt or not. But what I did was use the same wsdl on the ext4 vm and the xfs vm. It works on one but not the other. I tried to paste the whole startup printout but I see there is a limit to the amount of code I can paste.
[Opened /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.Object from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.io.Serializable from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.Comparable from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.CharSequence from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.String from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.reflect.AnnotatedElement from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.reflect.GenericDeclaration from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.reflect.Type from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.Class from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.Cloneable from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.ClassLoader from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.System from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.Throwable from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.Error from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.ThreadDeath from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.Exception from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.RuntimeException from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.SecurityManager from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.security.ProtectionDomain from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.security.AccessControlContext from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.security.SecureClassLoader from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.ReflectiveOperationException from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.ClassNotFoundException from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.LinkageError from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.NoClassDefFoundError from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.ClassCastException from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.ArrayStoreException from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.VirtualMachineError from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.OutOfMemoryError from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.StackOverflowError from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.IllegalMonitorStateException from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.ref.Reference from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.ref.SoftReference from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.ref.WeakReference from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.ref.FinalReference from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.ref.PhantomReference from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.misc.Cleaner from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.ref.Finalizer from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.ref.ReferenceQueue from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.Runnable from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.Thread from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.Thread$UncaughtExceptionHandler from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.ThreadGroup from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.util.Map from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.util.Dictionary from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.util.Hashtable from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.util.Properties from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.reflect.AccessibleObject from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.reflect.Member from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.reflect.Field from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.reflect.Parameter from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.reflect.Executable from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.reflect.Method from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.reflect.Constructor from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.reflect.MagicAccessorImpl from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.reflect.MethodAccessor from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.reflect.MethodAccessorImpl from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.reflect.ConstructorAccessor from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.reflect.ConstructorAccessorImpl from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.reflect.DelegatingClassLoader from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.reflect.ConstantPool from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.reflect.FieldAccessor from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.reflect.FieldAccessorImpl from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.reflect.UnsafeFieldAccessorImpl from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.reflect.UnsafeStaticFieldAccessorImpl from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.annotation.Annotation from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.reflect.CallerSensitive from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.invoke.MethodHandle from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.invoke.DirectMethodHandle from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.invoke.MemberName from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.invoke.MethodHandleNatives from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.invoke.LambdaForm from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.invoke.MethodType from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.BootstrapMethodError from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.invoke.CallSite from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.invoke.ConstantCallSite from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.invoke.MutableCallSite from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.invoke.VolatileCallSite from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.Appendable from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.AbstractStringBuilder from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.StringBuffer from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.StringBuilder from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.misc.Unsafe from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.AutoCloseable from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.io.Closeable from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.io.InputStream from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.io.ByteArrayInputStream from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.io.File from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.net.URLClassLoader from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.net.URL from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.util.jar.Manifest from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.misc.Launcher from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.misc.Launcher$AppClassLoader from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.misc.Launcher$ExtClassLoader from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.security.CodeSource from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.StackTraceElement from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.nio.Buffer from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.Boolean from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.Character from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.Number from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.Float from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.Double from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.Byte from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.Short from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.Integer from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.Long from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.NullPointerException from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.ArithmeticException from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.io.ObjectStreamField from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.util.Comparator from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.String$CaseInsensitiveComparator from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.security.Guard from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.security.Permission from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.security.BasicPermission from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.RuntimePermission from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.security.AccessController from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.reflect.ReflectPermission from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.security.PrivilegedAction from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.reflect.ReflectionFactory$GetReflectionFactoryAction from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.security.cert.Certificate from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.Iterable from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.util.Collection from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.util.List from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.util.RandomAccess from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.util.AbstractCollection from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.util.AbstractList from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.util.Vector from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.util.Stack from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.reflect.ReflectionFactory from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.ref.Reference$Lock from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.ref.Reference$ReferenceHandler from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.InterruptedException from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.util.ArrayList from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.util.Collections from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.util.Set from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.util.AbstractSet from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.util.Collections$EmptySet from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.util.Collections$EmptyList from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.util.AbstractMap from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.util.Collections$EmptyMap from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.util.Collections$UnmodifiableCollection from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.util.Collections$UnmodifiableList from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.util.Collections$UnmodifiableRandomAccessList from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.ref.ReferenceQueue$Null from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.ref.ReferenceQueue$Lock from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.misc.JavaLangRefAccess from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.ref.Reference$1 from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.misc.SharedSecrets from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.IncompatibleClassChangeError from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.NoSuchMethodError from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.reflect.Reflection from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.util.HashMap from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.util.Map$Entry from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.util.HashMap$Node from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.misc.VM from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.util.Hashtable$Entry from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.Math from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.ref.Finalizer$FinalizerThread from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.nio.charset.Charset from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.nio.charset.spi.CharsetProvider from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.nio.cs.FastCharsetProvider from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.nio.cs.StandardCharsets from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.util.PreHashedMap from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.nio.cs.StandardCharsets$Aliases from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.nio.cs.StandardCharsets$Classes from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.nio.cs.StandardCharsets$Cache from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.ThreadLocal from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.util.concurrent.atomic.AtomicInteger from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.Class$3 from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.Class$ReflectionData from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.Class$Atomic from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.reflect.generics.repository.AbstractRepository from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.reflect.generics.repository.GenericDeclRepository from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.reflect.generics.repository.ClassRepository from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.Class$AnnotationData from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.reflect.annotation.AnnotationType from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.util.WeakHashMap from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.ClassValue$ClassValueMap from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.reflect.Modifier from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.reflect.LangReflectAccess from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.reflect.ReflectAccess from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.util.Arrays from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.nio.cs.HistoricallyNamedCharset from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.nio.cs.Unicode from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.nio.cs.UTF_8 from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.Class$1 from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.reflect.ReflectionFactory$1 from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.reflect.NativeConstructorAccessorImpl from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.reflect.DelegatingConstructorAccessorImpl from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.StringCoding from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.ThreadLocal$ThreadLocalMap from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.ThreadLocal$ThreadLocalMap$Entry from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.StringCoding$StringDecoder from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.nio.cs.ArrayDecoder from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.nio.charset.CharsetDecoder from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.nio.cs.UTF_8$Decoder from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.nio.charset.CodingErrorAction from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.util.Hashtable$EntrySet from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.util.Collections$SynchronizedCollection from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.util.Collections$SynchronizedSet from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.util.Objects from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.util.Enumeration from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.util.Iterator from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.util.Hashtable$Enumerator from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.lang.Runtime from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.misc.Version from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.io.FileInputStream from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.io.FileDescriptor from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.misc.JavaIOFileDescriptorAccess from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.io.FileDescriptor$1 from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.io.Flushable from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.io.OutputStream from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.io.FileOutputStream from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.io.FilterInputStream from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.io.BufferedInputStream from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.util.concurrent.atomic.AtomicReferenceFieldUpdater from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.util.concurrent.atomic.AtomicReferenceFieldUpdater$AtomicReferenceFieldUpdaterImpl from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.security.PrivilegedExceptionAction from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.util.concurrent.atomic.AtomicReferenceFieldUpdater$AtomicReferenceFieldUpdaterImpl$1 from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded sun.reflect.misc.ReflectUtil from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.io.FilterOutputStream from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.io.PrintStream from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
[Loaded java.io.BufferedOutputStream from /usr/java/jdk1.8.0_311-amd64/jre/lib/rt.jar]
...
So are you saying there are two virtual machines? If so, there could be more to it than just the filesystem format.
That’s what I thought, too. There is a NoSuchMethod Exception, but I don’t see why it is supposed to be caused by the underlying filesystem.
@ PREngineer
Are you sure that the 2 machines are provisioned identical, e.g. same versions of java libraries installed, same version of spring, etc?
Just to clarify, I built 2 virtual machines. Yes.
I took the java service from my CentOS 6.3 system and ported it to both virtual machines (Rocky Linux) where one VM has xfs (default install) and the other VM has ext4.
Hi @anemarkus
Unfortunately I do not use any configuration management to be confident the install is identical. I dont use Ansible (or similar). But I can say I install java via downloaded RPM file on both virtual machines. For example I can download jdk-8u301-linux-x64.rpm and then I run ‘dnf install jdk-8u301-linux-x64.rpm’ on both the new VMs. So the libraries installed should be the same.
As for the version of Spring, I do not do any build of the Spring project. I simply port the jar files from CentOS 6.3 and scp them onto the new VMs and just execute the java command to run them. Maybe I should rebuild them?
Oh by the way the developer rebuilt them and the VM with the ext4 file system fails to run the Spring application. Is there another way I can debug this issue?
PS: I managed to install a few Rocky Linux VMs with ext4 and a few with xfs. I can replicate this problem on that basis.
You should not need to download a java rpm, there are java versions in the official repos.
Yes I noticed the OpenJDK. I will try this out this morning and share feedback. Hopefully this helps.
When I install OpenJDK and run it, the same error prevails.
Out of curiosity I tried Java 11. I got more detailed errors:
-Failed to create bean with name ‘camel-1:beanPostProcessor’ and,
-NoClassDefFound Exception,
-ClassNotFound Exception for javax.annotation.Resource
At this point in time I think I will opt for the xfs filesystem VM and use this for the service. Then use the free time to try understand the problem.
Your app may be too old for Java 11, I don’t think ‘javax.annotation.Resource’ is included. There’s an older version of java in appstream, ‘java-1.8.0-openjdk.x86_64’
I started off by testing ‘java-1.8.0-openjdk.x86_64’ which failed with the same message I got with Oracle Java 1.8.
I was only experimenting by trying Java 11. If I have time I might create a VM with mixed file system types (i.e. ext4 and xfs). Then try running the app on that VM from each of the file systems just to eliminate the doubts.
…while the posting of my reply failed I managed to test the idea. I created 1 VM with xfs and ext4 filesystems. I ran one app from each of the file systems. Both give the same failure message. So then this is not a file system problem.
So it means by fluke I managed to build a VM where the app can run.
It would be strange if a java app can not run on ‘ext4’, as there were thousands running on ‘ext4’ before ‘xfs’ became the default. It would be interesting to know why a specific vm guest is able to run the app correctly.
It definitely would be strange.
At the moment I am out of ideas. But I do think of building an xfs VM and test there. Then I convert the xfs file system to ext4 and test again. Hopefully I get more ideas and think of more test plans to uncover the bug or issue rather.