Skip to content

feat: branch creation/deletion performance improvement #10807

feat: branch creation/deletion performance improvement

feat: branch creation/deletion performance improvement #10807

Triggered via pull request February 26, 2026 09:53
Status Failure
Total duration 16m 52s
Artifacts 13

test.yml

on: pull_request
Build backend 🏗️
3m 1s
Build backend 🏗️
Build frontend 🏗️
3m 2s
Build frontend 🏗️
Install E2E dependencies ⬇️
41s
Install E2E dependencies ⬇️
Frontend static check 🪲
4m 13s
Frontend static check 🪲
E2E Static Check 🪲
36s
E2E Static Check 🪲
Ktlint 🪲
1m 13s
Ktlint 🪲
Matrix: BT ‍🔎
Schema Check 📋
2m 30s
Schema Check 📋
Migration Check 🗃️
2m 5s
Migration Check 🗃️
Matrix: E2E testing ‍🔎
Everything passed 🎉
2s
Everything passed 🎉
Fit to window
Zoom out
Zoom in

Annotations

8 errors and 3 warnings
E2E testing ‍🔎 (15, 4)
Final attempt failed. Child_process exited with error code 1
E2E testing ‍🔎 (15, 2)
Final attempt failed. Child_process exited with error code 1
io.tolgee.ee.service.branching.BranchMergeServiceTest ► apply merge - labels merge correctly(): ee/backend/app/src/main/kotlin/io/tolgee/ee/service/branching/BranchServiceImpl.kt#L235
Failed test found in: ee/backend/tests/build/test-results/test/TEST-io.tolgee.ee.service.branching.BranchMergeServiceTest.xml Error: io.tolgee.exceptions.BadRequestException: branch_merge_revision_not_valid null
io.tolgee.ee.slack.SlackWithBatchOperationTest ► sends only 1 message per whole operation (when translations were updated before)(): ee/backend/tests/src/test/kotlin/io/tolgee/ee/slack/SlackWithBatchOperationTest.kt#L97
Failed test found in: ee/backend/tests/build/test-results/test/TEST-io.tolgee.ee.slack.SlackWithBatchOperationTest.xml Error: java.lang.AssertionError:
Failed Test: io.tolgee.ee.service.branching.BranchMergeServiceTest: apply merge - labels merge correctly()
io.tolgee.ee.service.branching.BranchMergeServiceTest: apply merge - labels merge correctly(): io.tolgee.exceptions.BadRequestException: branch_merge_revision_not_valid null - io.tolgee.exceptions.BadRequestException: branch_merge_revision_not_valid null at app//io.tolgee.ee.service.branching.BranchServiceImpl.applyMerge(BranchServiceImpl.kt:235) at java.base@21.0.10/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) at java.base@21.0.10/java.lang.reflect.Method.invoke(Method.java:580) at app//org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:360) at app//org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:196) at app//org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163) at app//org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:380) at app//org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:119) at app//org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:184) at app//org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:728) at app//io.tolgee.ee.service.branching.BranchServiceImpl$$SpringCGLIB$$0.applyMerge(<generated>) at app//io.tolgee.service.branching.BranchService$DefaultImpls.applyMerge$default(BranchService.kt:115) at app//io.tolgee.ee.service.branching.BranchMergeServiceTest.applyMerge(BranchMergeServiceTest.kt:555) at app//io.tolgee.ee.service.branching.BranchMergeServiceTest.dryRunAndMergeFeatureBranch(BranchMergeServiceTest.kt:559) at app//io.tolgee.ee.service.branching.BranchMergeServiceTest.apply merge - labels merge correctly(BranchMergeServiceTest.kt:331) at java.base@21.0.10/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) at java.base@21.0.10/java.lang.reflect.Method.invoke(Method.java:580) at app//org.junit.platform.commons.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:767) at app//org.junit.jupiter.engine.execution.MethodInvocation.proceed(MethodInvocation.java:60) at app//org.junit.jupiter.engine.execution.InvocationInterceptorChain$ValidatingInvocation.proceed(InvocationInterceptorChain.java:131) at app//org.junit.jupiter.engine.extension.TimeoutExtension.intercept(TimeoutExtension.java:156) at app//org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestableMethod(TimeoutExtension.java:147) at app//org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestMethod(TimeoutExtension.java:86) at app//org.junit.jupiter.engine.execution.InterceptingExecutableInvoker$ReflectiveInterceptorCall.lambda$ofVoidMethod$0(InterceptingExecutableInvoker.java:103) at app//org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.lambda$invoke$0(InterceptingExecutableInvoker.java:93) at app//org.junit.jupiter.engine.execution.InvocationInterceptorChain$InterceptedInvocation.proceed(InvocationInterceptorChain.java:106) at app//org.junit.jupiter.engine.execution.InvocationInterceptorChain.proceed(InvocationInterceptorChain.java:64) at app//org.junit.jupiter.engine.execution.InvocationInterceptorChain.chainAndInvoke(InvocationInterceptorChain.java:45) at app//org.junit.jupiter.engine.execution.InvocationInterceptorChain.invoke(InvocationInterceptorChain.java:37) at app//org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.invoke(InterceptingExecutableInvoker.java:92) at app//org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.invoke(InterceptingExecutableInvoker.java:86) at app//org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$invokeTestMethod$8(TestMethodTestDescriptor.java:217) at app//org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) at app//org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.invokeTestMetho
Failed Test: io.tolgee.ee.slack.SlackWithBatchOperationTest: sends only 1 message per whole operation (when translations were updated before)()
io.tolgee.ee.slack.SlackWithBatchOperationTest: sends only 1 message per whole operation (when translations were updated before)(): java.lang.AssertionError: Expected size: 0 but was: 2 in: [ChatUpdateRequest(token=null, channel=testChannel, ts=ts, text=null, user=null, replyBroadcast=null, asUser=null, metadata=null, metadataAsString=null, blocks=[SectionBlock(type=section, text=MarkdownTextObject(type=mrkdwn, text= *<@slackUserId>* has changed a base language translation, verbatim=null), blockId=null, fields=null, accessory=null), SectionBlock(type=section, text=null, blockId=null, fields=[MarkdownTextObject(type=mrkdwn, text=*Key* key1, verbatim=null)], accessory=null)], blocksAsString=null, attachments=[Attachment(msgSubtype=null, fallback=Updated, callbackId=null, color=#FFCE00, hideColor=null, pretext=null, serviceUrl=null, serviceName=null, serviceIcon=null, authorId=null, authorName=null, authorLink=null, authorIcon=null, fromUrl=null, originalUrl=null, authorSubname=null, channelId=null, channelName=null, channelTeam=null, id=null, appId=null, botId=null, indent=null, msgUnfurl=null, replyUnfurl=null, threadRootUnfurl=null, appUnfurl=null, appUnfurlUrl=null, title=null, titleLink=null, text=null, fields=null, imageUrl=null, imageWidth=null, imageHeight=null, imageBytes=null, thumbUrl=null, thumbWidth=null, thumbHeight=null, videoUrl=null, videoHtml=null, videoHtmlWidth=null, videoHtmlHeight=null, footer=null, footerIcon=null, ts=null, mrkdwnIn=null, actions=null, blocks=[SectionBlock(type=section, text=MarkdownTextObject(type=mrkdwn, text=null *English* (base), verbatim=null), blockId=null, fields=null, accessory=null), SectionBlock(type=section, text=MarkdownTextObject(type=mrkdwn, text=Updated, verbatim=null), blockId=null, fields=null, accessory=null), ContextBlock(type=context, elements=[MarkdownTextObject(type=mrkdwn, text=*<@slackUserId>* has changed the translation at <!date^1772100194^{time}|10:03>, verbatim=null)], blockId=null)], messageBlocks=null, preview=null, files=null, filename=null, size=null, mimetype=null, url=null, metadata=null, fileAttachment=null), Attachment(msgSubtype=null, fallback=Translated with Google, callbackId=null, color=#FFCE00, hideColor=null, pretext=null, serviceUrl=null, serviceName=null, serviceIcon=null, authorId=null, authorName=null, authorLink=null, authorIcon=null, fromUrl=null, originalUrl=null, authorSubname=null, channelId=null, channelName=null, channelTeam=null, id=null, appId=null, botId=null, indent=null, msgUnfurl=null, replyUnfurl=null, threadRootUnfurl=null, appUnfurl=null, appUnfurlUrl=null, title=null, titleLink=null, text=null, fields=null, imageUrl=null, imageWidth=null, imageHeight=null, imageBytes=null, thumbUrl=null, thumbWidth=null, thumbHeight=null, videoUrl=null, videoHtml=null, videoHtmlWidth=null, videoHtmlHeight=null, footer=null, footerIcon=null, ts=null, mrkdwnIn=null, actions=null, blocks=[SectionBlock(type=section, text=MarkdownTextObject(type=mrkdwn, text=null *Czech* , verbatim=null), blockId=null, fields=null, accessory=null), SectionBlock(type=section, text=MarkdownTextObject(type=mrkdwn, text=Translated with Google, verbatim=null), blockId=null, fields=null, accessory=null), ContextBlock(type=context, elements=[MarkdownTextObject(type=mrkdwn, text=*<@slackUserId>* has changed the translation at <!date^1772100194^{time}|10:03>, verbatim=null)], blockId=null)], messageBlocks=null, preview=null, files=null, filename=null, size=null, mimetype=null, url=null, metadata=null, fileAttachment=null), Attachment(msgSubtype=null, fallback=Translated with Google, callbackId=null, color=#FFCE00, hideColor=null, pretext=null, serviceUrl=null, serviceName=null, serviceIcon=null, authorId=null, authorName=null, authorLink=null, authorIcon=null, fromUrl=null, originalUrl=null, authorSubname=null, channelId=null, channelName=null, channelTeam=null, id=null, appId=null, botId=null, indent=null, msgUnfurl=null, replyUnfurl=null, threadRootUnfurl=null, appUnfurl=null, appUnfurlUrl=null, title=null, titleLink=null, text=null, fields=null, imageUrl=null, imag
BT ‍🔎 (ee-test:test)
Final attempt failed. Child_process exited with error code 1
Everything passed 🎉
Process completed with exit code 1.
E2E testing ‍🔎 (15, 4)
No files were found with the provided path: ./e2e/server.log. No artifacts will be uploaded.
E2E testing ‍🔎 (15, 4)
No files were found with the provided path: ./e2e/cypress/videos/**/* ./e2e/cypress/screenshots/**/* ./e2e/server. No artifacts will be uploaded.
BT ‍🔎 (server-app:runStandardTests)
Test report summary exceeded limit of 65535 bytes and will be trimmed

Artifacts

Produced during runtime
Name Size Digest
backend Expired
252 MB
sha256:7624cf070fb507eb78f843b8ae178e4bd6bc54505d326e35b7dee057ad169eb9
backend_test_reports_data_test Expired
152 KB
sha256:adbbac379e80a9741b9e9ef2510fc9a417c16ddf3bae4ad78bbbfc1f549602a3
backend_test_reports_ee-test_test Expired
3.05 MB
sha256:a202f8302b2b4bc86adc5b7496874bc25bb3b8375c6760ed037db4eee9ec8240
backend_test_reports_ktlint_test Expired
8.01 KB
sha256:fcbaf66293dbb4403cd997dfd2b2de4937b1c6241fcd5806dab6447db134e6b6
backend_test_reports_security_test Expired
27.2 KB
sha256:552a00694a83fdc5ed729978121b7cd63481e93f1920398a751d6a907dd68e23
backend_test_reports_server-app_runContextRecreatingTests Expired
286 KB
sha256:0203f7d56c63d138bd9a0a514a68ab4e702669b4b1273a51efa1c20580dc58ed
backend_test_reports_server-app_runStandardTests Expired
809 KB
sha256:f0350ad8d624c0af4508ee33d7b0a299c3a8dd0cf2788d0b932a74a784d81cc8
backend_test_reports_server-app_runWebsocketTests Expired
111 KB
sha256:7945cd4d4e83a3ead6aa16f600b188f82b8c02549654febc33109c85e7999045
backend_test_reports_server-app_runWithoutEeTests Expired
73.2 KB
sha256:020593b8321da91cb3cdca74e15d364abbdc90d2dc7a0a526ebb8ae1491a2d03
e2e_2 Expired
97.9 KB
sha256:d5f356820e2e9ac9f38d9d27ba5aef0718b99d1634dc27f70532f049265e786d
e2e_deps Expired
181 MB
sha256:b993b1c09a95bb04cdc764af3cb5652270c1f9b24ac81b487869c5ea361f8126
e2e_server_log_2 Expired
499 KB
sha256:3aaf424d367b1b6739b063ff35148c86cc3ada4a3fa2d7e462a8bb2c6d46602e
webapp Expired
2.73 MB
sha256:b7bcf51c78ada93714283bd5afbe4028f467278f8bcd981ee7ca86ff93ab187e