When multiple nearline storage, automatically change DestinationFileSystem in FileCopy service

43 views
Skip to first unread message

busitoki

unread,
May 28, 2019, 8:05:01 PM5/28/19
to dcm...@googlegroups.com
Hello.

Environment: CentOS7, dcm4chee-2.17.3-psql, PostgreSQL 9.5, jdk1.7.0-45

When multiple nearline storage, How do I automatically change DestinationFileSystem in FileCopy service?

e.g. I tested in virtual machine:

JMX MBean Operation Result listAllFileSystems() in service=FileSystemMgt

FileSystem[pk=3, /nearline/test/1, groupID=NEARLINE_STORAGE, aet=TESTAET, NEARLINE, RW+, userinfo=null, next=/nearline/test/2]
FileSystem[pk=4, /nearline/test/2, groupID=NEARLINE_STORAGE, aet=TESTAET, NEARLINE, RW, userinfo=null, next=/nearline/test/3]
FileSystem[pk=5, /nearline/test/3, groupID=NEARLINE_STORAGE, aet=TESTAET
, NEARLINE, RW, userinfo=null]
FileSystem[pk=6, /online/test, groupID=ONLINE_STORAGE, aet=TESTAET, ONLINE, RW+, userinfo=null]

each FileSystem size is 100M 
# df -h
/dev/sdb1                        96M  5.2M   91M    6% /nearline/test/1
/dev/sdc1 96M 5.2M 91M 6% /nearline/test/2
/dev/sdd1 96M 5.2M 91M 6% /nearline/test/3

DestinationFileSystem in service=FileCopy is 
/nearline/test/1

I sent files that caused the disk (/nearline/test/1) to overflow (size of files 123M) . 

I got server.log:

2019-05-27 16:08:48,460 INFO -> (Thread-60917) [org.dcm4chex.archive.hsm.FileCopyService] M-WRITE f
ile:/nearline/test/1/2019/5/27/16/C59A3235/3B3DFA55/63EF0671
2019-05-27 16:08:48,462 ERROR -> (Thread-60917) [org.dcm4chex.archive.hsm.FileCopyService] Copy file
 /online/test/2019/5/27/16/C59A3235/3B3DFA55/63EF0671 failed
java.io.IOException No space left on device
:
:
2019-05-27 16:08:48,463 WARN -> (Thread-60917) [org.dcm4chex.archive.hsm.FileCopyService] Failed to
 process org.dcm4chex.archive.hsm.FileCopyOrder@2019052716064508922@4ee8c7c6[, failures=3]  Retrieve
AETs: TESTAET
        Destination: /nearline/test/1

        Source files: 
:
:
. Scheduling retry.

I want it to work that /nearline/test/1 is full and then automatically next nearline_storage /nearline/test/2 is used. 
How do I do it?




Reply all
Reply to author
Forward
0 new messages