-
Bug
-
Resolution: Unresolved
-
Major
-
Systemeigenschaften
Name ↓
Wert
user.timezone Europe/Berlin
user.name jenkins
user.language de
user.home /var/lib/jenkins
user.dir /
user.country DE
sun.os.patch.level unknown
sun.management.compiler HotSpot 64-Bit Tiered Compilers
sun.jnu.encoding UTF-8
sun.java.launcher SUN_STANDARD
sun.java.command /usr/lib/jenkins/jenkins.war --logfile=/var/log/jenkins/jenkins.log --webroot=/var/cache/jenkins/war --daemon --httpPort=8080 --ajp13Port=8009 --debug=5 --handlerCountMax=100 --handlerCountMaxIdle=20
sun.io.unicode.encoding UnicodeLittle
sun.font.fontmanager sun.awt.X11FontManager
sun.cpu.isalist
sun.cpu.endian little
sun.boot.library.path /usr/java/jdk1.8.0_45/jre/lib/amd64
sun.boot.class.path /usr/java/jdk1.8.0_45/jre/lib/resources.jar:/usr/java/jdk1.8.0_45/jre/lib/rt.jar:/usr/java/jdk1.8.0_45/jre/lib/sunrsasign.jar:/usr/java/jdk1.8.0_45/jre/lib/jsse.jar:/usr/java/jdk1.8.0_45/jre/lib/jce.jar:/usr/java/jdk1.8.0_45/jre/lib/charsets.jar:/usr/java/jdk1.8.0_45/jre/lib/jfr.jar:/usr/java/jdk1.8.0_45/jre/classes
sun.arch.data.model 64
path.separator :
os.version 3.8.13-68.3.3.el7uek.x86_64
os.name Linux
os.arch amd64
mail.smtps.sendpartial true
mail.smtp.sendpartial true
line.separator
lib.svnkit.ssh2.persistent false
lib.svnkit.http.methods Digest,Basic,NTLM,Negotiate
jnidispatch.path /tmp/jna--1712433994/jna4244853536295263288.tmp
jna.platform.library.path /usr/lib64:/lib64:/usr/lib:/lib
JENKINS_HOME /var/lib/jenkins
java.vm.version 25.45-b02
java.vm.vendor Oracle Corporation
java.vm.specification.version 1.8
java.vm.specification.vendor Oracle Corporation
java.vm.specification.name Java Virtual Machine Specification
java.vm.name Java HotSpot(TM) 64-Bit Server VM
java.vm.info mixed mode
java.version 1.8.0_45
java.vendor.url.bug http://bugreport.sun.com/bugreport/
java.vendor.url http://java.oracle.com/
java.vendor Oracle Corporation
java.specification.version 1.8
java.specification.vendor Oracle Corporation
java.specification.name Java Platform API Specification
java.runtime.version 1.8.0_45-b14
java.runtime.name Java(TM) SE Runtime Environment
java.library.path /usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
java.io.tmpdir /tmp
java.home /usr/java/jdk1.8.0_45/jre
java.ext.dirs /usr/java/jdk1.8.0_45/jre/lib/ext:/usr/java/packages/lib/ext
java.endorsed.dirs /usr/java/jdk1.8.0_45/jre/lib/endorsed
java.class.version 52.0
java.class.path /usr/lib/jenkins/jenkins.war
java.awt.printerjob sun.print.PSPrinterJob
java.awt.headless true
java.awt.graphicsenv sun.awt.X11GraphicsEnvironment
hudson.Functions.autoRefreshSeconds 30
hudson.diyChunking true
file.separator /
file.encoding.pkg sun.io
file.encoding UTF-8
executable-war /usr/lib/jenkins/jenkins.war
com.sun.akuma.Daemon daemonized
awt.toolkit sun.awt.X11.XToolkit
Umgebungsvariablen
Name ↓
Wert
XFILESEARCHPATH /usr/dt/app-defaults/%L/Dt
USER jenkins
SHLVL 2
SHELL /bin/bash
PWD /
PATH /sbin:/usr/sbin:/bin:/usr/bin
NLSPATH /usr/dt/lib/nls/msg/%L/%N.cat
LOGNAME jenkins
LANG de_DE.UTF-8
HOME /var/lib/jenkins
_ /usr/java/jdk1.8.0_45/jre/bin/java
Plugins
Name ↓
Version
Aktiviert
Gesperrt
ws-cleanup 0.26 true false
workflow-support 1.8 true false
workflow-step-api 1.8 true false
workflow-api 1.8 true false
windows-slaves 1.1 true true
vsphere-cloud 2.6 true false
viewVC 1.7 true false
translation 1.12 true true
token-macro 1.10 true false
throttle-concurrents 1.8.4 true false
template-workflows 1.2 true false
subversion 2.5 true true
ssh-slaves 1.9 true false
ssh-credentials 1.11 true true
ssh-agent 1.7 true false
ssh 2.4 true false
slave-proxy 1.1 true false
shared-workspace 1.0.2 true false
script-security 1.14 true true
scm-api 0.2 true false
run-condition 1.0 true false
promoted-builds 2.21 true false
project-inheritance 1.5.3 true false
PrioritySorter 3.4 true false
preSCMbuildstep 0.3 true false
plain-credentials 1.1 true false
parameterized-trigger 2.27 true false
pam-auth 1.2 true true
next-executions 1.0.10 true false
multiple-scms 0.4 true false
mercurial 1.54 true false
maven-plugin 2.10 true true
matrix-project 1.6 true true
matrix-auth 1.2 true true
mapdb-api 1.0.6.0 true false
mailer 1.15 true true
lenientshutdown 1.0.0 true false
ldap 1.11 true true
junit 1.6 true true
jquery-ui 1.0.2 true false
jquery 1.11.2-0 true false
jobrequeue 1.0 true false
jobgenerator 1.22 true false
job-restrictions 0.4 true false
job-poll-action-plugin 1.0 true false
jenkins-multijob-plugin 1.16 true false
javadoc 1.3 true true
greenballs 1.14 true false
global-variable-string-parameter 1.2 true false
global-build-stats 1.3 true false
github-api 1.68 true false
github 1.11.3 true false
git-client 1.17.1 true false
git 2.3.5 true false
ghprb 1.24.3 true false
extra-columns 1.15 true false
external-monitor-job 1.4 true false
envinject 1.91.3 true false
durable-task 1.5 true false
downstream-buildview 1.9 true false
docker-plugin 0.9.3 true false
depgraph-view 0.11 true false
debian-package-builder 1.6.9 true false
database-postgresql 1.0 true false
database 1.3 true false
dashboard-view 2.9.5 true false
cvs 2.12 true true
credentials 1.22 true true
copy-project-link 1.4 true false
console-column-plugin 1.5 true false
configure-job-column-plugin 1.0 true false
config-autorefresh-plugin 1.0 true false
conditional-buildstep 1.3.3 true false
compact-columns 1.10 true false
collapsing-console-sections 1.4.1 true false
chroot 0.1.4 true false
categorized-view 1.8 true false
buildtriggerbadge 2.0 true false
buildgraph-view 1.1.1 true false
build-user-vars-plugin 1.4 true false
build-timeout 1.14.1 true false
build-pipeline-plugin 1.4.7 true false
build-history-metrics-plugin 1.2 true false
build-flow-toolbox-plugin 0.1 true false
build-flow-test-aggregator 1.1 true false
build-flow-plugin 0.18 true false
build-environment 1.5 true false
antisamy-markup-formatter 1.3 true true
ant 1.2 true false
all-changes 1.3 true false
active-directory 1.41 true falseSystemeigenschaften Name ↓ Wert user.timezone Europe/Berlin user.name jenkins user.language de user.home /var/lib/jenkins user.dir / user.country DE sun.os.patch.level unknown sun.management.compiler HotSpot 64-Bit Tiered Compilers sun.jnu.encoding UTF-8 sun.java.launcher SUN_STANDARD sun.java.command /usr/lib/jenkins/jenkins.war --logfile=/var/log/jenkins/jenkins.log --webroot=/var/cache/jenkins/war --daemon --httpPort=8080 --ajp13Port=8009 --debug=5 --handlerCountMax=100 --handlerCountMaxIdle=20 sun.io.unicode.encoding UnicodeLittle sun.font.fontmanager sun.awt.X11FontManager sun.cpu.isalist sun.cpu.endian little sun.boot.library.path /usr/java/jdk1.8.0_45/jre/lib/amd64 sun.boot.class.path /usr/java/jdk1.8.0_45/jre/lib/resources.jar:/usr/java/jdk1.8.0_45/jre/lib/rt.jar:/usr/java/jdk1.8.0_45/jre/lib/sunrsasign.jar:/usr/java/jdk1.8.0_45/jre/lib/jsse.jar:/usr/java/jdk1.8.0_45/jre/lib/jce.jar:/usr/java/jdk1.8.0_45/jre/lib/charsets.jar:/usr/java/jdk1.8.0_45/jre/lib/jfr.jar:/usr/java/jdk1.8.0_45/jre/classes sun.arch.data.model 64 path.separator : os.version 3.8.13-68.3.3.el7uek.x86_64 os.name Linux os.arch amd64 mail.smtps.sendpartial true mail.smtp.sendpartial true line.separator lib.svnkit.ssh2.persistent false lib.svnkit.http.methods Digest,Basic,NTLM,Negotiate jnidispatch.path /tmp/jna--1712433994/jna4244853536295263288.tmp jna.platform.library.path /usr/lib64:/lib64:/usr/lib:/lib JENKINS_HOME /var/lib/jenkins java.vm.version 25.45-b02 java.vm.vendor Oracle Corporation java.vm.specification.version 1.8 java.vm.specification.vendor Oracle Corporation java.vm.specification.name Java Virtual Machine Specification java.vm.name Java HotSpot(TM) 64-Bit Server VM java.vm.info mixed mode java.version 1.8.0_45 java.vendor.url.bug http://bugreport.sun.com/bugreport/ java.vendor.url http://java.oracle.com/ java.vendor Oracle Corporation java.specification.version 1.8 java.specification.vendor Oracle Corporation java.specification.name Java Platform API Specification java.runtime.version 1.8.0_45-b14 java.runtime.name Java(TM) SE Runtime Environment java.library.path /usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib java.io.tmpdir /tmp java.home /usr/java/jdk1.8.0_45/jre java.ext.dirs /usr/java/jdk1.8.0_45/jre/lib/ext:/usr/java/packages/lib/ext java.endorsed.dirs /usr/java/jdk1.8.0_45/jre/lib/endorsed java.class.version 52.0 java.class.path /usr/lib/jenkins/jenkins.war java.awt.printerjob sun.print.PSPrinterJob java.awt.headless true java.awt.graphicsenv sun.awt.X11GraphicsEnvironment hudson.Functions.autoRefreshSeconds 30 hudson.diyChunking true file.separator / file.encoding.pkg sun.io file.encoding UTF-8 executable-war /usr/lib/jenkins/jenkins.war com.sun.akuma.Daemon daemonized awt.toolkit sun.awt.X11.XToolkit Umgebungsvariablen Name ↓ Wert XFILESEARCHPATH /usr/dt/app-defaults/%L/Dt USER jenkins SHLVL 2 SHELL /bin/bash PWD / PATH /sbin:/usr/sbin:/bin:/usr/bin NLSPATH /usr/dt/lib/nls/msg/%L/%N.cat LOGNAME jenkins LANG de_DE.UTF-8 HOME /var/lib/jenkins _ /usr/java/jdk1.8.0_45/jre/bin/java Plugins Name ↓ Version Aktiviert Gesperrt ws-cleanup 0.26 true false workflow-support 1.8 true false workflow-step-api 1.8 true false workflow-api 1.8 true false windows-slaves 1.1 true true vsphere-cloud 2.6 true false viewVC 1.7 true false translation 1.12 true true token-macro 1.10 true false throttle-concurrents 1.8.4 true false template-workflows 1.2 true false subversion 2.5 true true ssh-slaves 1.9 true false ssh-credentials 1.11 true true ssh-agent 1.7 true false ssh 2.4 true false slave-proxy 1.1 true false shared-workspace 1.0.2 true false script-security 1.14 true true scm-api 0.2 true false run-condition 1.0 true false promoted-builds 2.21 true false project-inheritance 1.5.3 true false PrioritySorter 3.4 true false preSCMbuildstep 0.3 true false plain-credentials 1.1 true false parameterized-trigger 2.27 true false pam-auth 1.2 true true next-executions 1.0.10 true false multiple-scms 0.4 true false mercurial 1.54 true false maven-plugin 2.10 true true matrix-project 1.6 true true matrix-auth 1.2 true true mapdb-api 1.0.6.0 true false mailer 1.15 true true lenientshutdown 1.0.0 true false ldap 1.11 true true junit 1.6 true true jquery-ui 1.0.2 true false jquery 1.11.2-0 true false jobrequeue 1.0 true false jobgenerator 1.22 true false job-restrictions 0.4 true false job-poll-action-plugin 1.0 true false jenkins-multijob-plugin 1.16 true false javadoc 1.3 true true greenballs 1.14 true false global-variable-string-parameter 1.2 true false global-build-stats 1.3 true false github-api 1.68 true false github 1.11.3 true false git-client 1.17.1 true false git 2.3.5 true false ghprb 1.24.3 true false extra-columns 1.15 true false external-monitor-job 1.4 true false envinject 1.91.3 true false durable-task 1.5 true false downstream-buildview 1.9 true false docker-plugin 0.9.3 true false depgraph-view 0.11 true false debian-package-builder 1.6.9 true false database-postgresql 1.0 true false database 1.3 true false dashboard-view 2.9.5 true false cvs 2.12 true true credentials 1.22 true true copy-project-link 1.4 true false console-column-plugin 1.5 true false configure-job-column-plugin 1.0 true false config-autorefresh-plugin 1.0 true false conditional-buildstep 1.3.3 true false compact-columns 1.10 true false collapsing-console-sections 1.4.1 true false chroot 0.1.4 true false categorized-view 1.8 true false buildtriggerbadge 2.0 true false buildgraph-view 1.1.1 true false build-user-vars-plugin 1.4 true false build-timeout 1.14.1 true false build-pipeline-plugin 1.4.7 true false build-history-metrics-plugin 1.2 true false build-flow-toolbox-plugin 0.1 true false build-flow-test-aggregator 1.1 true false build-flow-plugin 0.18 true false build-environment 1.5 true false antisamy-markup-formatter 1.3 true true ant 1.2 true false all-changes 1.3 true false active-directory 1.41 true false
Assume one project triggered parts of triggered by different upstream projects:
freebsd-all
- freebsd-checkout-source
- freebsd-checkout-ports
- freebsd-makeindex
- freebsd-portversion
- freebsd-buildworld
- freebsd-buildkernel
- freebsd-installkernel
- reboot
- freebsd-installworld
- reboot
- freebsd-portupgrade
- reboot
- freebsd-testsuite
freebsd-ports
- freebsd-checkout-ports
- freebsd-makeindex
- freebsd-portversion
- freebsd-portupgrade
- reboot
- freebsd-testsuite
now lets trigger freebsd-all if scm changes in the source tree are detected, and lets trigger freebsd-ports if sm changes in the ports tree are detected. Since both builds share some downstream builders it is necessary to block freebsd-all if freebsd-ports is running and to block freebsd-ports if freebsd-all is running. To achieve it I'd defined token freebsd.
Now freebsd-all sets token freebsd -> blocking itself and freebsd-ports if it is running.
Same for freebsd-ports: sets token freebsd -> blocking itself and freebsd-all.
If you now trigger both at the very same time, both will acquire token freebsd and both jobs will run in parallel messing up some things – or at least doing them twice!
Looks like locking implemented by trottle-concurrent-builds leads to a race condition allowing both builds to acquire the same token and both think its all OK to run now.
Sorry for missing this issue.
Is it actual now? TCB plugin is known to be non-reliable in 1.535...1.609.1 due to the executors handling approach changes. If you see the issue on other version, please provide more details.