Disabling Metadata inheritance does not work with a KSCP command

Overview

When trying to replace a file with the Metadata inheritance disabled through a KSCP command, the Metadata is retained after replacing the old file with metadata for a new file without metadata. The expected behavior is that the metadata should not be retained because Metadata inheritance is disabled.

 

Solution

The behavior is functioning as expected as per the product documentation. 

"The Enable Metadata inheritance option, when enabled, will cause any file newly-introduced to the file system which has the same name and location as a previously-deleted file to inherit the original file's metadata."

The Metadata inheritance is designed to work with files that are deleted and in this use case, we're replacing the files with KSCP and thus the metadata is not replaced but is retained.

The KSCP command will replace the file locally but will maintain the metadata of the previous file in the database, regardless of the Metadata Inheritance setting being set to Off.

We also tested replacing the file via AFP/SMB and the results are consistent with those experienced directly with the KSCP command. This is because, as mentioned previously, the behavior is working as designed since it the metadata inheritance setting (On or Off) was developed to work with a previously deleted file.

For this use case to work as expected with the KSCP command, the file needs to be deleted first. Then if the inheritance is disabled, the metadata will be discarded for newly introduced files with the same name and location as the previous one.

 

Please follow these steps in detail to accomplish this, using images test-ID to metatest-1D and 2 different volumes (Xinet, xinetNODB) as examples:

  1. On the portal website, delete the uploaded image test-1D.jpg.
  2. On the Server machine, transfer a different jpg (must have a different modification date) named test-1D.jpg to the /media/xinetNODB volume. The file name must be exactly the same.
  3. Run a KSRM command prior to the KSCP command.
    /usr/etc/appletalk/ksrm /media/xinet/metatest-1D.jpg
  4. On the Server machine, using the KSCP command, replace the original test-1D.jpg on the /media/xinet volume for the test-1D.jpg on the /media/xinetNODB volume by running the command below (double-check the paths):
          /usr/etc/appletalk/kscp /media/xinetNODB/metatest-1D.jpg /media/xinet/MetaTest/metatest-1D.jpg
  5. Logout and log back in. Confirm that the file has changed and the metadata is empty.

The Support team has submitted an enhancement for consideration in a future product release where files replaced via the KSCP command should respect the setting for "Enable Metadata Inheritance".

Comments

0 comments

Please sign in to leave a comment.