Negative Numbering for Cloud Service Update Logging

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current systems lack a comprehensive logging mechanism to track failed update attempts and retries across various stages in cloud-based services, making it difficult for administrators to audit and improve the update process.

Innovation Solution

Implementing a logging system that uses negative vectoring or negative numbering to record payload versions in a log, allowing for the tracking of restarts and retries without complicating the log table structure.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of information

If a comprehensive logging mechanism is implemented to track failed update attempts and retries, then the completeness of deployment records is improved, but the complexity of the logging system increases

Engineering Contradiction:
Improvecompleteness of deployment recordsVSAvoidcomplexity of logging system
Core Design Contradiction:
Loss of informationVSDevice complexity

Solution Approach 1:

The patent changes the payload version number parameter to negative values when deploying to subsets that experienced failures. This parameter change enables the logging system to distinguish between successful and failed deployment attempts without adding new columns or complex data structures, thereby maintaining log table simplicity while improving record completeness

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

Instead of using additional fields or flags to mark failed deployments, the patent inverts the approach by using negative payload version numbers. This inversion allows failed attempts to be represented in the existing log structure without requiring extra complexity, as the negative sign simply inverts the normal positive version number convention

Inventive Principle:
Principle #13The other way round (Inversion)

2Reliability

If negative vectoring is used to mark failed payload versions, then the ability to track restarts and retries is improved, but the complexity of data processing increases

Engineering Contradiction:
Improvetracking capability for restarts and retriesVSAvoidcomplexity of data processing
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent uses parameter changes by setting payload version numbers to negative values to indicate failed deployments. This simple parameter modification enables reliable tracking of restarts and retries through existing log queries without requiring complex data processing logic, as the negative sign provides an immediate visual indicator of failure status

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS12217045B2Negative numbering to log web service update attempts
Publication Date: 2025.02.04 MICROSOFT TECHNOLOGY LICENSING LLC
  • US12217045B2 patent drawing
  • US12217045B2 patent drawing
  • US12217045B2 patent drawing

AI summary

A logging system for an orchestration system that implements a rollout service to deploy updates to a cloud service includes: an orchestrator service host computer hosting the rollout service; a service bus connecting the orchestrator service host computer with a network on which the cloud service is provided; and a database to which the rollout service records a log of a deployment of an update, the log comprising an entry for each of a number of subsets of network components supporting the cloud service. Each record in the log refers to a payload version deployed to a corresponding subset of the network components supporting the cloud service. In response to detection of an issue with the deployment of the update in a particular subset of the network components, the rollout service retains a record in the log of each payload version deployed by changing a payload version number to be negative in each record of the log prior to a restart of the deployment back to an earlier subset of the network components with a new payload version to avoid the issue.