Versioning Overview

By default, the versioning function is disabled for new buckets on OBS. Therefore, if you upload an object to a bucket where an object with the same name as the uploading one exists, the new object will overwrite the existing one.

After the versioning function is enabled:

  • OBS automatically assigns a unique version ID to each uploaded object. Objects with the same name are stored on OBS with different version IDs.
  • Objects can be downloaded by version IDs. By default, the latest object is downloaded if the version ID is not specified.
  • To delete an object permanently, click the object to go to the object details page. In the drop-down list next to the object file name, select the version you want to delete. Such a deletion cannot be undone. If you select a version of an object and click Delete, the object will have a deletion mark with the unique version ID but will not be actually deleted. If an access request is sent to the object, a message is returned indicating that the object does not exist. If you delete the deletion mark, you will cancel the deletion of the object.
  • The latest objects in a bucket are returned by default after a GET Object request. You can also send a request to obtain a bucket's objects with all version IDs.
  • All object versions except those with deletion marks stored on OBS are charged.

If versions of objects in a bucket do not need to be controlled, you can suspend the versioning function.

  • Objects of the previous versions remain on OBS. You need to manually delete unnecessary objects of the previous versions.
  • Objects can be downloaded by version IDs. By default, the latest object is downloaded if the version ID is not specified.
  • All earlier object versions except those with deletion marks stored on OBS are charged.
NOTE:

Once the versioning function is enabled, it can be suspended but cannot be disabled.

Registration