log4j:ERROR LogMananger.repositorySelector was null likely due to error in class

本文记录了SSH整合过程中遇到的一个关于log4j1.2.15的bug,该bug导致错误日志输出,影响正常运行。

SSH整合出现

Log4j 1.2.15存在一个bug

01-Jul-2025 18:26:22.896 SEVERE [RMI TCP Connection(3)-127.0.0.1] org.apache.catalina.core.StandardContext.startInternal Context [/ecm-sf5-cn] startup failed due to previous errors 01-Jul-2025 18:26:22.968 WARNING [RMI TCP Connection(3)-127.0.0.1] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThreads The web application [ecm-sf5-cn] appears to have started a thread named [Catalina-utility-2] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: org.apache.catalina.core.StandardContext.backgroundProcess(StandardContext.java:4825) org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1172) org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1176) org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1176) org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1154) java.base@17.0.12/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) java.base@17.0.12/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305) java.base@17.0.12/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305) java.base@17.0.12/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) java.base@17.0.12/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) java.base@17.0.12/java.lang.Thread.run(Thread.java:840) 01-Jul-2025 18:26:22.968 WARNING [RMI TCP Connection(3)-127.0.0.1] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThreads The web application [ecm-sf5-cn] appears to have started a thread named [DefaultQuartzScheduler_QuartzSchedulerThread] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: java.base@17.0.12/java.lang.Object.wait(Native Method) org.quartz.core.QuartzSchedulerThread.run(QuartzSchedulerThread.java:427) 01-Jul-2025 18:26:22.977 SEVERE [RMI TCP Connection(3)-127.0.0.1] org.apache.catalina.loader.WebappClassLoaderBase.checkThreadLocalMapForLeaks The web application [ecm-sf5-cn] created a ThreadLocal with key of type [java.lang.ThreadLocal] (value [java.lang.ThreadLocal@3777677a]) and a value of type [com.documentum.web.env.app.AppServerEnvironment] (value [[Name = App Server Environment, Description = App Server Environment Implementation, Major Version = 0, Minor Version = 1, Author = Documentum, Portal Description = App Server, Portal Version = x.x, Environment Base Version = 1.0, Environment Service Version = 6.0, Supports Dispatch Contract = true, Supports Theme Contract = true, Supports Error Contract = true, Supports FormOperationListener Contract = false, Supports Locale Contract = true, Supports Session Contract = true, Supports Tag Contract = false, Supports Render Contract = true, Supports Login Contract = false, Supports Security Contract = true, Supports ActionPrecondition Contract = false, Supports MessageService Contract = false, Supports SuperCredentials Contract = true, Supports Preference Contract = true, Supports ContentTransfer Contract = true]]) but failed to remove it when the web application was stopped. Threads are going to be renewed over time to try and avoid a probable memory leak. [2025-07-01 06:26:22,998] Artifact ecm-sf5-cn: Error during artifact deployment. See server log for details.
07-02
08-Sep-2025 13:35:44.453 SEVERE [http-nio-8080-exec-15] org.apache.catalina.core.StandardContext.startInternal Context [/mesFERROTEC] startup failed due to previous errors 08-Sep-2025 13:35:44.976 WARNING [http-nio-8080-exec-15] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesJdbc The web application [mesFERROTEC] registered the JDBC driver [com.mysql.cj.jdbc.Driver] but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered. 08-Sep-2025 13:35:44.978 WARNING [http-nio-8080-exec-15] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThreads The web application [mesFERROTEC] appears to have started a thread named [mysql-cj-abandoned-connection-cleanup] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: java.lang.Object.wait(Native Method) java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:144) com.mysql.cj.jdbc.AbandonedConnectionCleanupThread.run(AbandonedConnectionCleanupThread.java:85) java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) java.lang.Thread.run(Thread.java:748) 08-Sep-2025 13:35:44.979 WARNING [http-nio-8080-exec-15] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThreads The web application [mesFERROTEC] appears to have started a thread named [pool-21-thread-1] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: sun.misc.Unsafe.park(Native Method) java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) java.lang.Thread.run(Thread.java:748) 08-Sep-2025 13:35:44.986 INFO [http-nio-8080-exec-15] org.apache.catalina.startup.HostConfig.deployWAR Deployment of web application archive [/usr/local/tomcat/webapps/mesFERROTEC.war] has finished in [109,199] ms 08-Sep-2025 13:35:47.008 INFO [mysql-cj-abandoned-connection-cleanup] org.apache.catalina.loader.WebappClassLoaderBase.checkStateForResourceLoading Illegal access: this web application instance has been stopped already. Could not load []. The following stack trace is thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access. java.lang.IllegalStateException: Illegal access: this web application instance has been stopped already. Could not load []. The following stack trace is thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access. at org.apache.catalina.loader.WebappClassLoaderBase.checkStateForResourceLoading(WebappClassLoaderBase.java:1378) at org.apache.catalina.loader.WebappClassLoaderBase.getResource(WebappClassLoaderBase.java:1030) at com.mysql.cj.jdbc.AbandonedConnectionCleanupThread.checkThreadContextClassLoader(AbandonedConnectionCleanupThread.java:117) at com.mysql.cj.jdbc.AbandonedConnectionCleanupThread.run(AbandonedConnectionCleanupThread.java:84) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748)
最新发布
09-09
<think>好的,我现在需要帮助用户解决Abaqus运行时出现的内存不足错误,具体是“Error in job: Analysis Input File Processor aborted”的问题。首先,我应该回顾用户提供的引用资料,看看有没有相关的线索。 用户提到的错误信息中提到了内存不足,导致关键字解析失败和作业中止。引用[1]到[5]主要涉及编译错误、预执行文件缺失、状态变量未设置、初始条件设置错误等,但内存问题没有直接提到。不过,这些引用中的一些解决方法可能有参考价值,比如检查输入文件中的错误设置,或者调整模型设置。 首先,内存不足通常与模型的大小或计算资源有关。可能的原因包括模型过于复杂、网格划分过细、材料属性或接触定义不当导致内存需求超出系统限制。解决方案可能涉及优化模型、增加内存分配或调整求解器设置。 接下来,我需要考虑用户可能的操作步骤。用户可能使用的是标准版Abaqus,而内存设置默认较低,或者模型本身需要更多内存。需要指导用户如何调整内存参数,比如在作业提交时增加内存分配,如使用`memory="xxx mb"`参数。 另外,检查模型是否有不必要的复杂性,比如过多的接触对、过细的网格或冗余的边界条件。简化模型或使用对称性可能有助于减少内存使用。此外,检查输入文件中的语法错误,如引用[5]中提到的初始条件设置错误,也可能导致解析器崩溃,虽然主要问题是内存不足,但输入错误可能加剧这一问题。 用户还可能没有正确设置临时文件目录的权限,导致内存写入问题,所以建议检查磁盘空间和目录权限。此外,使用命令行提交作业并监控内存使用情况,可以帮助诊断问题。 最后,确保Abaqus安装正确,如引用[3]提到的预执行文件缺失问题,虽然这里不是同一个错误,但排除安装问题也是必要的。 总结解决方案步骤:调整内存设置、优化模型、检查输入文件、确保系统资源足够,以及分步处理复杂模型。同时,生成相关问题,帮助用户进一步排查其他潜在问题。</think>### 分步解决方案:Abaqus内存不足导致作业中止问题 #### 1. **调整内存分配** - Abaqus默认内存分配可能不足以处理复杂模型。在提交作业时,通过修改输入文件或作业设置手动增加内存限制: ```bash abaqus job=Job-1 memory="8000 mb" # 根据系统物理内存调整,建议不超过总内存的70% ``` - 或在`abaqus_v6.env`配置文件中设置全局默认值: ``` system_memory = "16 GB" # 根据实际配置调整 ``` #### 2. **优化模型以减少内存占用** - **简化网格**:减少单元数量(尤其是四面体单元),使用结构化网格或适当加密关键区域。 - **接触对优化**:合并冗余接触对,使用通用接触(General Contact)替代逐一定义。 - **材料与边界条件**:避免重复定义材料属性,使用对称边界条件减少计算域[^4]。 #### 3. **检查输入文件语法** - 使用文本编辑器检查`.inp`文件中是否存在语法错误(如未闭合的关键字、拼写错误)。例如: ```python *STEP # 确保每个STEP有对应的END STEP *STATIC 0.1, 1.0 *BOUNDARY ... *END STEP ``` - 引用[5]提到的`*INITIALCONDITIONS`错误,需检查初始条件定义是否冲突或重复。 #### 4. **分步处理复杂模型** - **子模型法**:将大型模型拆分为多个子模型,分步求解后合并结果。 - **显式求解器切换**:对高度非线性问题,尝试使用Abaqus/Explicit(需权衡精度与效率)。 #### 5. **系统资源管理** - **释放内存**:关闭后台程序,确保Abaqus运行时可用内存充足。 - **磁盘空间**:临时目录(如`abaqus_scratch`)需保留至少模型大小2倍的可用空间[^3]。 - **并行计算**:启用多核并行(如`cpus=4`)以加速求解,但需注意内存占用可能增加。 #### 6. **错误日志分析** - 检查`Job-1.msg`或`Job-1.log`文件,定位具体报错位置。例如: ``` ***ERROR: MEMORY ALLOCATION FAILED IN ANALYSIS INPUT FILE PROCESSOR ***NOTE: DURING TRYING TO PARSE ELEMENT CONNECTIVITY ``` 此类日志表明内存不足发生在单元连接解析阶段,需重点优化网格或接触定义。 --- ###
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值