We completed the latest upgrade to the service yesterday afternoon. Listed below is the notification that went out along with a brief discussion of what we've added.
SQL Server Data Services (SSDS) Maintenance
We have completed upgrading the SSDS Service
- As per our prior communications, this upgrade removed all existing data in the service. All Authorities, Containers and Entities will be deleted. User account, user ID’s, and passwords will be preserved. This is necessary due to the enhanced functionality we are providing.
- Special characters in SSDS User Ids are no longer supported (Special character this impacts: @). The ‘@’ character in the existing user ids will be replaced by an “_”. For example, user id “Joe@Business” will become “Joe_business”.
- While the “application/xml” content type will still be supported in the short term, we highly recommend that you migrate your applications to the new “application/x-ssds+xml” content type with this service update.
New features in this upgrade:
Blob Support via the REST interface
· In this release, Blobs are limited to 100 megabytes in size.
· Blob Support via the SOAP interface will be delivered in a later update.
Version metadata property has changed from a large integer to a container-wide dbtimestamp value:
· Version numbers are now based on a dbtimestamp and will increase monotonically on a container-wide basis. No two entities in the same container will ever receive the same version value. The dbtimestamp increases monotonically, however not necessarily sequentially. Clients should no longer assume entity version numbers are sequentially assigned. It does not start at 0, but may be any non-zero integer value for a newly created entity.
ETag support via REST, with similar functionality provided on the SOAP interface
· Support for If-Match and If-None-Match via the REST interface. This will allow you to verify that you have the latest version of an Entity enabling you to use resources more efficiently.
· Support for “Accept” header via the REST interface. This will allow you to denote what content you want returned from the service. For instance when retrieving a Blob, the “Accept” header will allow you to choose between the Blob content, or the metadata properties associated with it.
· Support for ETag semantics on the SOAP service via the new Version Match object on the Scope object.
HEAD support via REST interface
· Support for the “HEAD” verb via the REST interface. This provides a lightweight way of validating existing entity version information without requiring entire entities (or blobs) to be retransmitted to the client.
A new content type – “application/x-ssds+xml” has been added to the service
· This content type is for storing XML content in the service.
· Existing “application/xml” content type is being phased out in a future sprint.
· The "application/x-ssds+xml" content type should be used for all entities except those containing blob content. Blob entities should instead use a content type value which best reflects the type of blob data stored. It's important to note that the value chosen here will be used later when attempting to retrieve the different parts of an entity by using the, "Accept" header.
For more information, please see the updated documentation at the DevCenter - http://msdn.microsoft.com/sql/dataservices
The SSDS Team