HEX
Server: Apache/2.4.63 (Unix)
System: Linux Synopilou92 4.4.302+ #72806 SMP Mon Jul 21 23:16:00 CST 2025 x86_64
User: pilou92 (1026)
PHP: 8.0.30
Disabled: NONE
Upload Files
File: //var/packages/HybridShare/scripts/postupgrade
#!/bin/sh
# Copyright (c) 2000-2025 Synology Inc. All rights reserved.

. /var/packages/${SYNOPKG_PKGNAME}/scripts/pkg_utils
servicetool --update-configure-file --package ${SYNOPKG_PKGNAME}.sc ${PKG_DIR}/target/etc/HybridShare.sc

if ! ${C2FS_PKG_TOOL} --move-info ; then
	logger -t ${PKG_TAG} -p err "failed move-info"
fi

max_jobs=5

logger -t ${PKG_TAG} -p err "Starting WAL checkpoint for all shares"

for dir in /volume*/@C2Share/database/*/events; do
	[ -d "$dir" ] || continue
	wal_file="$dir/events.db-wal"
	db_file="$dir/events.db"
	if [ -f "$wal_file" ]; then
		while [ $(jobs -r | wc -l) -ge $max_jobs ]; do
			sleep 1
		done
		(
			sqlite3 "$db_file" "PRAGMA wal_checkpoint(TRUNCATE);"
			if [ $? -ne 0 ]; then
				logger -t ${PKG_TAG} -p err "WAL checkpoint failed for $db_file"
			fi
		) &
	fi
done

wait

logger -t ${PKG_TAG} -p err "WAL checkpoint completed for all shares"

${C2FS_PKG_TOOL} --send-notification-if-inbeta

exit 0