(python3_mahuika) baes@mahuika02: ~$ module load nearline/.1.0.0.9


Copy

nlput  nesi00213 /nesi/[nobackup/projects]/nesi00213/.../XXX

Note that XXX should be either directory name or a file that contains a list of files.

(python3_mahuika) baes@mahuika02: /nesi/nobackup/nesi00213/RunFolder$ ls to_nearline
RunFolder.tar
(python3_mahuika) baes@mahuika02: /nesi/nobackup/nesi00213/RunFolder$ nlput nesi00213 /nesi/nobackup/nesi00213/RunFolder/to_nearline
jobid: a22901cd-32e7-4cff-8e74-e4e9f8c9419b runtime: 0:13:00 jobstatus: #syncs/#recallsyncs: 1/0#success/#failed: 0/0

This can take a significant amount of time and use --nowait option is useful.  For better usability, consider using `nearline.sh` wrapper. This works like squeue - you can submit and walk away.

Important

Once a TAR file is uploaded to the nearline storage, it becomes very difficult to know the contents of the TAR file. Always generate a catalogue (eg. tar tvf XX.tar > list) before the TAR file is deleted from the nobackup storage.


(python3_mahuika) baes@mahuika02: /nesi/nobackup/nesi00213/RunFolder$ nearline.sh nlput nesi00213 /nesi/nobackup/nesi00213/RunFolder/to_nearline
----------
Date and time: Mon May  4 00:13:37 UTC 2020
Working directory: /nesi/nobackup/nesi00213/RunFolder
Directory to upload to Nearline: /nesi/nobackup/nesi00213/RunFolder/to_nearline
+ nlput nesi00213 /nesi/nobackup/nesi00213/RunFolder/to_nearline --nowait
Your JobID is:39cc4ab0-9ec5-419e-b665-2cd835756933
+ set +x
JobID is written to /home/baes/nearline.log

This wrapper acts as if it submits a job, and while it is progressing the log file ~/nearline.log gets updated.


Check the Status

nljobstatus gives you an overview of historical Nearline jobs

(python3_mahuika) baes@mahuika02: /nesi/nobackup/nesi00213/empiricals$ nljobstatus
+------------------+------------+-----------------------+-----------+----------+
|      Jobid       | Project ID |      Job Status       | Job Host  | Job User |
+------------------+------------+-----------------------+-----------+----------+
| a22901cd-32e7-4c |     24     | job done successfully | librarian |   baes   |
| ff-8e74-e4e9f8c9 |            |                       |           |          |
|       419b       |            |                       |           |          |
+------------------+------------+-----------------------+-----------+----------+
| ac563508-e287-4b |     24     |     polrun_failed     | librarian |   baes   |<--- FAILED !!!
| d9-9f66-057b20ba |            |                       |           |          |
|       f5ea       |            |                       |           |          |
+------------------+------------+-----------------------+-----------+----------+
...
+------------------+------------+-----------------------+-----------+----------+
| ce90f78b-ceab-4d |     24     | #syncs/#recallsyncs:  | librarian |   baes   |
| d1-956a-9e34c945 |            | 1/0#success/#failed:  |           |          | <-- still in progress
|       1fb7       |            |          0/0          |           |          |
+------------------+------------+-----------------------+-----------+----------+

JobId is useful for further study, but it  is displayed over multiple lines, not easy to copy and paste. 

If you used the wrapper, you can easily extract the JobID from ~/nearline.log

(python3_mahuika) baes@mahuika02: /nesi/nobackup/nesi00213/empiricals$ cat ~/nearline.log
----------
Date and time: Fri May  8 02:57:47 UTC 2020
Working directory: /nesi/nobackup/nesi00213/RunFolder
Your JobID is:21ec176b-486b-4b07-b327-0a820a46c3cd
----------
Date and time: Mon May 11 21:20:13 UTC 2020
Working directory: /nesi/nobackup/nesi00213/RunFolder
Your JobID is:ce90f78b-ceab-4dd1-956a-9e34c9451fb7
----------
Date and time: Wed May 13 04:51:58 UTC 2020
Working directory: /scale_wlg_nobackup/filesets/nobackup/nesi00213
Your JobID is:7c06c2b4-1390-4747-a878-e2a510632f40


Using this JobID, you can have a closer look.

(python3_mahuika) baes@mahuika02: /nesi/nobackup/nesi00213/RunFolder$ nljobstatus -j a22901cd-32e7-4cff-8e74-e4e9f8c9419b

+--------------------------------------+
|                Jobid                 |
+--------------------------------------+
| a22901cd-32e7-4cff-8e74-e4e9f8c9419b |
+--------------------------------------+
+------------+------------------------------------------+-----------+----------+
| Project ID |                Job Status                | Job Host  | Job User |
+------------+------------------------------------------+-----------+----------+
|     24     | #syncs/#recallsyncs: 1/0#success/#failed | librarian |   baes   |
|            |                  : 0/0                   |           |          |
+------------+------------------------------------------+-----------+----------+
+---------------------+---------------------+---------------------+
|   Job Start Time    |   Job Update Time   |    Job End Time     |
+---------------------+---------------------+---------------------+
| 2020-04-08T03:56:38 | 2020-04-08T04:11:08 | 2020-04-08T03:57:00 |
+---------------------+---------------------+---------------------+


....After completed....


(python3_mahuika) baes@mahuika02: /nesi/nobackup/nesi00213/RunFolder$ nljobstatus -j a22901cd-32e7-4cff-8e74-e4e9f8c9419b
+--------------------------------------+
|                Jobid                 |
+--------------------------------------+
| a22901cd-32e7-4cff-8e74-e4e9f8c9419b |
+--------------------------------------+
+------------+-----------------------+-----------+----------+
| Project ID |      Job Status       | Job Host  | Job User |
+------------+-----------------------+-----------+----------+
|     24     | job done successfully | librarian |   baes   |
+------------+-----------------------+-----------+----------+
+---------------------+---------------------+---------------------+
|   Job Start Time    |   Job Update Time   |    Job End Time     |
+---------------------+---------------------+---------------------+
| 2020-04-08T03:56:38 | 2020-04-08T04:26:18 | 2020-04-08T04:26:19 |
+---------------------+---------------------+---------------------+

View


(python3_mahuika) baes@mahuika02: /nesi/nobackup/nesi00213/RunFolder$ nlquotalist nesi00213
Projectname                                       Available           Used                Inodes         IUsed
___________________________________________________________________________________________________________________________
nesi00213                                         70.00 TB            344.73 GB           1000000        2


(python3_mahuika) baes@mahuika02: /nesi/nobackup/nesi00213/empiricals$ nlls -ls  /nesi/nearline/nesi00213
mode        s  owner               group               filesize       timestamp         filename
___________________________________________________________________________________________________________________________
drwxrws---+ -  jmotha              nesi00213           4.00 KB        2020_05_13_045029 empiricals
drwxrws---+ -  baes                nesi00213           4.00 KB        2020_05_11_020344 RunFolder

(python3_mahuika) baes@mahuika02: /nesi/nobackup/nesi00213/empiricals$ nlls -ls  /nesi/nearline/nesi00213/RunFolder
mode        s  owner               group               filesize       timestamp         filename
___________________________________________________________________________________________________________________________
drwxrws---+ -  baes                nesi00213           4.00 KB        2020_04_30_233628 to_nearline
drwxrws---+ -  baes                nesi00213           4.00 KB        2020_05_11_212034 to_nearline_18p6

(python3_mahuika) baes@mahuika02: /nesi/nobackup/nesi00213/empiricals$ nlls -ls  /nesi/nearline/nesi00213/RunFolder/to_nearline
mode        s  owner               group               filesize       timestamp         filename
___________________________________________________________________________________________________________________________
-rw-rw----+ p  baes                nesi00213           131.64 MB      2020_04_30_232712 clarer.tar
-rw-rw----+ p  ykh22               nesi00213           401.25 GB      2020_02_11_034206 jagdish.vyas.tar
-rw-rw----+ p  baes                nesi00213           34.30 GB       2020_04_30_232714 jeongs.tar
-rw-rw----+ p  baes                nesi00213           128.24 MB      2020_04_30_232727 melody.zhu.tar
-rw-rwxr--+ m  jmotha              nesi00213           344.73 GB      2019_04_29_003642 RunFolder.tar

(python3_mahuika) baes@mahuika02: /nesi/nobackup/nesi00213/empiricals$ nlls -ls  /nesi/nearline/nesi00213/RunFolder/to_nearline_18p6
mode        s  owner               group               filesize       timestamp         filename
___________________________________________________________________________________________________________________________
-rw-------+ r  root                nesi00213           32.67 TB       2020_05_14_001547 .v18p6_waveform_backup.tar.w4q6BW.  <---- currently being uploaded



Verification

nljobstatus (almost) & ask NeSI (for 100% certainty)

You can verify transfers that consisted entirely of files new to nearline by running nljobstatus . If all of them report "job done successfully" then you can (probably) safely delete the files involved, though for greater certainty you can ask NeSI for a manual verification of specific files.


No overwrite in near line : Delete (nlpurge) and re-upload (nlput)

This does not apply to transfers in which you attempted to overwrite one or more previously uploaded files. The nearline service does not support in-place updates, but will report that the transfer succeeded regardless. To actually update files you will need to delete the affected files from nearline (using nlpurge) and then re-upload them (using nlput).


Always verify manually

Also, for any nlput reporting a status other than "job done successfully",  manually verify the files you intended to upload by means of that transfer.

You also have the option of contacting NeSI  so that they can manually verify that any particular file or files are the same (e.g. by name, size and last modified date, or by checksum) on nearline as on project or nobackup.

Request any manual verification you desire as soon as possible so that you can get on with deletions and help NeSI to free up nobackup space.



  • No labels