Article - CS248581

Method Server hangs on startup while initializing the Type Definition cache in Windchill PDMLink

Modified: 18-Oct-2022   


Applies To

  • Windchill PDMLink 10.1 F000 to 12.1

Description

  • Method Server hangs on startup while initializing the Type Definition cache
  • Maintenance update tool (update_tool) fails during startup of Method server
  • Jstack thread dumps show main thread has TypeDefinitionCache ReadLock, but is deadlocked with itself waiting for WriteLock:
"main" prio=6 tid=0x00000000001be800 nid=0x1430 waiting on condition [0x000000000278d000]
   java.lang.Thread.State: WAITING (parking)
    at sun.misc.Unsafe.park(Native Method)
    - parking to wait for  <0x00000000f3c11fd0> (a java.util.concurrent.locks.ReentrantReadWriteLock$NonfairSync)
    at java.util.concurrent.locks.LockSupport.park(LockSupport.java:156)
    at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:811)
    at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:842)
    at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1178)
    at java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock.lock(ReentrantReadWriteLock.java:807)
    at com.ptc.core.lwc.server.cache.TypeDefinitionCacheLock.acquireWriteLock(TypeDefinitionCacheLock.java:83)
    at com.ptc.core.lwc.server.cache.TypeDefinitionManager.ensureTypeDefInitialization(TypeDefinitionManager.java:292)
    at com.ptc.core.lwc.server.cache.PropertyDefinitionManager.init(PropertyDefinitionManager.java:165)
    at com.ptc.core.lwc.server.cache.PropertyDefinitionManager.getPropertyDefView(PropertyDefinitionManager.java:335)
    at com.ptc.core.lwc.server.cache.factory.PropertyValueDefinitionViewFactory.newPropertyValueView(PropertyValueDefinitionViewFactory.java:87)
    at com.ptc.core.lwc.server.cache.PropertyHolderHelper.translatePropertyValuesToViews(PropertyHolderHelper.java:316)
    at com.ptc.core.lwc.server.cache.TypeDefinitionManager.translateTypeDefToView(TypeDefinitionManager.java:1823)
    at com.ptc.core.lwc.server.cache.TypeDefinitionManager.retrieveAndCacheType(TypeDefinitionManager.java:534)
    at com.ptc.core.lwc.server.cache.TypeDefinitionManager.getTypeDefView(TypeDefinitionManager.java:634)
    at com.ptc.core.lwc.server.StandardTypeDefinitionService.getTypeDefView(StandardTypeDefinitionService.java:428)
    at com.ptc.core.lwc.server.StandardTypeDefinitionService.getTypeDefView(StandardTypeDefinitionService.java:962)
    at com.ptc.core.lwc.server.StandardTypeDefinitionService.getAttributeDefView(StandardTypeDefinitionService.java:983)
    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 com.sun.proxy.$Proxy12.getAttributeDefView(Unknown Source)
    at com.ptc.core.lwc.server.LWCLocalizedValuesAugmentor.augment(LWCLocalizedValuesAugmentor.java:81)
    at com.ptc.core.meta.descriptor.server.impl.AbstractLocalizedValuesFactory.addToLocalizedValues(AbstractLocalizedValuesFactory.java:664)
    at com.ptc.core.meta.descriptor.server.impl.AbstractLocalizedValuesFactory.get(AbstractLocalizedValuesFactory.java:181)
    at com.ptc.core.meta.descriptor.common.impl.RetrieveDefinitionDescriptorRemoteWorker.doWork(RetrieveDefinitionDescriptorRemoteWorker.java:63)
    at com.ptc.core.command.common.RemoteWorkerHandlerImplementation.handleRemoteWorker(RemoteWorkerHandlerImplementation.java:30)
    at com.ptc.core.meta.common.RemoteWorkerHandler.handleRemoteWorker(RemoteWorkerHandler.java:38)
    at com.ptc.core.meta.descriptor.common.impl.DefaultDescriptorFactory.get(DefaultDescriptorFactory.java:184)
    at com.ptc.core.meta.descriptor.common.impl.DefaultDescriptorFactory.get(DefaultDescriptorFactory.java:129)
    at com.ptc.windchill.explorer.config.server.AbstractConfigElementTranslator.buildDescriptor(AbstractConfigElementTranslator.java:129)
    at com.ptc.windchill.explorer.config.server.attribute.AttributeDefinitionTranslator.processAttributeData(AttributeDefinitionTranslator.java:167)
    at com.ptc.windchill.explorer.config.server.attribute.AttributeDefinitionTranslator.translateConfig(AttributeDefinitionTranslator.java:51)
    at com.ptc.windchill.explorer.config.server.AbstractConfigElementTranslator.translate(AbstractConfigElementTranslator.java:93)
    at com.ptc.core.logic.repository.common.LogicElement.translate(LogicElement.java:296)
    at com.ptc.windchill.explorer.config.server.AbstractConfigElementTranslator.processChildElements(AbstractConfigElementTranslator.java:464)
    at com.ptc.windchill.explorer.config.server.AbstractConfigElementTranslator.translate(AbstractConfigElementTranslator.java:86)
    at com.ptc.core.logic.repository.common.LogicElement.translate(LogicElement.java:296)
    at com.ptc.windchill.explorer.config.server.AbstractConfigElementTranslator.processChildElements(AbstractConfigElementTranslator.java:464)
    at com.ptc.windchill.explorer.config.server.AbstractConfigElementTranslator.translate(AbstractConfigElementTranslator.java:86)
    at com.ptc.core.logic.repository.common.LogicElement.translate(LogicElement.java:296)
    at com.ptc.core.logic.repository.common.LogicRepository.translateLogicElement(LogicRepository.java:536)
    at com.ptc.core.logic.repository.common.LogicRepository.buildLogicPack2(LogicRepository.java:426)
    at com.ptc.core.logic.repository.common.LogicRepository.buildLogicPack(LogicRepository.java:379)
    at com.ptc.core.logic.repository.common.LogicRepository.buildLogicPacks(LogicRepository.java:334)
    at com.ptc.core.logic.repository.common.LogicRepository.loadLogicRepository(LogicRepository.java:92)
    - locked <0x00000000ef86f810> (a com.ptc.core.logic.repository.common.LogicRepository)
    at com.ptc.core.logic.repository.server.impl.ChangeLocator$LoadLogicRepositoryTask.run(ChangeLocator.java:310)
    at com.ptc.core.logic.repository.server.impl.ChangeLocator.loadLogicRepository(ChangeLocator.java:153)
    at com.ptc.core.logic.repository.server.impl.ChangeLocator.run(ChangeLocator.java:108)
    at com.ptc.core.logic.repository.server.impl.DefaultLogicRepositoryService.performStartupProcess(DefaultLogicRepositoryService.java:90)
    - locked <0x00000000e5bb2b90> (a com.ptc.core.logic.repository.server.impl.DefaultLogicRepositoryService)
    at wt.services.StandardManager.startup(StandardManager.java:459)
    - locked <0x00000000e5bb2b90> (a com.ptc.core.logic.repository.server.impl.DefaultLogicRepositoryService)
    at wt.services.ManagerImplementation.startup(ManagerImplementation.java:356)
    at wt.services.DefaultStartupHandler.startup(DefaultStartupHandler.java:112)
    at wt.services.StandardManagerService.performStartupProcess(StandardManagerService.java:166)
    - locked <0x00000000b04802d0> (a wt.services.StandardManagerService)
    at wt.services.StandardManager.startup(StandardManager.java:459)
    - locked <0x00000000b04802d0> (a wt.services.StandardManagerService)
    at wt.services.StandardServicesHandler.start(StandardServicesHandler.java:44)
    at wt.method.MethodServerMain.run(MethodServerMain.java:410)
    at wt.method.MethodServerMain.main(MethodServerMain.java:257)
  • Method server log keep re-iterating the same line below :
2022-04-11 09:29:31,321 INFO  [main] com.ptc.core.lwc.server.cache.ModeledTypeInitializationWorker$TypeInitializerRealWorker  - staticInit() Starting initTypeDefinitions()
2022-04-11 09:29:31,326 INFO  [main] com.ptc.core.lwc.server.cache.ModeledTypeInitializationWorker$TypeInitializerRealWorker  - staticInit() Finished initTypeDefinitions()
2022-04-11 09:29:31,491 INFO  [main] com.ptc.core.lwc.server.cache.ModeledTypeInitializationWorker$TypeInitializerRealWorker  - staticInit() Starting initTypeDefinitions()
2022-04-11 09:29:31,496 INFO  [main] com.ptc.core.lwc.server.cache.ModeledTypeInitializationWorker$TypeInitializerRealWorker  - staticInit() Finished initTypeDefinitions()
2022-04-11 09:29:31,552 INFO  [main] com.ptc.core.lwc.server.cache.ModeledTypeInitializationWorker$TypeInitializerRealWorker  - staticInit() Starting initTypeDefinitions()
2022-04-11 09:29:31,556 INFO  [main] com.ptc.core.lwc.server.cache.ModeledTypeInitializationWorker$TypeInitializerRealWorker  - staticInit() Finished initTypeDefinitions()
2022-04-11 09:29:31,563 INFO  [main] com.ptc.core.lwc.server.cache.ModeledTypeInitializationWorker$TypeInitializerRealWorker  - staticInit() Starting initTypeDefinitions()
2022-04-11 09:29:31,567 INFO  [main] com.ptc.core.lwc.server.cache.ModeledTypeInitializationWorker$TypeInitializerRealWorker  - staticInit() Finished initTypeDefinitions()
  • MethodServer starts, but the StandardDeliveryService has ReadLock on TypeDefinitionCache, but is deadlocked with itself waiting forever for WriteLock:
"Thread-9" Id=311 prio=5 WAITING on lock=java.util.concurrent.locks.ReentrantReadWriteLock$NonfairSync@3a5aa359
      Blocked (cnt): 11; Waited (cnt): 1
      CPU nanos: 2468750000; User nanos: 2281250000; Bytes allocated: 160486248
      Method context: 4eiidyw5;l9d1zyt7;8396;sj6gij;8; DB session: 66
      % of 1 CPU used by context: 0.004297961407650897 (2468750000/57440022509400); Bytes allocated by context: 160483656
  at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
  at [email protected]/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
  at [email protected]/java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:885)
  at [email protected]/java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:917)
  at [email protected]/java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1240)
  at [email protected]/java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock.lock(ReentrantReadWriteLock.java:959)
  at app//com.ptc.core.lwc.server.cache.TypeDefinitionCacheLock.acquireWriteLock(TypeDefinitionCacheLock.java:153)
  at app//com.ptc.core.lwc.server.cache.TypeDefinitionCacheLock.acquireWriteLock(TypeDefinitionCacheLock.java:136)
  at app//com.ptc.core.lwc.server.cache.ModeledTypeInitializationWorker$TypeInitializerRealWorker.staticInit(ModeledTypeInitializationWorker.java:108)
  at app//com.ptc.core.lwc.server.cache.ModeledTypeInitializationWorker$TypeInitializerRealWorker.init(ModeledTypeInitializationWorker.java:185)
  at app//com.ptc.core.lwc.server.cache.ModeledTypeInitializationWorker.ensureInitTypeDefsRRun(ModeledTypeInitializationWorker.java:85)
  at jdk.internal.reflect.GeneratedMethodAccessor112.invoke(Unknown Source)
  at [email protected]/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  at [email protected]/java.lang.reflect.Method.invoke(Method.java:566)
  at app//com.ptc.core.meta.type.mgmt.server.impl.service.WTTypeManagementDBService.invokeTypeDefInitWorker(WTTypeManagementDBService.java:3287)
  at app//com.ptc.core.meta.type.mgmt.server.impl.service.WTTypeManagementDBService._initTypeDefinitions(WTTypeManagementDBService.java:3272)
  at app//com.ptc.core.meta.type.mgmt.server.impl.service.WTTypeManagementDBService.refreshOriginalTypeDefinition(WTTypeManagementDBService.java:369)
  at app//com.ptc.core.meta.type.mgmt.server.impl.StandardTypeDefinitionCacheManager.getNodeFromService(StandardTypeDefinitionCacheManager.java:58)
  at app//com.ptc.core.meta.type.mgmt.server.impl.AbstractTypeDefinitionCacheManager.getBranchId(AbstractTypeDefinitionCacheManager.java:684)
  at app//com.ptc.core.meta.type.mgmt.server.impl.AbstractTypeDefinitionCache.getTypeDefinition(AbstractTypeDefinitionCache.java:294)
  at app//com.ptc.core.meta.type.runtime.server.impl.virtual.VirtualTypeModel.getTypeIdentifier(VirtualTypeModel.java:312)
  at app//com.ptc.core.meta.type.runtime.server.impl.integrated.StandardTypeModel.getTypeIdentifier(StandardTypeModel.java:435)
  at app//com.ptc.core.meta.type.mgmt.server.impl.TypedUtilityImplementation.getTypeIdentifier(TypedUtilityImplementation.java:416)
  at app//wt.type.TypedUtility.getTypeIdentifier(TypedUtility.java:258)
  at app//com.ptc.core.meta.type.mgmt.server.impl.service.StandardTypedUtilityService.getTypeIdentifier(StandardTypedUtilityService.java:158)
  at [email protected]/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  at [email protected]/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
  at [email protected]/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  at [email protected]/java.lang.reflect.Method.invoke(Method.java:566)
  at app//wt.services.ServiceFactory$ServerInvocationHandler.invoke(ServiceFactory.java:399)
  at app//com.sun.proxy.$Proxy116.getTypeIdentifier(Unknown Source)
  at app//wt.type.ClientTypedUtility.getTypeIdentifier(ClientTypedUtility.java:226)
  at app//com.ptc.windchill.enterprise.requirement.RequirementConstants.<clinit>(RequirementConstants.java:97)
  at app//com.ptc.windchill.enterprise.requirement.RemaFacadeImpl.init(RemaFacadeImpl.java:59)
  at app//com.ptc.windchill.enterprise.requirement.RemaFacadeImpl.<clinit>(RemaFacadeImpl.java:53)
  at [email protected]/java.lang.Class.forName0(Native Method)
  at [email protected]/java.lang.Class.forName(Class.java:315)
  at app//wt.services.ac.impl.DefaultServiceImplementation.getImplementationClass(DefaultServiceImplementation.java:204)
  at app//wt.services.ac.impl.DefaultServiceImplementation.getService(DefaultServiceImplementation.java:73)
  at app//wt.services.ac.impl.DefaultACServiceProvider.getService(DefaultACServiceProvider.java:470)
  at app//wt.services.ac.impl.DefaultACServiceProvider.getService(DefaultACServiceProvider.java:163)
  at app//wt.services.ac.impl.DefaultACServices.getService(DefaultACServices.java:209)
  at app//wt.services.applicationcontext.ACServicesAdapter.getService(ACServicesAdapter.java:210)
  at app//wt.services.applicationcontext.implementation.DefaultServiceProvider.getService(DefaultServiceProvider.java:132)
  at app//wt.services.applicationcontext.implementation.DefaultServiceProvider.getService(DefaultServiceProvider.java:190)
  at app//wt.facade.rema.RemaFacade$Singleton.<clinit>(RemaFacade.java:43)
  at app//wt.facade.rema.RemaFacade.getInstance(RemaFacade.java:62)
  at app//com.ptc.core.meta.type.mgmt.client.impl.association.AssociationConstraintsManagerHelper.<clinit>(AssociationConstraintsManagerHelper.java:54)
  at app//com.ptc.core.lwc.server.cache.RelationshipConstraintsHelper.translateRelationshipConstraintsToViews(RelationshipConstraintsHelper.java:202)
  at app//com.ptc.core.lwc.server.cache.TypeDefinitionManager.translateTypeDefToView(TypeDefinitionManager.java:2635)
  at app//com.ptc.core.lwc.server.cache.TypeDefinitionManager.retrieveAndCacheType(TypeDefinitionManager.java:456)
  at app//com.ptc.core.lwc.server.cache.TypeDefinitionManager.getTypeDefView(TypeDefinitionManager.java:407)
  at app//com.ptc.core.lwc.server.cache.factory.TypeDefinitionViewFactory.getTypeDefRV(TypeDefinitionViewFactory.java:374)
  at app//com.ptc.core.lwc.server.cache.factory.TypeDefinitionViewFactory.newTypeDefinitionView(TypeDefinitionViewFactory.java:242)
  at app//com.ptc.core.lwc.server.cache.TypeDefinitionManager.translateTypeDefToView(TypeDefinitionManager.java:2624)
  at app//com.ptc.core.lwc.server.cache.TypeDefinitionManager.retrieveAndCacheType(TypeDefinitionManager.java:566)
  at app//com.ptc.core.lwc.server.cache.TypeDefinitionManager.getTypeDefView(TypeDefinitionManager.java:708)
  at app//com.ptc.core.lwc.server.StandardTypeDefinitionService.getTypeDefView(StandardTypeDefinitionService.java:486)
  at [email protected]/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  at [email protected]/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
  at [email protected]/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  at [email protected]/java.lang.reflect.Method.invoke(Method.java:566)
  at app//wt.services.ServiceFactory$ServerInvocationHandler.invoke(ServiceFactory.java:399)
  at app//com.sun.proxy.$Proxy25.getTypeDefView(Unknown Source)
  at app//com.ptc.netmarkets.wp.StandardNmPackageService.isDowngradeDeliveryExists(StandardNmPackageService.java:674)
  at app//com.ptc.netmarkets.wp.StandardNmPackageService.showDowngradeView(StandardNmPackageService.java:591)
  at [email protected]/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  at [email protected]/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
  at [email protected]/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  at [email protected]/java.lang.reflect.Method.invoke(Method.java:566)
  at app//wt.services.ServiceFactory$ServerInvocationHandler.invoke(ServiceFactory.java:399)
  at app//com.sun.proxy.$Proxy113.showDowngradeView(Unknown Source)
  at app//com.ptc.windchill.wp.delivery.StandardDeliveryService.changeViewStateForSyncDowngradeViews(StandardDeliveryService.java:2226)
  at app//com.ptc.windchill.wp.delivery.StandardDeliveryService$6.run(StandardDeliveryService.java:2189)
    - locked com.ptc.windchill.wp.delivery.StandardDeliveryService$6@2b439c5c



 
This is a printer-friendly version of Article 248581 and may be out of date. For the latest version click CS248581