Skip to content

Deadlock on startup #9490

Description

@rkeen-siemens

Apache NetBeans version

Apache NetBeans 30

What happened

There appears to be the potential for a deadlock on startup. The following stack traces are from an application based on the NetBeans Platform 29 intermittently on first run after starting the machine. I haven't been able to recompile using NetBeans Platform 30 or 31 yet, but will update this when I do. I thought it might be worth getting some feedback in the meantime.

Thread [main] (Suspended)	
	owns: Class<T> (org.openide.modules.Places) (id=32)	
	owns: Object  (id=33)	
	waiting for: MainLookup  (id=31)	
	MainLookup(ProxyLookup).lookup(Class<T>) line: 276	
	23 collapsed frames	
		Places.getCacheDirectory() line: 72	
		Stamps.fileImpl(String, int[], long) line: 627	
		Stamps.file(String, int[]) line: 176	
		Stamps.asByteBuffer(String, boolean, boolean) line: 181	
		Stamps.asStream(String) line: 141	
		LocaleVariants.<clinit>() line: 43	
		StandardModuleData.<init>(Manifest, StandardModule) line: 71	
		StandardModule.createData(ObjectInput, Manifest) line: 100	
		StandardModule(Module).dataWithCheck() line: 158	
		ModuleFactory.create(File, Object, boolean, boolean, boolean, ModuleManager, Events) line: 53	
		ModuleManager.create(File, Object, boolean, boolean, boolean) line: 821	
		ModuleList.createModule(File, ModuleHistory, boolean, boolean, boolean, Integer) line: 163	
		ModuleList$ReadInitial.run() line: 1646	
		EventControl.runAtomicAction(FileSystem$AtomicAction) line: 102	
		SystemFileSystem(FileSystem).runAtomicAction(FileSystem$AtomicAction) line: 494	
		ModuleList.readInitial() line: 147	
		ModuleSystem.readList() line: 283	
		Main.getModuleSystem(boolean) line: 172	
		Main.getModuleSystem() line: 142	
		Main.start(String[]) line: 303	
		TopThreadGroup.run() line: 97	
		Thread.runWith(Object, Runnable) line: 1487	
		Thread.run() line: 1474	
System Thread [Logging Flush] (Suspended)	
	owns: HashSet<E>  (id=34)	
	owns: ProxyLookup  (id=35)	
	owns: MainLookup  (id=31)	
	owns: MessagesHandler  (id=36)	
	waiting for: Object  (id=33)	
	FixedModule(Module).dataWithCheck() line: 140	
	34 collapsed frames	
		FixedModule(Module).data() line: 132	
		FixedModule(Module).getCodeNameBase() line: 260	
		FixedModule.toString() line: 246	
		String.valueOf(Object) line: 4530	
		StringBuilder.append(Object) line: 173	
		HashSet<E>(AbstractCollection<E>).toString() line: 459	
		String.valueOf(Object) line: 4530	
		Util$ModuleLookup.toString() line: 504	
		String.valueOf(Object) line: 4530	
		StringBuilder.append(Object) line: 173	
		Arrays$ArrayList<E>(AbstractCollection<E>).toString() line: 459	
		String.valueOf(Object) line: 4530	
		StringBuilder.append(Object) line: 173	
		ProxyLookup.toString() line: 91	
		String.valueOf(Object) line: 4530	
		StringBuilder.append(Object) line: 173	
		Arrays$ArrayList<E>(AbstractCollection<E>).toString() line: 459	
		String.valueOf(Object) line: 4530	
		StringBuilder.append(Object) line: 173	
		MainLookup(ProxyLookup).toString() line: 91	
		MessageFormat.subformat(Object[], StringBuf, FieldPosition, List<AttributedCharacterIterator>) line: 1539	
		MessageFormat.format(Object, Format$StringBuf, FieldPosition) line: 1093	
		MessageFormat(Format).format(Object) line: 165	
		MessageFormat.format(String, Object...) line: 1059	
		NbFormatter(Formatter).formatMessage(LogRecord) line: 141	
		NbFormatter.print(StringBuilder, LogRecord, Set<Throwable>) line: 59	
		NbFormatter.format(LogRecord) line: 45	
		MessagesHandler(StreamHandler).publish(LogRecord) line: 207	
		MessagesHandler.publish(LogRecord) line: 115	
		DispatchingHandler.run() line: 152	
		RequestProcessor$Task.run() line: 1519	
		GlobalLookup.execute(Lookup, Runnable) line: 45	
		Lookups.executeWith(Lookup, Runnable) line: 287	
		RequestProcessor$Processor.run() line: 2141

Language / Project Type / NetBeans Component

NetBeans Platform Application

How to reproduce

Launch an application based on the NetBeans Platform. Most often occurs on first launch after the machine startup.

Did this work correctly in an earlier version?

Apache NetBeans 28

Operating System

Windows 10

JDK

Eclipse Temurin 25.0.1+8

Apache NetBeans packaging

Apache NetBeans platform

Anything else

Occurs intermittently, most commonly on first launch after machine start

Are you willing to submit a pull request?

No

Metadata

Metadata

Assignees

No one assigned

    Labels

    Platform[ci] enable platform tests (platform/*)kind:bugBug report or fixneeds:triageRequires attention from one of the committerspending-responseAwaiting further information to be supplied

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions