Welcome to the Inedo Forums! Check out the Forums Guide for help getting started.

If you are experiencing any issues with the forum software, please visit the Contact Form on our website and let us know!

SQL error while reading/re-indexing the Directory Assets



  • Hello,

    while trying to access the asset or re-index, we receive the following error:

    INFO : 2025-02-25 16:13:57Z - Performing verification for Asset feed 3: ToolChainAssets
    INFO : 2025-02-25 16:13:57Z - Deactivating feed.
    INFO : 2025-02-25 16:13:57Z - Re-activating feed.
    ERROR: 2025-02-25 16:13:57Z - Unhandled exception: Microsoft.Data.SqlClient.SqlException (0x80131904): FOR XML konnte die Daten für den CreatedBy_User_Name-Knoten nicht serialisieren, weil ein in XML unzulässiges Zeichen (0x0000) enthalten ist. Um diese Daten mithilfe von FOR XML abzurufen, konvertieren Sie sie in den Datentyp "binary", "varbinary" oder "image", und verwenden Sie die BINARY BASE64-Direktive.
       at Microsoft.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
       at Microsoft.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
       at Microsoft.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
       at Microsoft.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
       at Microsoft.Data.SqlClient.SqlDataReader.TryConsumeMetaData()
       at Microsoft.Data.SqlClient.SqlDataReader.get_MetaData()
       at Microsoft.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString, Boolean isInternal, Boolean forDescribeParameterEncryption, Boolean shouldCacheForAlwaysEncrypted)
       at Microsoft.Data.SqlClient.SqlCommand.CompleteAsyncExecuteReader(Boolean isInternal, Boolean forDescribeParameterEncryption)
       at Microsoft.Data.SqlClient.SqlCommand.EndExecuteReaderInternal(IAsyncResult asyncResult)
       at Microsoft.Data.SqlClient.SqlCommand.EndExecuteReaderAsync(IAsyncResult asyncResult)
       at System.Threading.Tasks.TaskFactory`1.FromAsyncCoreLogic(IAsyncResult iar, Func`2 endFunction, Action`1 endAction, Task`1 promise, Boolean requiresSynchronization)
    --- End of stack trace from previous location ---
       at Inedo.Data.SqlServerDatabaseContext.SqlServerCommand.ExecuteReaderAsync(CancellationToken cancellationToken)
       at Inedo.Data.DatabaseContext.DbResult.CreateAsync(IGenericDbCommand command, DatabaseContext context, DateTimeOffset startTime, Stopwatch stopwatch)
       at Inedo.Data.DatabaseContext.ExecuteInternalAsync(String storedProcName, GenericDbParameter[] parameters, DatabaseCommandReturnType returnType)
       at Inedo.Data.SqlServerDatabaseContext.ExecuteInternalAsync(String storedProcName, GenericDbParameter[] parameters, DatabaseCommandReturnType returnType)
       at Inedo.Data.DatabaseContext.ExecuteNonQueryAsync(String storedProcName, GenericDbParameter[] parameters)
       at Inedo.Data.DatabaseContext.ExecuteScalarAsync[TResult](String storedProcName, GenericDbParameter[] parameters, Int32 outParameterIndex)
       at Inedo.ProGet.Feeds.Assets.AssetFeed.EnsureDirectoryAsync(String fullPath, Nullable`1 created, Nullable`1 modified, IEnumerable`1 userMetadata)
       at Inedo.ProGet.Feeds.Assets.AssetFeed.EnsureDirectoryAsync(String fullPath, Nullable`1 created, Nullable`1 modified, IEnumerable`1 userMetadata)
       at Inedo.ProGet.Feeds.Assets.AssetFeed.<>c__DisplayClass53_0.<<VerifyFeedAsync>g__checkDirAsync|1>d.MoveNext()
    --- End of stack trace from previous location ---
       at Inedo.ProGet.Feeds.Assets.AssetFeed.<>c__DisplayClass53_0.<<VerifyFeedAsync>g__checkDirAsync|1>d.MoveNext()
    --- End of stack trace from previous location ---
       at Inedo.ProGet.Feeds.Assets.AssetFeed.<>c__DisplayClass53_0.<<VerifyFeedAsync>g__checkDirAsync|1>d.MoveNext()
    --- End of stack trace from previous location ---
       at Inedo.ProGet.Feeds.Assets.AssetFeed.VerifyFeedAsync(IFeedVerificationContext context, CancellationToken cancellationToken)
       at Inedo.ProGet.Executions.VerifyFeedExecution.ExecuteAsync(IManualExecutionContext context)
       at Inedo.ProGet.Executions.VerifyFeedExecution.ExecuteAsync(IManualExecutionContext context)
       at Inedo.ProGet.Service.Executions.ActiveManualExecution.ExecuteAsync()
    ClientConnectionId:1cd23f85-8aa0-4309-b006-edd39297c935
    Error Number:6841,State:1,Class:16
    

    This seems to happen after the update to version 24.0.24, but unfortunately, I'm not 100% sure because we don't use this very often.

    We are currently running version 24.0.27 and the problem is still there.

    Best Regards,
    Pedro


  • inedo-engineer

    Hi @pmsensi,

    Thanks for bringing this to our attention. I believe I see what the issue is, but I would like to confirm the issue. Would you be able to run the following query to get me a list of created by names so I can test it locally?

    SELECT DISTINCT [CreatedBy_User_Name]
      FROM [AssetItems]
    

    If you do not feel comfortable posting it to the forums, you can email the output to support@inedo.com with the subject of [QA-2618] and just let me know when it was sent. This way I can confirm what is needed for the fix.

    Thanks,
    Rich



  • @rhessinger

    I added the requested info to the opened ticket.

    Best Regards,
    Pedro



Inedo Website HomeSupport HomeCode of ConductForums GuideDocumentation