- Status Closed
- Percent Complete
- Task Type Fehlerbericht
- Category GUI & Server
- Assigned To No-one
- Operating System Windows 11
- Severity Medium
- Reported Version 3.3 RC x
- Due in Version 3.3.0
-
Due Date
Undecided
- Votes
- Private
Attached to Project: DMXControl 3
Opened by fleckenzwerg84 - 31.12.2023
Last edited by LightningBrothers - 08.02.2024
Opened by fleckenzwerg84 - 31.12.2023
Last edited by LightningBrothers - 08.02.2024
FS#5233 - GUI wird bei fehlerhaften DDF geschlossen
Beim Laden des fehlerhaften angehängten DDFs werden sämtliche mit dem Kernel verbundenen GUIs ohne weitere Warnung/Meldung geschlossen (also nicht nur getrennt, sondern tatsächlich komplett geschlossen)
Bis einschließlich Version 3.2.3 wurde eine Fehlermeldung angezeigt und die fehlerhafte Zeile im DDF rot markiert, was hier nicht passiert.
Im Kernel wird folgende Meldung ausgegegen:
13:11:07 ERROR Resource_gClient - ExistsResourceCore Grpc.Core.RpcException: Status(StatusCode="Cancelled", Detail="Call canceled by the client.", DebugException="System.OperationCanceledException: The operation was canceled.") ---> System.OperationCanceledException: The operation was canceled. --- End of inner exception stack trace --- at Grpc.Net.Client.Internal.HttpClientCallInvoker.BlockingUnaryCall[TRequest,TResponse](Method`2 method, String host, CallOptions options, TRequest request) at Grpc.Core.Interceptors.InterceptingCallInvoker.<BlockingUnaryCall>b__3_0[TRequest,TResponse](TRequest req, ClientInterceptorContext`2 ctx) at Grpc.Core.ClientBase.ClientBaseConfiguration.ClientBaseConfigurationInterceptor.BlockingUnaryCall[TRequest,TResponse](TRequest request, ClientInterceptorContext`2 context, BlockingUnaryCallContinuation`2 continuation) at Grpc.Core.Interceptors.InterceptingCallInvoker.BlockingUnaryCall[TRequest,TResponse](Method`2 method, String host, CallOptions options, TRequest request) at UmbraCommon.ResourceClient.ResourceClientClient.ExistsResource(ResourceExistsRequest request, CallOptions options) in D:\Jenkins\workspace\Lumos_Pipeline_3.3\LumosProtobuf\obj\Release\netstandard2.0\Common\ResourceServiceGrpc.cs:line 202 at UmbraCommon.ResourceClient.ResourceClientClient.ExistsResource(ResourceExistsRequest request, Metadata headers, Nullable`1 deadline, CancellationToken cancellationToken) in D:\Jenkins\workspace\Lumos_Pipeline_3.3\LumosProtobuf\obj\Release\netstandard2.0\Common\ResourceServiceGrpc.cs:line 197 at org.dmxc.lumos.Kernel.Net.gService.Resource_gClient.ExistsResourceCore(EResourceDataType type, String name, Boolean sync) in D:\Jenkins\workspace\Lumos_Pipeline_3.3\LumosLIB\src\Kernel\Net\gService\Resource_gClient.cs:line 188 13:11:07 ERROR GobowheelHandlerNode - The Icon |:::_ICON_ID_2_:::| defined in the "val" Attribute in Node gobowheel doesn't exist! 13:11:10 ERROR Resource_gClient - ExistsResourceCore Grpc.Core.RpcException: Status(StatusCode="Cancelled", Detail="Call canceled by the client.", DebugException="System.OperationCanceledException: The operation was canceled.") ---> System.OperationCanceledException: The operation was canceled. --- End of inner exception stack trace --- at Grpc.Net.Client.Internal.HttpClientCallInvoker.BlockingUnaryCall[TRequest,TResponse](Method`2 method, String host, CallOptions options, TRequest request) at Grpc.Core.Interceptors.InterceptingCallInvoker.<BlockingUnaryCall>b__3_0[TRequest,TResponse](TRequest req, ClientInterceptorContext`2 ctx) at Grpc.Core.ClientBase.ClientBaseConfiguration.ClientBaseConfigurationInterceptor.BlockingUnaryCall[TRequest,TResponse](TRequest request, ClientInterceptorContext`2 context, BlockingUnaryCallContinuation`2 continuation) at Grpc.Core.Interceptors.InterceptingCallInvoker.BlockingUnaryCall[TRequest,TResponse](Method`2 method, String host, CallOptions options, TRequest request) at UmbraCommon.ResourceClient.ResourceClientClient.ExistsResource(ResourceExistsRequest request, CallOptions options) in D:\Jenkins\workspace\Lumos_Pipeline_3.3\LumosProtobuf\obj\Release\netstandard2.0\Common\ResourceServiceGrpc.cs:line 202 at UmbraCommon.ResourceClient.ResourceClientClient.ExistsResource(ResourceExistsRequest request, Metadata headers, Nullable`1 deadline, CancellationToken cancellationToken) in D:\Jenkins\workspace\Lumos_Pipeline_3.3\LumosProtobuf\obj\Release\netstandard2.0\Common\ResourceServiceGrpc.cs:line 197 at org.dmxc.lumos.Kernel.Net.gService.Resource_gClient.ExistsResourceCore(EResourceDataType type, String name, Boolean sync) in D:\Jenkins\workspace\Lumos_Pipeline_3.3\LumosLIB\src\Kernel\Net\gService\Resource_gClient.cs:line 188 13:11:10 ERROR GobowheelHandlerNode - The Icon |:::_ICON_ID_3_:::| defined in the "val" Attribute in Node gobowheel doesn't exist! 13:11:13 ERROR Resource_gClient - ExistsResourceCore Grpc.Core.RpcException: Status(StatusCode="Cancelled", Detail="Call canceled by the client.", DebugException="System.OperationCanceledException: The operation was canceled.") ---> System.OperationCanceledException: The operation was canceled. --- End of inner exception stack trace --- at Grpc.Net.Client.Internal.HttpClientCallInvoker.BlockingUnaryCall[TRequest,TResponse](Method`2 method, String host, CallOptions options, TRequest request) at Grpc.Core.Interceptors.InterceptingCallInvoker.<BlockingUnaryCall>b__3_0[TRequest,TResponse](TRequest req, ClientInterceptorContext`2 ctx) at Grpc.Core.ClientBase.ClientBaseConfiguration.ClientBaseConfigurationInterceptor.BlockingUnaryCall[TRequest,TResponse](TRequest request, ClientInterceptorContext`2 context, BlockingUnaryCallContinuation`2 continuation) at Grpc.Core.Interceptors.InterceptingCallInvoker.BlockingUnaryCall[TRequest,TResponse](Method`2 method, String host, CallOptions options, TRequest request) at UmbraCommon.ResourceClient.ResourceClientClient.ExistsResource(ResourceExistsRequest request, CallOptions options) in D:\Jenkins\workspace\Lumos_Pipeline_3.3\LumosProtobuf\obj\Release\netstandard2.0\Common\ResourceServiceGrpc.cs:line 202 at UmbraCommon.ResourceClient.ResourceClientClient.ExistsResource(ResourceExistsRequest request, Metadata headers, Nullable`1 deadline, CancellationToken cancellationToken) in D:\Jenkins\workspace\Lumos_Pipeline_3.3\LumosProtobuf\obj\Release\netstandard2.0\Common\ResourceServiceGrpc.cs:line 197 at org.dmxc.lumos.Kernel.Net.gService.Resource_gClient.ExistsResourceCore(EResourceDataType type, String name, Boolean sync) in D:\Jenkins\workspace\Lumos_Pipeline_3.3\LumosLIB\src\Kernel\Net\gService\Resource_gClient.cs:line 188 13:11:13 ERROR GobowheelHandlerNode - The Icon |:::_ICON_ID_4_:::| defined in the "val" Attribute in Node gobowheel doesn't exist! 13:11:13 ERROR GobowheelHandlerNode - The Icon |:::_ICON_ID_5_:::| defined in the "val" Attribute in Node gobowheel doesn't exist! 13:11:13 ERROR GobowheelHandlerNode - The Icon |:::_ICON_ID_6_:::| defined in the "val" Attribute in Node gobowheel doesn't exist! 13:11:13 ERROR GobowheelHandlerNode - The Icon |:::_ICON_ID_7_:::| defined in the "val" Attribute in Node gobowheel doesn't exist! 13:11:13 ERROR GobowheelHandlerNode - The Icon |:::_ICON_ID_8_:::| defined in the "val" Attribute in Node gobowheel doesn't exist!
Komplettes Log-Zip anhängen bitte
Dein auszug aus den Logs ist nicht die Ursache des Fehlers, ledigtlich ein Symptom
Habe das ganze mal nochmal nachgestellt. Tatsächlich ist der Fehler (bei mir) reproduzierbar.
Logdatei ist angehängt, konnte sie aber halt erst erstellen nachdem ich die GUI nach dem Crash wieder gestartet habe
Ein wirklich spannender und auch heftiger Fehler, über den du da gestolpert bist. Ich kann das Verhalten auch so bestätigten. Sobald ich beim Add Device Dialog auf "add" klicke, um das oben beigefügte DDF hinzuzufügen, stürzt die GUI ab.
Der Grund muss offenbar der Wert für val beim Gobo (Dateiname des Icons) sein. Sobald ich den ursprünglichen Wert
durch einen sinnvollen Dateinamen wie
ersetze, stürzt die GUI nicht mehr ab - egal ob die Datei vorhanden ist oder nicht.
@fleckenzwerg84: dass der Eintrag "corrupted DDFs" in diesem Fall nicht erscheint, liegt daran, dass das DDF grundsätzlich valide ist. Wenn es richtig laufen würde und die GUI nicht abstürzt, würde bei einem solchen DDF der bekannte Fehlerdialog kommen, in dem die Logik-Fehler bemängelt werden - hier also "Kein gültiger Dateiname angegeben".
Ok, ist gefixt.