Universal printer is registered but cannot be shared

Derek Heiser 0 Reputation points
2026-10-14T16:20:28.87+00:00

I am migrating my organization to Universal Print and, after registering a printer I went to share it. During the sharing process, it threw this error in the notification window:

Sharing printer "a4037040-0719-4967-9ca1-1dae24a44141" failed.
{
  "Level": 1,
  "Type": "Microsoft.Griffin.Sdk.InternalGriffinCore.SubstrateServiceException",
  "Message": "Code: timeout\r\nMessage: The request timed out.\r\n",
  "StackTrace": "   at Microsoft.Falcon.DataStore.Sds.ItemsApiSdsClient.<>c__DisplayClass10_0`1.<<UpdateItemAsync>b__0>d.MoveNext() in C:\\a\\_work\\1\\s\\libraries\\DataStore\\src\\Runtime\\Sds\\ItemsApiSdsClient.cs:line 632\r\n--- End of stack trace from previous location ---\r\n   at Microsoft.Falcon.DataStore.Sds.SubstrateApiSdsClientBase.ExecuteOperationWithRetryAsync[T](Func`3 operation, Int32 maxWaitTimeForSdsRequestInSeconds) in C:\\a\\_work\\1\\s\\libraries\\DataStore\\src\\Runtime\\Sds\\SubstrateApiSdsClientBase.cs:line 147\r\n   at Microsoft.Falcon.DataStore.Sds.SubstrateApiSdsClientBase.ExecuteOperationWithRetryAsync[T](Func`3 operation, Int32 maxWaitTimeForSdsRequestInSeconds) in C:\\a\\_work\\1\\s\\libraries\\DataStore\\src\\Runtime\\Sds\\SubstrateApiSdsClientBase.cs:line 197\r\n   at Microsoft.Falcon.DataStore.Sds.ItemsApiSdsClient.UpdateItemAsync[T](T itemInfo, String itemId, String collectionName, SdsShard sdsShard) in C:\\a\\_work\\1\\s\\libraries\\DataStore\\src\\Runtime\\Sds\\ItemsApiSdsClient.cs:line 529\r\n   at Microsoft.Falcon.DataStore.Sds.SubstrateStorageProvider.UpdateItemAsync[T](T itemInfo, String itemId, String collectionName, SdsShard sdsShard) in C:\\a\\_work\\1\\s\\libraries\\DataStore\\src\\Runtime\\Sds\\SubstrateStorageProvider.cs:line 199\r\n   at Microsoft.Falcon.DataStore.StorageHandlers.Substrate.SubstratePrinterStorageHandler.UpdatePrinterObjectAsync(PrinterObject printerObject, String tenantId, Boolean commonShardUpdateRequired, Int32 updateCommonShardAfterThisNumberOfSeconds) in C:\\a\\_work\\1\\s\\libraries\\DataStore\\src\\Runtime\\StorageHandlers\\Substrate\\SubstratePrinterStorageHandler.cs:line 400\r\n   at Microsoft.Falcon.MPSIPPService.Storage.BaseStorageContainer.UpdatePrinterObjectAsync(PrinterObject printerObject, String tenantId, Boolean commonShardUpdateRequired, Int32 updateCommonShardAfterThisNumberOfSeconds) in C:\\a\\_work\\1\\s\\services\\MPSIPPService\\src\\Service\\Storage\\BaseStorageContainer.cs:line 120\r\n   at Microsoft.Falcon.MPSIPPService.Utilities.Common.UpdatePrinterObjectAsync(PrinterObject printer, String tenantId, Boolean commonShardUpdateRequired, Boolean useCommonShardThrottling) in C:\\a\\_work\\1\\s\\services\\MPSIPPService\\src\\Service\\Utilities\\Common.cs:line 548\r\n   at Microsoft.Falcon.MPSIPPService.Utilities.PrinterShareRequestHandler.SetPrinterShareState(PrinterObject printer, String tenantId, Boolean isShare, String shareName, String shareId, Boolean allowAllUsers, Boolean holdJobsForSecureRelease, IFeatureManagerSnapshot featureManager) in C:\\a\\_work\\1\\s\\services\\MPSIPPService\\src\\Service\\Utilities\\PrinterShareRequestHandler.cs:line 2153\r\n   at Microsoft.Falcon.MPSIPPService.Utilities.PrinterShareRequestHandler.SharePrinter(AzureUserInfo userInfo, String cloudDeviceId, String sharedPrinterName, Boolean allowAllUsers, Nullable`1 holdJobsForSecureRelease, HttpContext httpContext, String serializedUserAdminUnits, Boolean isPullPrintShareRequest) in C:\\a\\_work\\1\\s\\services\\MPSIPPService\\src\\Service\\Utilities\\PrinterShareRequestHandler.cs:line 331\r\n   at Microsoft.Falcon.MPSIPPService.Utilities.PrinterShareRequestHandler.SharePrinter(AzureUserInfo userInfo, String cloudDeviceId, String sharedPrinterName, Boolean allowAllUsers, Nullable`1 holdJobsForSecureRelease, HttpContext httpContext, String serializedUserAdminUnits, Boolean isPullPrintShareRequest) in C:\\a\\_work\\1\\s\\services\\MPSIPPService\\src\\Service\\Utilities\\PrinterShareRequestHandler.cs:line 369\r\n   at Microsoft.Falcon.MPSIPPService.Utilities.PrinterShareRequestHandler.SharePrinter(AzureUserInfo userInfo, String cloudDeviceId, String sharedPrinterName, Boolean allowAllUsers, Nullable`1 holdJobsForSecureRelease, HttpContext httpContext, String serializedUserAdminUnits, Boolean isPullPrintShareRequest) in C:\\a\\_work\\1\\s\\services\\MPSIPPService\\src\\Service\\Utilities\\PrinterShareRequestHandler.cs:line 386\r\n   at Microsoft.Falcon.MPSIPPService.Services.Internal.MPSIPPServiceManagement.CreatePrinterShare(CreatePrinterShareRequest input, IAuthenticationContext authContext, AzureUserInfo claimInfo) in C:\\a\\_work\\1\\s\\services\\MPSIPPService\\src\\Service\\Services\\Internal\\MPSIPPServiceManagement.cs:line 5019\r\n   at Microsoft.Falcon.MPSIPPService.Services.Internal.MPSIPPServiceManagement.CreatePrinterShare(CreatePrinterShareRequest input, IAuthenticationContext authContext, CancellationToken cancellationToken) in C:\\a\\_work\\1\\s\\services\\MPSIPPService\\src\\Service\\Services\\Internal\\MPSIPPServiceManagement.cs:line 526",
  "InnerException": {
    "Level": 2,
    "Type": "System.Threading.Tasks.TaskCanceledException",
    "Message": "The operation was canceled.",
    "StackTrace": "   at System.Net.Http.HttpClient.HandleFailure(Exception e, Boolean telemetryStarted, HttpResponseMessage response, CancellationTokenSource cts, CancellationToken cancellationToken, CancellationTokenSource pendingRequestsCts)\r\n   at System.Net.Http.HttpClient.<SendAsync>g__Core|83_0(HttpRequestMessage request, HttpCompletionOption completionOption, CancellationTokenSource cts, Boolean disposeCts, CancellationTokenSource pendingRequestsCts, CancellationToken originalCancellationToken)\r\n   at Microsoft.M365.Storage.SdsClient.HttpExecutor`1.SendAsync(TRequestContext requestContext, HttpRequestMessage request, HttpCompletionOption completionOption, CancellationToken cancellationToken)\r\n   at Microsoft.M365.Storage.SdsClient.HttpOperation`2.<>c__DisplayClass19_0.<<GetHttpResponseMessageAsync>b__0>d.MoveNext() in F:\\dbs\\el\\8cb5\\sources\\SdsClient\\Sds.Client.Implementation\\dev\\HttpOperation.cs:line 259\r\n--- End of stack trace from previous location ---\r\n   at Microsoft.M365.Storage.SdsClient.HandlerHelper.DoWithTimeoutHandling[TValue](String requestUri, Func`1 operation)\r\n   at Microsoft.M365.Storage.SdsClient.HttpOperation`2.GetHttpResponseMessageAsync(IShardAccessor shardAccessor, TArg arg, IEnumerable`1 requestContext, IDictionary`2 requestOptions, CancellationToken cancellationToken) in F:\\dbs\\el\\8cb5\\sources\\SdsClient\\Sds.Client.Implementation\\dev\\HttpOperation.cs:line 194\r\n   at Microsoft.M365.Storage.SdsClient.HttpOperation`2.HandleAsync(IShardAccessor shardAccessor, TArg arg, IEnumerable`1 requestContext, IDictionary`2 requestOptions, CancellationToken cancellationToken) in F:\\dbs\\el\\8cb5\\sources\\SdsClient\\Sds.Client.Implementation\\dev\\HttpOperation.cs:line 148\r\n   at Microsoft.M365.Storage.SdsClient.OdataClient.UpdateItemReturnCopyAsync[TItem](IShardAccessor shardAccessor, String collectionId, String itemId, TItem itemToUpdate, String eTag, IEnumerable`1 requestContext, IDictionary`2 requestOptions, CancellationToken cancellationToken, String select)\r\n   at Microsoft.M365.Storage.SdsClient.MeasuredClient.UpdateItemReturnCopyAsync[TItem](IShardAccessor shardAccessor, String collectionId, String itemId, TItem item, String eTag, IEnumerable`1 requestContext, IDictionary`2 requestOptions, CancellationToken cancellationToken, String select)\r\n   at Microsoft.M365.Storage.SdsClient.ODataRequestHandler.UpdateReturnContentAsync[TValue](ISdsRequestContext requestContext, TValue value, CancellationToken cancellationToken)\r\n   at Microsoft.M365.Storage.SdsClient.ShadowingRequestHandler`3.UpdateReturnContentAsync[TContent](TRequestContext requestContext, TContent content, CancellationToken cancellationToken)\r\n   at Microsoft.M365.Storage.SdsClient.FlightingRequestHandler`3.UpdateReturnContentAsync[TValue](TRequestContext requestContext, TValue value, CancellationToken cancellationToken)\r\n   at Microsoft.M365.Storage.SdsClient.MeasuredRequestHandler`2.UpdateReturnContentAsync[TValue](TRequestContext requestContext, TValue value, CancellationToken cancellationToken)\r\n   at Microsoft.M365.Storage.SdsClient.RoutingDiscreteClient.UpdateItemReturnCopyAsync[TItem](IShardAccessor shardAccessor, String collectionId, String itemId, TItem item, String eTag, IEnumerable`1 discreteHeaders, IDictionary`2 requestOptions, CancellationToken cancellationToken, String select)\r\n   at Microsoft.Falcon.DataStore.Sds.ItemsApiSdsClient.<>c__DisplayClass10_0`1.<<UpdateItemAsync>b__0>d.MoveNext() in C:\\a\\_work\\1\\s\\libraries\\DataStore\\src\\Runtime\\Sds\\ItemsApiSdsClient.cs:line 539",
    "InnerException": {
      "Level": 3,
      "Type": "System.Threading.Tasks.TaskCanceledException",
      "Message": "The operation was canceled.",
      "StackTrace": "   at System.Net.Http.HttpConnection.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)\r\n   at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken)\r\n   at System.Net.Http.DiagnosticsHandler.SendAsyncCore(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)\r\n   at Microsoft.Extensions.Http.Logging.LoggingHttpMessageHandler.<SendCoreAsync>g__Core|5_0(HttpRequestMessage request, Boolean useAsync, CancellationToken cancellationToken)\r\n   at Microsoft.Falcon.ServiceCommunication.Http.OutgoingRequestLoggingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) in C:\\a\\_work\\1\\s\\sdk\\runtime\\ServiceCommunication.Http\\src\\Runtime\\Handlers\\StandardHandlers\\Logging\\OutgoingRequestLoggingHandler.cs:line 76\r\n   at Microsoft.Falcon.ServiceCommunication.Http.TracingHeadersMessageHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) in C:\\a\\_work\\1\\s\\sdk\\runtime\\ServiceCommunication.Http\\src\\Runtime\\Handlers\\StandardHandlers\\TracingHeadersMessageHandler.cs:line 89\r\n   at Microsoft.Falcon.ServiceCommunication.Http.AddDebuggingHeaderHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) in C:\\a\\_work\\1\\s\\sdk\\runtime\\ServiceCommunication.Http\\src\\Runtime\\Handlers\\StandardHandlers\\Debugging\\AddDebuggingHeaderHandler.cs:line 43\r\n   at Microsoft.Falcon.ServiceCommunication.Http.ServiceInformationHeaderMessageHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) in C:\\a\\_work\\1\\s\\sdk\\runtime\\ServiceCommunication.Http\\src\\Runtime\\Handlers\\StandardHandlers\\ServiceInformationHeaderMessageHandler.cs:line 66\r\n   at Microsoft.Extensions.Http.Logging.LoggingScopeHttpMessageHandler.<SendCoreAsync>g__Core|5_0(HttpRequestMessage request, Boolean useAsync, CancellationToken cancellationToken)\r\n   at System.Net.Http.HttpClient.<SendAsync>g__Core|83_0(HttpRequestMessage request, HttpCompletionOption completionOption, CancellationTokenSource cts, Boolean disposeCts, CancellationTokenSource pendingRequestsCts, CancellationToken originalCancellationToken)",
      "InnerException": {
        "Level": 4,
        "Type": "System.IO.IOException",
        "Message": "Unable to read data from the transport connection: The I/O operation has been aborted because of either a thread exit or an application request..",
        "StackTrace": "   at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.ThrowException(SocketError error, CancellationToken cancellationToken)\r\n   at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource<System.Int32>.GetResult(Int16 token)\r\n   at System.Net.Security.SslStream.EnsureFullTlsFrameAsync[TIOAdapter](CancellationToken cancellationToken, Int32 estimatedSize)\r\n   at System.Runtime.CompilerServices.PoolingAsyncValueTaskMethodBuilder`1.StateMachineBox`1.System.Threading.Tasks.Sources.IValueTaskSource<TResult>.GetResult(Int16 token)\r\n   at System.Net.Security.SslStream.ReadAsyncInternal[TIOAdapter](Memory`1 buffer, CancellationToken cancellationToken)\r\n   at System.Runtime.CompilerServices.PoolingAsyncValueTaskMethodBuilder`1.StateMachineBox`1.System.Threading.Tasks.Sources.IValueTaskSource<TResult>.GetResult(Int16 token)\r\n   at System.Net.Http.HttpConnection.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)",
        "InnerException": {
          "Level": 5,
          "Type": "System.Net.Sockets.SocketException",
          "Message": "The I/O operation has been aborted because of either a thread exit or an application request.",
          "StackTrace": null
        }
      }
    }
  }
}

I went to share it again but it threw this error:

Sharing printer "a4037040-0719-4967-9ca1-1dae24a44141" failed.
Printer is already shared as: OPS-B6-MFP-01.

However, that share name is NOT in the list of shares. This is clearly an internal problem but I can neither remove a share I can't see, nor can I unregister a printer it thinks is shared.

Off Topic: Also, it's crazy that Universal Print doesn't have its own support tag...

Windows for business | Windows Server | User experience | Print jobs
0 comments No comments

1 answer

Sort by: Most helpful
  1. Daphne Huynh (WICLOUD CORPORATION) 1,980 Reputation points Microsoft External Staff Moderator
    2026-10-15T02:27:02.75+00:00

    Welcome to Microsoft Q&A!

    Thank you for providing the full error details.

    Based on the sequence of errors you provided, it appears that the initial Share Printer operation timed out while Universal Print was updating the printer object. The first attempt reports:

    Code: timeout

    Message: The request timed out.

    However, the next attempt reports:

    Printer is already shared as: OPS-B6-MFP-01

    This suggests that the first sharing request may have progressed far enough for the printer to be marked as shared, even though the corresponding printer share is not visible in the portal. In other words, there may be an inconsistency between the printer's sharing state and the printer-share object.

    Please note that this is an interpretation of the errors you are seeing rather than a specifically documented Universal Print issue. A registered printer needs to be shared before users can access it.

    To stop sharing a printer, the corresponding printer share is normally deleted. In addition, a shared printer must first be unshared before it can be unregistered. This would explain the situation you're seeing. Universal Print appears to consider the printer shared, preventing it from being unregistered, while the expected share isn't available in Printer Shares for you to remove.

    I would recommended next steps below:

    1. Refresh the Universal Print portal or sign out and sign back in, then check Printer Shares again after a short period in case the state is still being synchronized.
    2. If OPS-B6-MFP-01 still doesn't appear and trying to share the printer again continues to return Printer is already shared, I would avoid repeatedly registering another copy of the printer. At this point, the issue appears more likely to involve the existing cloud-side sharing state than the original printer registration.
    3. Reproduce the problem while collecting a browser network trace.

    It is a recommendation using the browser's developer tools and collecting the request URL, request method, status code, request ID, tenant ID, and time of failure.

    1. If this printer is registered through the Universal Print Connector, also review:

    Applications and Services Logs > Microsoft > Windows > PrintConnector > Operational

    You can also select the affected printer in the Universal Print Connector and use Collect diagnostics. This collects the connector event log and metadata, along with printer-specific details that can help with further investigation.

    1. If the share remains invisible and the printer still cannot be unregistered, I recommend opening a Microsoft support request so the service-side state can be investigated.

    When submitting the case, include the Printer ID (a4037040-0719-4967-9ca1-1dae24a44141), tenant ID, exact failure time and time zone, request/trace ID, error or status code, and connector diagnostics if applicable.

    Overall, this does not appear to be a typical printer-sharing configuration or permissions issue. The initial timeout followed by the "Printer is already shared" message, while no corresponding share is visible, is more consistent with an incomplete or inconsistent sharing state.

    I hope this helps clarify what may have happened and gives you a practical path forward.

    If the issue persists after checking the steps above, Microsoft Support would be the appropriate next step because resolving an inconsistent service-side state may require further investigation.

    References:

    Share printers using Azure Portal

    Register and unregister printers using Azure Portal

    Troubleshooting - Universal Print

    If you find it useful, please click Accept Answer.

    Thank you for choosing Microsoft Q&A.

    Was this answer helpful?

    0 comments No comments

Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.