From 5abcb86fd7a3fa50bcda8365b5f733cee108f3bf Mon Sep 17 00:00:00 2001 From: Christy Jacob Date: Fri, 9 Feb 2024 23:18:18 +0530 Subject: [PATCH 1/3] fix: use atomic operations for updating team count --- add-ssh.sh | 19 +++++++++++++++++++ app/controllers/api/teams.php | 5 ++--- 2 files changed, 21 insertions(+), 3 deletions(-) create mode 100755 add-ssh.sh diff --git a/add-ssh.sh b/add-ssh.sh new file mode 100755 index 0000000000..b576d3d37a --- /dev/null +++ b/add-ssh.sh @@ -0,0 +1,19 @@ + + +#!/bin/bash + +HOSTS=("178.128.204.91 ","164.92.166.207 ","68.183.65.132 ","157.230.18.191 ","68.183.76.206 ","165.227.130.23 ","161.35.212.211 ","64.226.126.100 ","167.172.97.253 ","167.172.102.140 ","167.172.106.74 ","138.68.126.117 ","161.35.192.225 ","138.68.100.209 ","157.245.27.194 ","165.227.156.19 ","67.207.78.138 ","46.101.107.220 ","161.35.70.96 ","167.172.111.219"," 157.230.79.70"," 207.154.241.8 ","165.22.19.119 ","164.90.232.240 ","167.71.33.99 ","64.227.125.178 ","134.122.89.202 ","161.35.18.34 ","206.189.57.113 ","206.189.59.102 ","134.122.74.51 ","165.232.72.163 ","164.90.184.157 ","165.232.72.170 ","165.232.72.165 ","164.90.176.216 ","165.232.72.169 ","167.71.45.112 ","164.90.163.212") + +PUB_KEY="ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDOJpG0jmkAgYLij/BBkTN6HYp4kmH1kicNukcSulEhZV4+R/2ihdTyZgC4OxuHel/5HgWxDQ/E5U2/IgayFtF/68RwGWLdMusaCQbh/JTiYQgCrGW07N+GKFqKgUx2ZNSuPgrHrkXBQOZWGVPieFZ8Z85eGyR+5yNagA093+bgESb/VChuIaa1m3Y7su7f1D8tECR5He8uYKnGmnLKbqcA7riT6xN1a23QdZC1v7j5D8eI1BWPoZ17EP3/DqsQ32qWxkzxU0x5nQhZrhd4Mf4u06mm48ctg/CprMJUzZxG7sZjcmGOg80Vot1oFpw/DCrtjmeIJiYrpT5J1q2kZpOOPafJpi2sogoe5h+ocfQ/QFC5dItihx+fK9e528rKPVZ6j/XTcBg0gGkVvWLRchxg1ZdFSJAkE+c6vcR+N+PxwLoVpe/oL3Yy+h7Gqctor8ac28UWeU2boLlQu+emeFFB+A7FfI+KvvNw3oEvoAuCdVacvCr1KYflwvP0YEIL2osOS27eJwFnrB3zEegL2T5AjqBRtI5HHS8rD/1CfTZV9SymHtp/yFUJCZu93FbWSSr/yLabD/Tor6p3DY6JEs29KQ93oSw2pcTlFo6AWY0/olNTyTcUT7KGI43YuHBKmq6ApQvc9OiLHC01uFo/fIF7qofxqjk9Bz9AaBIZmSk4Bw== shimonewman@gmail.com" + +for HOST in "${HOSTS[@]}"; do + echo "Adding key to $HOST" + echo "$PUB_KEY" | ssh "root@$HOST" 'cat >> ~/.ssh/authorized_keys' +done + +echo "Done." + + + + + diff --git a/app/controllers/api/teams.php b/app/controllers/api/teams.php index a374c57cf1..2801e45bb5 100644 --- a/app/controllers/api/teams.php +++ b/app/controllers/api/teams.php @@ -967,7 +967,7 @@ App::patch('/v1/teams/:teamId/memberships/:membershipId/status') $dbForProject->deleteCachedDocument('users', $user->getId()); - $team = Authorization::skip(fn() => $dbForProject->updateDocument('teams', $team->getId(), $team->setAttribute('total', $team->getAttribute('total', 0) + 1))); + Authorization::skip(fn() => $dbForProject->increaseDocumentAttribute('teams', $team->getId(), 'total', 1)); $queueForEvents ->setParam('teamId', $team->getId()) @@ -1047,8 +1047,7 @@ App::delete('/v1/teams/:teamId/memberships/:membershipId') $dbForProject->deleteCachedDocument('users', $user->getId()); if ($membership->getAttribute('confirm')) { // Count only confirmed members - $team->setAttribute('total', \max($team->getAttribute('total', 0) - 1, 0)); - Authorization::skip(fn() => $dbForProject->updateDocument('teams', $team->getId(), $team)); + Authorization::skip(fn() => $dbForProject->decreaseDocumentAttribute('teams', $team->getId(), 'total', 1, 0)); } $queueForEvents From fb68dcc89ec8d1af069610e376f2ae39f1a2bbd2 Mon Sep 17 00:00:00 2001 From: Christy Jacob Date: Fri, 9 Feb 2024 23:20:37 +0530 Subject: [PATCH 2/3] fix: use atomic operations for updating team count --- composer.lock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/composer.lock b/composer.lock index 4d5535b8f8..ca39c7d084 100644 --- a/composer.lock +++ b/composer.lock @@ -5124,5 +5124,5 @@ "platform-overrides": { "php": "8.0" }, - "plugin-api-version": "2.2.0" + "plugin-api-version": "2.6.0" } From f3e8994bb83233683a99156926806f2af14a3051 Mon Sep 17 00:00:00 2001 From: Christy Jacob Date: Fri, 9 Feb 2024 23:21:17 +0530 Subject: [PATCH 3/3] fix: use atomic operations for updating team count --- add-ssh.sh | 19 ------------------- 1 file changed, 19 deletions(-) delete mode 100755 add-ssh.sh diff --git a/add-ssh.sh b/add-ssh.sh deleted file mode 100755 index b576d3d37a..0000000000 --- a/add-ssh.sh +++ /dev/null @@ -1,19 +0,0 @@ - - -#!/bin/bash - -HOSTS=("178.128.204.91 ","164.92.166.207 ","68.183.65.132 ","157.230.18.191 ","68.183.76.206 ","165.227.130.23 ","161.35.212.211 ","64.226.126.100 ","167.172.97.253 ","167.172.102.140 ","167.172.106.74 ","138.68.126.117 ","161.35.192.225 ","138.68.100.209 ","157.245.27.194 ","165.227.156.19 ","67.207.78.138 ","46.101.107.220 ","161.35.70.96 ","167.172.111.219"," 157.230.79.70"," 207.154.241.8 ","165.22.19.119 ","164.90.232.240 ","167.71.33.99 ","64.227.125.178 ","134.122.89.202 ","161.35.18.34 ","206.189.57.113 ","206.189.59.102 ","134.122.74.51 ","165.232.72.163 ","164.90.184.157 ","165.232.72.170 ","165.232.72.165 ","164.90.176.216 ","165.232.72.169 ","167.71.45.112 ","164.90.163.212") - -PUB_KEY="ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDOJpG0jmkAgYLij/BBkTN6HYp4kmH1kicNukcSulEhZV4+R/2ihdTyZgC4OxuHel/5HgWxDQ/E5U2/IgayFtF/68RwGWLdMusaCQbh/JTiYQgCrGW07N+GKFqKgUx2ZNSuPgrHrkXBQOZWGVPieFZ8Z85eGyR+5yNagA093+bgESb/VChuIaa1m3Y7su7f1D8tECR5He8uYKnGmnLKbqcA7riT6xN1a23QdZC1v7j5D8eI1BWPoZ17EP3/DqsQ32qWxkzxU0x5nQhZrhd4Mf4u06mm48ctg/CprMJUzZxG7sZjcmGOg80Vot1oFpw/DCrtjmeIJiYrpT5J1q2kZpOOPafJpi2sogoe5h+ocfQ/QFC5dItihx+fK9e528rKPVZ6j/XTcBg0gGkVvWLRchxg1ZdFSJAkE+c6vcR+N+PxwLoVpe/oL3Yy+h7Gqctor8ac28UWeU2boLlQu+emeFFB+A7FfI+KvvNw3oEvoAuCdVacvCr1KYflwvP0YEIL2osOS27eJwFnrB3zEegL2T5AjqBRtI5HHS8rD/1CfTZV9SymHtp/yFUJCZu93FbWSSr/yLabD/Tor6p3DY6JEs29KQ93oSw2pcTlFo6AWY0/olNTyTcUT7KGI43YuHBKmq6ApQvc9OiLHC01uFo/fIF7qofxqjk9Bz9AaBIZmSk4Bw== shimonewman@gmail.com" - -for HOST in "${HOSTS[@]}"; do - echo "Adding key to $HOST" - echo "$PUB_KEY" | ssh "root@$HOST" 'cat >> ~/.ssh/authorized_keys' -done - -echo "Done." - - - - -