# This file is sourced by scripts that work with edge servers.

# It sets the correct list db.* files that are edge-specific in the
# federated architecture.  This version is dependent on the version of
# p4d in use.
#
# See: https://www.perforce.com/perforce/doc.current/manuals/p4sag/Content/P4SAG/commit-edge-start.html

# Note: $P4D_VERSION looks something like "2020.2.2202902."  In comparisons
# below, a lexigraphical rather than numeric comparison operator is used.
# The greater-than symbol '>' can be thought of as "greater to or equal to"
# in this context, because a version string like "2020.2.2292902" is
# lexigraphically greater than the string "2020.2", so checking
# '> "2020.2"' can be interpreted as "If the p4d major version is greater
# than or equal to 2020.2.
if [[ "${P4D_VERSION:-1970.1}" > "2020.2" ]]; then
   ExcludedTables=db.have,db.working,db.locks,db.resolve,db.revsh,db.workingx,db.resolvex,db.stash,db.haveg,db.workingg,db.locksg,db.resolveg,db.storagesh,db.storagesx
elif [[ "${P4D_VERSION:-1970.1}" > "2019.0" ]]; then
   ExcludedTables=db.have,db.working,db.locks,db.resolve,db.revsh,db.workingx,db.resolvex,db.stash,db.haveg,db.workingg,db.locksg,db.resolveg,db.storagesh
elif [[ "${P4D_VERSION:-1970.1}" > "2018.2" ]]; then
   ExcludedTables=db.have,db.working,db.locks,db.resolve,db.revsh,db.workingx,db.resolvex,db.stash,db.haveg,db.workingg,db.locksg,db.resolveg
elif [[ "${P4D_VERSION:-1970.1}" > "2015.1" ]]; then
   ExcludedTables=db.have,db.working,db.locks,db.resolve,db.revsh,db.workingx,db.resolvex,db.stash,db.haveg,db.workingg,db.locksg,db.resolveg
else
   ExcludedTables=db.have,db.working,db.locks,db.resolve,db.revsh,db.workingx,db.resolvex,db.stash
fi

CheckpointTables=$ExcludedTables,db.view,db.label,db.revsx,db.revux,db.storage