Skip to content

Commit 6d09aa3

Browse files
authored
Merge branch 'develop' into 5910-datafusion-performance-assertion
2 parents 645327a + 8707aad commit 6d09aa3

File tree

2 files changed

+72
-14
lines changed

2 files changed

+72
-14
lines changed

java/compaction/compaction-core/src/main/java/sleeper/compaction/core/job/creation/strategy/DelegatingCompactionStrategy.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ private List<CompactionJob> createJobsForLeafPartition(FilesInPartition filesInP
7373
while (jobs.size() > maxNumberOfJobsToCreate) {
7474
jobs.remove(jobs.size() - 1);
7575
}
76-
LOGGER.info("Created {} compaction job{} for partition {}, table {}",
76+
LOGGER.debug("Created {} compaction job{} for partition {}, table {}",
7777
jobs.size(), 1 == jobs.size() ? "" : "s", filesInPartition.getPartitionId(), filesInPartition.getTableStatus());
7878
return jobs;
7979
}

scripts/cli/runInDocker.sh

Lines changed: 71 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ if [ "$#" -lt 1 ]; then
2222
fi
2323

2424
HOME_IN_IMAGE=/home/sleeper
25+
ALL_IMAGES=(sleeper-local sleeper-builder)
2526

2627
# Allow use of runner Dockerfile in source directory or in home install
2728
THIS_DIR=$(cd "$(dirname "$0")" && pwd)
@@ -110,22 +111,88 @@ get_version() {
110111
run_in_docker sleeper-local:current cat /sleeper/version.txt
111112
}
112113

113-
pull_docker_images(){
114-
echo "Updating CLI runner Dockerfile"
114+
pull_docker_images() {
115+
echo "Downloading CLI runner Dockerfile"
115116
mkdir -p "$HOME_RUNNER_PATH"
116117
curl "https://raw.githubusercontent.com/gchq/sleeper/develop/scripts/cli/runner/Dockerfile" --output "$HOME_RUNNER_PATH/Dockerfile"
117-
pull_and_tag sleeper-local
118-
pull_and_tag sleeper-builder
118+
119+
echo "Pulling CLI Docker images"
120+
for IMAGE_NAME in "${ALL_IMAGES[@]}"; do
121+
echo "Pulling image: $IMAGE_NAME"
122+
REMOTE_IMAGE="ghcr.io/gchq/$IMAGE_NAME:latest"
123+
LOCAL_IMAGE="$IMAGE_NAME:current"
124+
125+
docker pull "$REMOTE_IMAGE"
126+
docker tag "$REMOTE_IMAGE" "$LOCAL_IMAGE"
127+
done
128+
}
129+
130+
find_docker_image_digests() {
131+
echo "Checking CLI image digests"
132+
declare -ga IMAGE_DIGESTS
133+
for IMAGE_NAME in "${ALL_IMAGES[@]}"; do
134+
IMAGE="$IMAGE_NAME:current"
135+
DIGEST="$(docker images -q "$IMAGE" 2> /dev/null)"
136+
if [ -n "$DIGEST" ]; then
137+
echo "Found digest for $IMAGE_NAME: $DIGEST"
138+
IMAGE_DIGESTS+=("$DIGEST")
139+
fi
140+
done
141+
}
142+
143+
find_runner_image_digests() {
144+
echo "Checking runner image digests"
145+
declare -ga RUNNER_DIGESTS
146+
local LINES=$(docker images -q sleeper-runner 2> /dev/null)
147+
while read -r LINE
148+
do
149+
DUPLICATE=false
150+
for DIGEST in "${RUNNER_DIGESTS[@]}"; do
151+
if [[ "$DIGEST" == "$LINE" ]]; then
152+
DUPLICATE=true
153+
break
154+
fi
155+
done
156+
if [[ "$DUPLICATE" == "false" ]]; then
157+
echo "Found runner digest for cleanup: $LINE"
158+
RUNNER_DIGESTS+=("$LINE")
159+
fi
160+
done <<< "$LINES"
161+
}
162+
163+
remove_old_images() {
164+
OLD_DIGESTS=("${IMAGE_DIGESTS[@]}")
165+
find_docker_image_digests
166+
echo "Cleaning up old CLI images"
167+
for OLD_DIGEST in "${OLD_DIGESTS[@]}"; do
168+
UPDATED=true
169+
for NEW_DIGEST in "${IMAGE_DIGESTS[@]}"; do
170+
if [[ "$OLD_DIGEST" == "$NEW_DIGEST" ]]; then
171+
UPDATED=false
172+
break
173+
fi
174+
done
175+
if [[ "$UPDATED" == "true" ]]; then
176+
docker image rm "$OLD_DIGEST"
177+
fi
178+
done
179+
find_runner_image_digests
180+
echo "Cleaning up old runner images"
181+
for DIGEST in "${RUNNER_DIGESTS[@]}"; do
182+
docker image rm -f "$DIGEST"
183+
done
119184
}
120185

121186
upgrade_cli() {
187+
find_docker_image_digests
122188
echo "Updating CLI command"
123189
EXECUTABLE_PATH="${BASH_SOURCE[0]}"
124190
local TEMP_DIR=$(mktemp -d)
125191
TEMP_PATH="$TEMP_DIR/sleeper"
126192
curl "https://raw.githubusercontent.com/gchq/sleeper/develop/scripts/cli/runInDocker.sh" --output "$TEMP_PATH"
127193
chmod a+x "$TEMP_PATH"
128194
"$TEMP_PATH" cli pull-images
195+
remove_old_images
129196
mv "$TEMP_PATH" "$EXECUTABLE_PATH"
130197
rmdir "$TEMP_DIR"
131198
echo "Updated"
@@ -137,15 +204,6 @@ upgrade_cli() {
137204
exit
138205
}
139206

140-
pull_and_tag() {
141-
IMAGE_NAME=$1
142-
REMOTE_IMAGE="ghcr.io/gchq/$IMAGE_NAME:latest"
143-
LOCAL_IMAGE="$IMAGE_NAME:current"
144-
145-
docker pull "$REMOTE_IMAGE"
146-
docker tag "$REMOTE_IMAGE" "$LOCAL_IMAGE"
147-
}
148-
149207
COMMAND=$1
150208
shift
151209

0 commit comments

Comments
 (0)