Bugtracker DMXControl 3

  • Status Closed
  • Percent Complete
    100%
  • 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

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!
Closed by  LightningBrothers
08.02.2024 08:15
Reason for closing:  Repariert
Project Manager
Qasi commented on 31.12.2023 14:52

Komplettes Log-Zip anhängen bitte
Dein auszug aus den Logs ist nicht die Ursache des Fehlers, ledigtlich ein Symptom

fleckenzwerg84 commented on 01.01.2024 10:29

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

LightningBrothers commented on 01.01.2024 12:52

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

  |:::_ICON_ID_2_:::|

durch einen sinnvollen Dateinamen wie

  Gobo 1.png

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".

Project Manager
Soon5 commented on 22.01.2024 21:19

Ok, ist gefixt.

Loading...

Available keyboard shortcuts

Tasklist

Task Details

Task Editing