Good day,
I'm using datishnas for almost 2 months and using the system for our VM backup and saving more than 50% of disk sapce and currently for the first time I encountered IOException "Out Of MemoryError: Java heap space".
How can I resolved the error I encountered?
Details are the error and current configurations
Error log:
error,Garbage Collection,VM-image-backup,SDFS Volume Cleanup Failed because Java heap space,,Tue Jul 19 23:59:00 PHT 2016,Wed Jul 20 00:43:02 PHT 2016,4F381BE4-4D58-9FD8-5E30-E85F0C5D3842,,100,100
error,Garbage Collection,VM-image-backup,Garbage Collection failed Exception : java.io.IOException: java.lang.OutOfMemoryError: Java heap space,,Tue Jul 19 23:59:00 PHT 2016,Wed Jul 20 00:43:02 PHT 2016,BF6BB6A8-96EE-6DD9-BDED-92A1FC95A683,,1,1
mount.sdfs script:
# vi /sbin/mount.sdfs
#!/bin/bash
modprobe fuse > /dev/null
BASEMEMORY="1000"
CHUNKSZ="80"
CFG=""
MPTG=4
MU="M"
EXEC="/usr/share/sdfs/jsvc"
PF="sdfs-ncfg.pid"
if [[ ${1:0:1} == '-' ]]; then
while getopts ":v:" opt; do
case $opt in
v)
CFG="/etc/sdfs/$OPTARG-volume-cfg.xml"
PF="$OPTARG.pid"
;;
z)
MEM=$OPTARG
;;
:)
echo "Option -$OPTARG requires an argument." >&2
exit 1
;;
esac
done
else
CFG="/etc/sdfs/$1-volume-cfg.xml"
PF="$1.pid"
fi
if [ ! -n "$MEM" ]; then
if [ -n "$CFG" ] && [ -f "$CFG" ]; then
ac=$(echo 'cat //subsystem-config/local-chunkstore/@allocation-size' | xmllint --shell "$CFG" | grep -v ">" | cut -f 2 -d "=" | tr -d - | tr -d \");
bac=$(echo 'cat //subsystem-config/local-chunkstore/extended-config/@io-threads' | xmllint --shell "$CFG" | grep -v ">" | cut -f 2 -d "=" | tr -d - | tr -d \");
MEMORY=$(((ac/10737418240*MPTG)+BASEMEMORY+(bac*CHUNKSZ)))
fi
else
MEMORY=$MEM
fi
LD_PRELOAD="/usr/share/sdfs/bin/libfuse.so.2" $EXEC -server -outfile '&1' -errfile '&2' -Djava.library.path=/usr/share/sdfs/bin/ -home /usr/share/sdfs/bin/jre -Dorg.apache.commons.logging.Log=fuse.logging.FuseLog\
-Dfuse.logging.level=INFO -Xmx$MEMORY$MU -Xms$MEMORY$MU \
-XX:+DisableExplicitGC -pidfile /var/run/$PF -XX:+UseG1GC -Djava.awt.headless=true \
"/sbin/mount.sdfs" 44 lines, 1463 characters
XML config:
# cat VM-image-backup-volume-cfg.xml
<?xml version="1.0" encoding="UTF-8" standalone="no"?><subsystem-config version="3.1.9">
<locations dedup-db-store="/opt/sdfs/metadata/VM-image-backup/ddb" io-log="/opt/sdfs/metadata/VM-image-backup/ioperf.log"/>
<io chunk-size="4" claim-hash-schedule="0 59 23 * * ?" dedup-files="true" hash-type="murmur3_128" log-level="1" max-file-inactive="900" max-file-write-buffers="1" max-open-files="1024" max-variable-segment-size="32" meta-file-cache="1024" read-ahead="false" safe-close="false" safe-sync="true" write-threads="8"/>
<permissions default-file="0644" default-folder="0755" default-group="0" default-owner="0"/>
<sdfscli enable="true" enable-auth="true" listen-address="0.0.0.0" password="5a24d6cf044a9dab25f2223041ba1356200002cf891fe723af9157d325f9dfd6" port="6442" salt="EqHAgv"/>
<local-chunkstore allocation-size="4398046511104" average-chunk-size="8192" chunk-store="/opt/sdfs/chunkdata/VM-image-backup" chunkstore-class="org.opendedup.sdfs.filestore.BatchFileChunkStore" cluster-config="/etc/sdfs/jgroups.cfg.xml" cluster-dse-password="admin" cluster-id="sdfs-cluster" compress="false" enabled="true" encrypt="false" encryption-iv="e729e9707a27862d19a20abd51e7d7a2" encryption-key="g27VHVaVi8QrC2G3QUfdUNvxLI+BJcNPFHVkNJ4NCjUen3e=2j7xDDd+HDu93+Mz" gc-class="org.opendedup.sdfs.filestore.gc.PFullGC" hash-db-store="/opt/sdfs/hashdb/VM-image-backup" hashdb-class="org.opendedup.collections.ProgressiveFileBasedCSMap" io-threads="8" max-repl-batch-sz="128">
<network enable="true" hostname="0.0.0.0" port="2222" use-ssl="false"/>
<extended-config allow-sync="false" block-size="60 MB" delete-unclaimed="true" io-threads="16" local-cache-size="10 GB" map-cache-size="100" read-speed="0" sync-files="false" upload-thread-sleep-time="150000" write-speed="0"/>
</local-chunkstore>
<volume allow-external-links="true" capacity="4 TB" closed-gracefully="false" cluster-block-copies="2" cluster-id="sdfs-cluster" cluster-rack-aware="false" cluster-response-timeout="4000" current-size="0" dse-comp-size="0" dse-size="0" duplicate-bytes="0" maximum-percentage-full="0.95" name="VM-image-backup" path="/opt/sdfs/metadata/VM-image-backup/files" perf-mon-file="/opt/sdfs//logs/volume-VM-image-backup-perf.json" read-bytes="0.0" read-timeout-seconds="-1" serial-number="1807226685" sync-files="false" use-dse-capacity="true" use-dse-size="true" use-perf-mon="false" volume-clustered="false" write-bytes="0" write-timeout-seconds="-1"/></
Thanks.