What is the impact of using mismatched x-ms-version on the same container in Azure Storage?

StackOverflow https://stackoverflow.com/questions/21366765

  •  03-10-2022
  •  | 
  •  

Question

I have a storage blob that currently uses version header x-ms-version: 2011-08-18. I'm interested in enabling logging and auditing, for the consumption of the newer code which will run in parallel.

Is it acceptable for different versions of the Table storage to be used against the same container?

e.g.

  1. I write using header x-ms-version: 2011-08-18
  2. If my auditing code uses the latest version, will I be able to see actions done by older versions (assuming I enable auditing in the portal?)
  3. Is there any reason I shouldn't read and write to the same container with different versions of code?

I'm asking because I won't be able to upgrade all clients simultaneously, but I do want to perform some administrative tasks that affect all containers.

Was it helpful?

Solution

So here's what my understanding is about x-ms-version. It basically is the version of Storage Service REST API. If you specify a particular version for an operation, then the operation from that version will get executed. Also if execute a particular operation with a particular version, and that operation is not there in that particular version you will get an error. This is based on the documentation here: http://msdn.microsoft.com/en-us/library/windowsazure/dd894041.aspx.

Storage services accept requests that specify different versions of each operation. You can specify which version of an operation you want to use by setting the x-ms-version request header. Your code can call an older version of an operation, or you can modify your code to call a newer version. The documentation for each operation specifies behavior differences between different versions of the operation.

Now coming to storage analytics, I think what you're looking for are Storage Analytics Logs. It basically tells you about all the operations performed against your particular storage account. Since the logs schema contains a field called request-version-header (which is x-ms-version), I'm inclined to believe that storage analytics is not dependent on x-ms-version included in your requests. You just enable it on your storage account.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top