[LU-4159] 2.4 Client does not recognized that a file is released Created: 28/Oct/13 Updated: 28/Oct/13 |
|
| Status: | Open |
| Project: | Lustre |
| Component/s: | None |
| Affects Version/s: | Lustre 2.4.1 |
| Fix Version/s: | None |
| Type: | Improvement | Priority: | Minor |
| Reporter: | James Nunez (Inactive) | Assignee: | WC Triage |
| Resolution: | Unresolved | Votes: | 0 |
| Labels: | HSM | ||
| Environment: |
OpenSFS cluster with RHEL6 with combined MGS/MDS, single OSS with two OSTs, four Lustre 2.5 (Build #2) clients; one HSM Agent + client, one with robinhood/db running and two Lustre clients. Also one 2.4 (build #46) Lustre client. |
||
| Rank (Obsolete): | 11281 |
| Description |
|
When a 2.5 Lustre client archives and releases a file, a 2.4 client does not recognize that it is released. According to the test plan, 2.4 clients are supposed to fail with -ENODATA when the try to read/write to a released file. Currently, the 2.4 client correctly reports that the released file is inaccessible rather than reporting false success and returning no data. In the following, c15 is the 2.4 client and c14 is the 2.5 client: List Lustre file system contents on both clients: [root@c14 ~]# ls -l /lustre/scratch total 3308 -rw-r--r-- 1 root root 2238063 Oct 24 14:56 lts_vsx-pcts2.0beta2.tgz -rw-r--r-- 1 root root 1146294 Oct 24 14:56 tet_vsxgen_3.02.tgz [root@c15 ~]# ls -l /lustre/scratch/ total 3308 -rw-r--r-- 1 root root 2238063 Oct 24 14:56 lts_vsx-pcts2.0beta2.tgz -rw-r--r-- 1 root root 1146294 Oct 24 14:56 tet_vsxgen_3.02.tgz Check the state of the file, archive it, check state and then list directory contents on both clients to make sure nothing has changed: [root@c14 ~]# lfs hsm_state /lustre/scratch/tet_vsxgen_3.02.tgz /lustre/scratch/tet_vsxgen_3.02.tgz: (0x00000000) [root@c14 ~]# lfs hsm_archive --archive 1 /lustre/scratch/tet_vsxgen_3.02.tgz [root@c14 ~]# lfs hsm_state /lustre/scratch/tet_vsxgen_3.02.tgz /lustre/scratch/tet_vsxgen_3.02.tgz: (0x00000009) exists archived, archive_id:1 [root@c14 ~]# ls -l /lustre/scratch total 3308 -rw-r--r-- 1 root root 2238063 Oct 24 14:56 lts_vsx-pcts2.0beta2.tgz -rw-r--r-- 1 root root 1146294 Oct 24 14:56 tet_vsxgen_3.02.tgz [root@c15 ~]# ls -l /lustre/scratch/ total 3308 -rw-r--r-- 1 root root 2238063 Oct 24 14:56 lts_vsx-pcts2.0beta2.tgz -rw-r--r-- 1 root root 1146294 Oct 24 14:56 tet_vsxgen_3.02.tgz Now release the file and check state on the 2.5 client. Try and get details on the same file from the 2.4 client: [root@c14 ~]# lfs hsm_release /lustre/scratch/tet_vsxgen_3.02.tgz [root@c14 ~]# lfs hsm_state /lustre/scratch/tet_vsxgen_3.02.tgz /lustre/scratch/tet_vsxgen_3.02.tgz: (0x0000000d) released exists archived, archive_id:1 [root@c14 ~]# ls -l /lustre/scratch total 2189 -rw-r--r-- 1 root root 2238063 Oct 24 14:56 lts_vsx-pcts2.0beta2.tgz -rw-r--r-- 1 root root 1146294 Oct 24 14:56 tet_vsxgen_3.02.tgz [root@c15 ~]# ls -l /lustre/scratch/ ls: cannot access /lustre/scratch/tet_vsxgen_3.02.tgz: Invalid argument total 2188 -rw-r--r-- 1 root root 2238063 Oct 24 14:56 lts_vsx-pcts2.0beta2.tgz -????????? ? ? ? ? ? tet_vsxgen_3.02.tgz [root@c15 ~]# ls -l /lustre/scratch/tet_vsxgen_3.02.tgz ls: cannot access /lustre/scratch/tet_vsxgen_3.02.tgz: Invalid argument [root@c15 ~]# md5sum /lustre/scratch/tet_vsxgen_3.02.tgz md5sum: /lustre/scratch/tet_vsxgen_3.02.tgz: Invalid argument Restore the file and check the MD5 checksum on both clients: [root@c14 ~]# lfs hsm_state /lustre/scratch/tet_vsxgen_3.02.tgz /lustre/scratch/tet_vsxgen_3.02.tgz: (0x0000000d) released exists archived, archive_id:1 [root@c14 ~]# md5sum /lustre/scratch/tet_vsxgen_3.02.tgz 4b2f49b05e74d19fa2165922583734ee /lustre/scratch/tet_vsxgen_3.02.tgz [root@c15 ~]# md5sum /lustre/scratch/tet_vsxgen_3.02.tgz 4b2f49b05e74d19fa2165922583734ee /lustre/scratch/tet_vsxgen_3.02.tgz |