RFR: 8343398: Add reducedData preference [v6]
Kevin Rushforth
kcr at openjdk.org
Wed Dec 18 19:28:41 UTC 2024
On Thu, 12 Dec 2024 01:03:26 GMT, Michael Strauß <mstrauss at openjdk.org> wrote:
>> The `reducedData` preference instructs applications to minimize internet traffic, as users might be on a metered network or a limited data plan.
>>
>> This corresponds to the following OS settings:
>>
>> Windows: Settings -> Network and Internet -> Ethernet/WiFi -> Metered connection
>> macOS: Settings -> Network -> Ethernet/WiFi -> Network Settings -> Low data mode
>> Ubuntu: Settings -> Network -> Wired/WiFi -> Metered connection
>>
>> Change notifications work consistently on Windows and macOS. On my Ubuntu 24 system, the GIO `network-changed` signal is not sent when I only toggle the "metered connection" flag in network settings (and there's no signal specifically for low-data mode). The new value is only picked up when the connection changes by coming offline or going online.
>
> Michael Strauß has updated the pull request incrementally with one additional commit since the last revision:
>
> formatting
I ran a CI build and noticed a crash in two test methods in one of our headful tests on macOS. Both of them use AWT as well as JavaFX, and given the error, I suspect that is relevant.
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[ApplicationDelegate getPlatformPreferences]: unrecognized selector sent to instance 0x6000030c0880'
*** First throw call stack:
(
0 CoreFoundation 0x0000000182730570 __exceptionPreprocess + 176
1 libobjc.A.dylib 0x0000000182221eb4 objc_exception_throw + 60
2 CoreFoundation 0x00000001827e212c -[NSObject(NSObject) __retain_OA] + 0
3 CoreFoundation 0x000000018269a7d4 ___forwarding___ + 1572
4 CoreFoundation 0x000000018269a0f0 _CF_forwarding_prep_0 + 96
5 ??? 0x00000001125fcfd4 0x0 + 4603236308
6 ??? 0x00000001125f8ea0 0x0 + 4603219616
7 ??? 0x00000001125f9110 0x0 + 4603220240
8 ??? 0x00000001125f9110 0x0 + 4603220240
9 ??? 0x00000001125f96b0 0x0 + 4603221680
10 ??? 0x00000001125f9110 0x0 + 4603220240
11 ??? 0x00000001125f96b0 0x0 + 4603221680
12 ??? 0x00000001125f9110 0x0 + 4603220240
13 ??? 0x00000001125f4114 0x0 + 4603199764
14 libjvm.dylib 0x0000000101e34e24 _ZN9JavaCalls11call_helperEP9JavaValueRK12methodHandleP17JavaCallArgumentsP10JavaThread + 984
15 libjvm.dylib 0x0000000101ea5e1c _ZL20jni_invoke_nonstaticP7JNIEnv_P9JavaValueP8_jobject11JNICallTypeP10_jmethodIDP18JNI_ArgumentPusherP10JavaThread + 992
16 libjvm.dylib 0x0000000101eaa844 jni_CallVoidMethod + 284
17 libglass.dylib 0x000000013570164c JNI_OnLoad + 1036
18 libglass.dylib 0x00000001357031ac JNI_OnLoad + 8044
19 Foundation 0x00000001837e1298 __NSThreadPerformPerform + 264
20 CoreFoundation 0x00000001826bba4c __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 28
21 CoreFoundation 0x00000001826bb9e0 __CFRunLoopDoSource0 + 176
22 CoreFoundation 0x00000001826bb750 __CFRunLoopDoSources0 + 244
23 CoreFoundation 0x00000001826ba340 __CFRunLoopRun + 828
24 CoreFoundation 0x00000001826b99ac CFRunLoopRunSpecific + 608
25 HIToolbox 0x000000018cc68448 RunCurrentEventLoopInMode + 292
26 HIToolbox 0x000000018cc68284 ReceiveNextEventCommon + 648
27 HIToolbox 0x000000018cc67fdc _BlockUntilNextEventMatchingListInModeWithFilter + 76
28 AppKit 0x0000000185e968a4 _DPSNextEvent + 660
29 AppKit 0x0000000186670980 -[NSApplication(NSEventRouting) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 716
30 libosxapp.dylib 0x00000001007ab748 -[NSApplicationAWT nextEventMatchingMask:untilDate:inMode:dequeue:] + 136
31 AppKit 0x0000000185e89d50 -[NSApplication run] + 476
32 libosxapp.dylib 0x00000001007ab568 +[NSApplicationAWT runAWTLoopWithApp:] + 132
33 libawt_lwawt.dylib 0x0000000131062f5c +[AWTStarter starter:headless:] + 376
34 libosxapp.dylib 0x00000001007acd88 +[ThreadUtilities invokeBlockCopy:] + 28
35 Foundation 0x00000001837e1298 __NSThreadPerformPerform + 264
36 CoreFoundation 0x00000001826bba4c __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 28
37 CoreFoundation 0x00000001826bb9e0 __CFRunLoopDoSource0 + 176
38 CoreFoundation 0x00000001826bb750 __CFRunLoopDoSources0 + 244
39 CoreFoundation 0x00000001826ba340 __CFRunLoopRun + 828
40 CoreFoundation 0x00000001826b99ac CFRunLoopRunSpecific + 608
41 libjli.dylib 0x00000001008a0e84 CreateExecutionEnvironment + 404
42 libjli.dylib 0x000000010089c984 JLI_Launch + 1152
43 java 0x000000010040fbb4 main + 404
44 dyld 0x000000018225d0e0 start + 2360
)
libc++abi: terminating due to uncaught exception of type NSException
> Task :systemTests:test
MainLauncherTest > testMainLauncher(TestData) > [7] test.launchertest.MainLauncherTest$TestData at 63fbfaeb FAILED
org.opentest4j.AssertionFailedError: test.launchertest.TestStartupJFXPanel: Unexpected error exit: 134
at app//org.junit.jupiter.api.AssertionUtils.fail(AssertionUtils.java:38)
at app//org.junit.jupiter.api.Assertions.fail(Assertions.java:138)
at app//test.launchertest.MainLauncherTest.testMainLauncher(MainLauncherTest.java:231)
I'm also seeing some failures (color mismatches) in other tests, but I don't know if those are related your to your PR or not -- it seems unlikely that they would be, but I need to check.
-------------
PR Comment: https://git.openjdk.org/jfx/pull/1656#issuecomment-2552104844
More information about the openjfx-dev
mailing list