在 Windchill 10.0 中, 全文检索的数据索引导致后台方法服务器报告内存问题
适用于
- Windchill PDMLink 10.0 F000 to M050
- Windchill PDMLink 10.1 F000 to M040
说明
- 全文检索引起的后台方法服务器内存问题
- 后台方法服务器日志出现下面的信息
仍超出垃圾收集时间阈值; 垃圾收集时间百分比
不再超出垃圾收集时间阈值; 垃圾收集时间百分比
已超出堆使用百分比阈值; 已使用
仍超出堆使用百分比阈值; 已使用
不再超出堆使用百分比阈值; 已使用
Low Memory Detector wt.jmx.notif.memory
wt.jmx.notif.memory MemoryNotifier
java.lang.OutOfMemoryError: GC overhead limit exceeded
- 日志抛出下面的错误:
ERROR : com.ptc.search.solr.contentReader.contentExtraction.TikaExtractor Administrator - Error parsing content of file filename.xlsm
org.apache.tika.exception.TikaException: Error creating OOXML extractor
at org.apache.tika.parser.microsoft.ooxml.OOXMLExtractorFactory.parse(OOXMLExtractorFactory.java:90)
at org.apache.tika.parser.microsoft.ooxml.OOXMLParser.parse(OOXMLParser.java:67)
at org.apache.tika.parser.CompositeParser.parse(CompositeParser.java:197)
at org.apache.tika.parser.CompositeParser.parse(CompositeParser.java:197)
at org.apache.tika.parser.AutoDetectParser.parse(AutoDetectParser.java:137)
at org.apache.tika.parser.AutoDetectParser.parse(AutoDetectParser.java:150)
at com.ptc.search.solr.contentReader.contentExtraction.TikaExtractor.extractContent(TikaExtractor.java:47)
at com.ptc.search.solr.contentReader.contentExtraction.StreamExtractor.run(StreamExtractor.java:69)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
Caused by: org.apache.xmlbeans.impl.values.XmlValueOutOfRangeException: string value 'Text' is not a valid enumeration value for ST_ObjectType in namespace urn:schemas-microsoft-com:office:excel
at org.apache.xmlbeans.impl.values.JavaStringEnumerationHolderEx.set_text(JavaStringEnumerationHolderEx.java:39)
at org.apache.xmlbeans.impl.values.XmlObjectBase.update_from_wscanon_text(XmlObjectBase.java:1169)
at org.apache.xmlbeans.impl.values.XmlObjectBase.check_dated(XmlObjectBase.java:1308)
at org.apache.xmlbeans.impl.values.JavaStringEnumerationHolderEx.getEnumValue(JavaStringEnumerationHolderEx.java:60)
at schemasMicrosoftComOfficeExcel.impl.CTClientDataImpl.getObjectType(Unknown Source)
- 或者下面的 stackTrace
"IndexQueue1.PollingThread" Id=55 prio=5 RUNNABLE
Blocked (cnt): 10; Waited (cnt): 2
CPU nanos: 41687500000; User nanos: 40281250000; Bytes allocated: 11356066736
Method context: 2xgwq4;hxnzo8hz;5652;goc9ll;77; DB session: 54
at java.lang.String.intern(Native Method)
at com.ptc.core.meta.common.impl.AbstractDefinitionIdentifier.intern(AbstractDefinitionIdentifier.java:244)
at com.ptc.core.meta.common.impl.AbstractIdentifier.hashCode(AbstractIdentifier.java:91)
at java.util.concurrent.ConcurrentHashMap.get(ConcurrentHashMap.java:768)
at com.ptc.core.meta.common.impl.AbstractDefinitionIdentifier.intern(AbstractDefinitionIdentifier.java:231)
at com.ptc.core.meta.common.impl.ModeledAssociationTypeIdentifier.createAssociationTypeIdentifier(ModeledAssociationTypeIdentifier.java:146)
at com.ptc.core.meta.common.impl.ModeledAssociationTypeIdentifier.getInverse(ModeledAssociationTypeIdentifier.java:256)
at com.ptc.core.meta.common.impl.AbstractAssociationTypeIdentifier.getInverse(AbstractAssociationTypeIdentifier.java:195)
at com.ptc.core.meta.container.common.impl.BasicAttributeContainer._addToTIIMaps(BasicAttributeContainer.java:4939)
at com.ptc.core.meta.container.common.impl.BasicAttributeContainer._rebuildTIIMaps(BasicAttributeContainer.java:4921)
at com.ptc.core.meta.container.common.impl.BasicAttributeContainer.purge(BasicAttributeContainer.java:1983)
at com.ptc.core.meta.type.common.impl.DefaultTypeInstance.purge(DefaultTypeInstance.java:1891)
at com.ptc.core.command.server.delegate.entity.RetrievePersistentEntityCommandDelegate.doExecution(RetrievePersistentEntityCommandDelegate.java:228)
at com.ptc.core.command.common.delegate.AbstractCommandDelegate.execute(AbstractCommandDelegate.java:216)
at com.ptc.core.command.common.CommandDelegateForwarder._remoteExecute(CommandDelegateForwarder.java:292)
at com.ptc.core.command.common.CommandDelegateForwarder.remoteExecute(CommandDelegateForwarder.java:240)
at com.ptc.core.command.common.CommandDelegateForwarder.execute(CommandDelegateForwarder.java:202)
at com.ptc.core.command.common.bean.AbstractServerCommand.execute(AbstractServerCommand.java:202)
at com.ptc.core.command.server.delegate.entity.PrepareEntityCommandDelegate.doExecution(PrepareEntityCommandDelegate.java:106)
at com.ptc.core.command.common.delegate.AbstractCommandDelegate.execute(AbstractCommandDelegate.java:216)
at com.ptc.core.command.common.CommandDelegateForwarder._remoteExecute(CommandDelegateForwarder.java:292)
at com.ptc.core.command.common.CommandDelegateForwarder.remoteExecute(CommandDelegateForwarder.java:240)
at com.ptc.core.command.common.CommandDelegateForwarder.execute(CommandDelegateForwarder.java:202)
at com.ptc.core.command.common.bean.AbstractServerCommand.execute(AbstractServerCommand.java:202)
at wt.index.AbstractIndexServiceDelegate.getTypeInstances(AbstractIndexServiceDelegate.java:1297)
at wt.index.AbstractIndexServiceDelegate.index(AbstractIndexServiceDelegate.java:520)
at wt.index.StandardIndexPolicyManager.processIndexRequest(StandardIndexPolicyManager.java:1450)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at wt.services.ServiceFactory$ServerInvocationHandler.invoke(ServiceFactory.java:399)
at $Proxy39.processIndexRequest(Unknown Source)
at wt.index.StandardIndexPolicyManager.updateIndexer(StandardIndexPolicyManager.java:596)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at wt.queue.QueueEntry.execute(QueueEntry.java:231)
at wt.queue.ProcessingQueue.execEntry(ProcessingQueue.java:284)
at wt.queue.ProcessingQueue.execEntries(ProcessingQueue.java:884)
at wt.queue.PollingQueueThread.run(PollingQueueThread.java:115)