JDK-8270867 : Debug build of WebKit 613.1 fails on Linux
  • Type: Bug
  • Component: javafx
  • Sub-Component: web
  • Affected Version: 8,openjfx19
  • Priority: P3
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2021-07-17
  • Updated: 2022-05-02
  • Resolved: 2022-03-17
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 8 Other
8u341Fixed openjfx11.0.16Fixed
Related Reports
Blocks :  
Cloners :  
Duplicate :  
Relates :  
Relates :  
Description
The following was spotted in our weekly CI debug build on Oracle Linux 7.x:

$ gradle -PCONF=DebugNative -PCOMPILE_WEBKIT=true ... all
...
Scanning dependencies of target LowLevelInterpreterLib
[ 26%] Building CXX object Source/JavaScriptCore/CMakeFiles/LowLevelInterpreterLib.dir/llint/LowLevelInterpreter.cpp.o
.../jfx/modules/javafx.web/build/linux/Debug/DerivedSources/ForwardingHeaders/JavaScriptCore/Scripts/resolve-asm-file-conflicts.rb:89:in `parse': undefined method `/' for #<Pathname:working_directory> (NoMethodError)
	from .../jfx/modules/javafx.web/build/linux/Debug/DerivedSources/ForwardingHeaders/JavaScriptCore/Scripts/resolve-asm-file-conflicts.rb:129:in `test'
	from .../jfx/modules/javafx.web/build/linux/Debug/DerivedSources/ForwardingHeaders/JavaScriptCore/Scripts/resolve-asm-file-conflicts.rb:208:in `block in selftest'
	from .../jfx/modules/javafx.web/build/linux/Debug/DerivedSources/ForwardingHeaders/JavaScriptCore/Scripts/resolve-asm-file-conflicts.rb:207:in `each'
	from .../jfx/modules/javafx.web/build/linux/Debug/DerivedSources/ForwardingHeaders/JavaScriptCore/Scripts/resolve-asm-file-conflicts.rb:207:in `selftest'
	from .../jfx/modules/javafx.web/build/linux/Debug/DerivedSources/ForwardingHeaders/JavaScriptCore/Scripts/resolve-asm-file-conflicts.rb:398:in `<main>'
Error running cmd: pid 14478 exit 1
gmake[2]: *** [Source/JavaScriptCore/CMakeFiles/LowLevelInterpreterLib.dir/llint/LowLevelInterpreter.cpp.o] Error 1
gmake[1]: *** [Source/JavaScriptCore/CMakeFiles/LowLevelInterpreterLib.dir/all] Error 2
gmake: *** [all] Error 2

> Task :web:compileNativeLinux FAILED

I wasn't able to reproduce it locally on Ubuntu (16.04). It might be related to the version of ruby or some other tool on our build machine.
Comments
A pull request was submitted for review. URL: https://git.openjdk.java.net/jfx17u/pull/48 Date: 2022-04-29 17:14:21 +0000
29-04-2022

A pull request was submitted for review. URL: https://git.openjdk.java.net/jfx11u/pull/91 Date: 2022-04-28 17:52:40 +0000
28-04-2022

Changeset: eb7fa5dd Author: Peter Zhelezniakov <peterz@openjdk.org> Date: 2022-03-17 07:40:39 +0000 URL: https://git.openjdk.java.net/jfx/commit/eb7fa5dd1c0911bca15576060691d884d29895a1
17-03-2022

A pull request was submitted for review. URL: https://git.openjdk.java.net/jfx/pull/756 Date: 2022-03-16 07:54:57 +0000
16-03-2022

Now that we've updated to WebKit 613.1 in JDK-8278980 we are seeing additional failures in debug mode, only on Linux: In file included from jfx/modules/javafx.web/src/main/native/Source/WTF/wtf/StdLibExtras.h:32, from jfx/modules/javafx.web/src/main/native/Source/WTF/wtf/FastMalloc.h:26, from jfx/modules/javafx.web/src/main/native/Source/WTF/config.h:31, from jfx/modules/javafx.web/src/main/native/Source/WTF/wtf/linux/MemoryPressureHandlerLinux.cpp:28: jfx/modules/javafx.web/src/main/native/Source/WTF/wtf/linux/MemoryPressureHandlerLinux.cpp: In member function 'void WTF::MemoryPressureHandler::triggerMemoryPressureEvent(bool)': jfx/modules/javafx.web/src/main/native/Source/WTF/wtf/linux/MemoryPressureHandlerLinux.cpp:39:28: error: 'LogMemoryPressure' was not declared in this scope; did you mean 'isUnderMemoryPressure'? 39 | #define LOG_CHANNEL_PREFIX Log | ^~~ jfx/modules/javafx.web/src/main/native/Source/WTF/wtf/Assertions.h:175:63: note: in definition of macro 'JOIN_LOG_CHANNEL_WITH_PREFIX_LEVEL_2' 175 | #define JOIN_LOG_CHANNEL_WITH_PREFIX_LEVEL_2(prefix, channel) prefix ## channel | ^~~~~~ jfx/modules/javafx.web/src/main/native/Source/WTF/wtf/Assertions.h:172:27: note: in expansion of macro 'JOIN_LOG_CHANNEL_WITH_PREFIX' 172 | #define LOG_CHANNEL(name) JOIN_LOG_CHANNEL_WITH_PREFIX(LOG_CHANNEL_PREFIX, name) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ jfx/modules/javafx.web/src/main/native/Source/WTF/wtf/Assertions.h:172:56: note: in expansion of macro 'LOG_CHANNEL_PREFIX' 172 | #define LOG_CHANNEL(name) JOIN_LOG_CHANNEL_WITH_PREFIX(LOG_CHANNEL_PREFIX, name) | ^~~~~~~~~~~~~~~~~~ jfx/modules/javafx.web/src/main/native/Source/WTF/wtf/Assertions.h:495:35: note: in expansion of macro 'LOG_CHANNEL' 495 | #define LOG(channel, ...) WTFLog(&LOG_CHANNEL(channel), __VA_ARGS__) | ^~~~~~~~~~~ jfx/modules/javafx.web/src/main/native/Source/WTF/wtf/linux/MemoryPressureHandlerLinux.cpp:62:9: note: in expansion of macro 'LOG' 62 | LOG(MemoryPressure, "Got memory pressure notification (%s)", isCritical ? "critical" : "non-critical"); | ^~~ jfx/modules/javafx.web/src/main/native/Source/WTF/wtf/linux/MemoryPressureHandlerLinux.cpp:39:28: error: 'LogMemoryPressure' was not declared in this scope; did you mean 'isUnderMemoryPressure'? 39 | #define LOG_CHANNEL_PREFIX Log | ^~~ jfx/modules/javafx.web/src/main/native/Source/WTF/wtf/Assertions.h:175:63: note: in definition of macro 'JOIN_LOG_CHANNEL_WITH_PREFIX_LEVEL_2' 175 | #define JOIN_LOG_CHANNEL_WITH_PREFIX_LEVEL_2(prefix, channel) prefix ## channel | ^~~~~~ jfx/modules/javafx.web/src/main/native/Source/WTF/wtf/Assertions.h:172:27: note: in expansion of macro 'JOIN_LOG_CHANNEL_WITH_PREFIX' 172 | #define LOG_CHANNEL(name) JOIN_LOG_CHANNEL_WITH_PREFIX(LOG_CHANNEL_PREFIX, name) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ jfx/modules/javafx.web/src/main/native/Source/WTF/wtf/Assertions.h:172:56: note: in expansion of macro 'LOG_CHANNEL_PREFIX' 172 | #define LOG_CHANNEL(name) JOIN_LOG_CHANNEL_WITH_PREFIX(LOG_CHANNEL_PREFIX, name) | ^~~~~~~~~~~~~~~~~~ jfx/modules/javafx.web/src/main/native/Source/WTF/wtf/Assertions.h:495:35: note: in expansion of macro 'LOG_CHANNEL' 495 | #define LOG(channel, ...) WTFLog(&LOG_CHANNEL(channel), __VA_ARGS__) | ^~~~~~~~~~~ jfx/modules/javafx.web/src/main/native/Source/WTF/wtf/linux/MemoryPressureHandlerLinux.cpp:74:9: note: in expansion of macro 'LOG' 74 | LOG(MemoryPressure, "System is no longer under memory pressure."); | ^~~ gmake[2]: *** [Source/WTF/wtf/CMakeFiles/WTF.dir/linux/MemoryPressureHandlerLinux.cpp.o] Error 1 gmake[2]: *** Waiting for unfinished jobs.... gmake[1]: *** [Source/WTF/wtf/CMakeFiles/WTF.dir/all] Error 2 gmake: *** [all] Error 2 > Task :web:compileNativeLinux FAILED :web:compileNativeLinux (Thread[Execution worker for ':' Thread 3,5,main]) completed. Took 2 mins 53.449 secs. FAILURE: Build failed with an exception.
05-02-2022

Note that this doesn't affect the production build at all, since we don't produce or release any debug builds.
17-07-2021