issuekey,title,description,storypoint BAM-65,"Allows CVS repo to timeout and report on locking issues","Sometimes, when you perform a CVS action you get something like {noformat} cvs update: [01:38:32] waiting for mchai's lock in /cvsroot/atlassian/maven2test/bamboo {noformat} so Bamboo would probably just hang and become not so happy. We should allow Bamboo to timeout, or conditionally stop and tell the user how to dix the problem",3 BAM-932,"allow a build to be placed at the head of the build queue... (or edit the queue order)",NULL,2 BAM-3476,"Result not saved when checkout fails","Happened yesterday on our hosted bamboo: https://gdansk.bamboo2.atlassian.com/browse/INT-TST Bamboo was upgraded from 2.0.5 to 2.15 I had build log messages like: {noformat} 29-Jan-2009 03:12:23 Build INT-TST-1067 started building on agent Default Agent 29-Jan-2009 03:12:23 Updating source code to revision: 26986 29-Jan-2009 03:12:23 Source found at '/opt/j2ee/domains/bamboo2.atlassian.com/gdansk/webapps/data/bamboo-2.0.2-attempt/xml-data/build-dir/INT-TST'. Updating source... 29-Jan-2009 03:12:24 /opt/j2ee/domains/bamboo2.atlassian.com/gdansk/webapps/data/bamboo-2.0.2-attempt/xml-data/build-dir/INT-TST/src/test/java/com/atlassian/theplugin/idea 29-Jan-2009 03:12:24 /opt/j2ee/domains/bamboo2.atlassian.com/gdansk/webapps/data/bamboo-2.0.2-attempt/xml-data/build-dir/INT-TST/src/test/java/com/atlassian/theplugin 29-Jan-2009 03:12:24 /opt/j2ee/domains/bamboo2.atlassian.com/gdansk/webapps/data/bamboo-2.0.2-attempt/xml-data/build-dir/INT-TST/src/test/java/com/atlassian 29-Jan-2009 03:12:24 /opt/j2ee/domains/bamboo2.atlassian.com/gdansk/webapps/data/bamboo-2.0.2-attempt/xml-data/build-dir/INT-TST/src/test/java/com 29-Jan-2009 03:12:24 /opt/j2ee/domains/bamboo2.atlassian.com/gdansk/webapps/data/bamboo-2.0.2-attempt/xml-data/build-dir/INT-TST/src/test/java 29-Jan-2009 03:12:24 /opt/j2ee/domains/bamboo2.atlassian.com/gdansk/webapps/data/bamboo-2.0.2-attempt/xml-data/build-dir/INT-TST/src/test 29-Jan-2009 03:12:24 /opt/j2ee/domains/bamboo2.atlassian.com/gdansk/webapps/data/bamboo-2.0.2-attempt/xml-data/build-dir/INT-TST/src/main/java/com/atlassian/theplugin/idea/jira 29-Jan-2009 03:12:24 /opt/j2ee/domains/bamboo2.atlassian.com/gdansk/webapps/data/bamboo-2.0.2-attempt/xml-data/build-dir/INT-TST/src/main/java/com/atlassian/theplugin/idea/crucible/tree 29-Jan-2009 03:12:24 U /opt/j2ee/domains/bamboo2.atlassian.com/gdansk/webapps/data/bamboo-2.0.2-attempt/xml-data/build-dir/INT-TST/src/main/java/com/atlassian/theplugin/idea/crucible/editor/OpenDiffToolAction.java 29-Jan-2009 03:12:24 U /opt/j2ee/domains/bamboo2.atlassian.com/gdansk/webapps/data/bamboo-2.0.2-attempt/xml-data/build-dir/INT-TST/src/main/java/com/atlassian/theplugin/idea/crucible/editor/CrucibleEditorFactoryListener.java 29-Jan-2009 03:12:25 Error occurred while executing the build for INT-TST-1067 : Unable to retrieve source code to '26986' for 'INT-TST' 29-Jan-2009 03:15:23 Change detection found 11 changes 29-Jan-2009 03:15:23 Build INT-TST-1068 started building on agent Default Agent {noformat} {noformat} 29-Jan-2009 03:30:13 Build INT-TST2-1 started building on agent Default Agent 29-Jan-2009 03:30:13 Updating source code to latest 29-Jan-2009 03:30:13 Working directory '/opt/j2ee/domains/bamboo2.atlassian.com/gdansk/webapps/data/bamboo-2.0.2-attempt/xml-data/build-dir/INT-TST2' is empty. Checking out SVN URL 'https://studio.atlassian.com/svn/PL/trunk/atlassian-intellij-connector' 29-Jan-2009 03:30:15 U /opt/j2ee/domains/bamboo2.atlassian.com/gdansk/webapps/data/bamboo-2.0.2-attempt/xml-data/build-dir/INT-TST2/LICENSE 29-Jan-2009 03:30:15 U /opt/j2ee/domains/bamboo2.atlassian.com/gdansk/webapps/data/bamboo-2.0.2-attempt/xml-data/build-dir/INT-TST2/atlassian-idea-plugin.ipr 29-Jan-2009 03:30:15 A /opt/j2ee/domains/bamboo2.atlassian.com/gdansk/webapps/data/bamboo-2.0.2-attempt/xml-data/build-dir/INT-TST2/doc 29-Jan-2009 03:30:16 Error occurred while executing the build for INT-TST2-1 : Failed to checkout source code to revision 'HEAD' for https://studio.atlassian.com/svn/PL/trunk/atlassian-intellij-connector 29-Jan-2009 03:34:06 Manual build triggered by wseliga 29-Jan-2009 03:34:06 Build INT-TST2-2 started building on agent Default Agent 29-Jan-2009 03:34:06 Updating source code to latest 29-Jan-2009 03:34:06 Source found at '/opt/j2ee/domains/bamboo2.atlassian.com/gdansk/webapps/data/bamboo-2.0.2-attempt/xml-data/build-dir/INT-TST2'. Updating source... 29-Jan-2009 03:34:09 D /opt/j2ee/domains/bamboo2.atlassian.com/gdansk/webapps/data/bamboo-2.0.2-attempt/xml-data/build-dir/INT-TST2/doc 29-Jan-2009 03:34:09 A /opt/j2ee/domains/bamboo2.atlassian.com/gdansk/webapps/data/bamboo-2.0.2-attempt/xml-data/build-dir/INT-TST2/src 29-Jan-2009 03:34:09 A /opt/j2ee/domains/bamboo2.atlassian.com/gdansk/webapps/data/bamboo-2.0.2-attempt/xml-data/build-dir/INT-TST2/src/test 29-Jan-2009 03:34:09 A /opt/j2ee/domains/bamboo2.atlassian.com/gdansk/webapps/data/bamboo-2.0.2-attempt/xml-data/build-dir/INT-TST2/src/test/java 29-Jan-2009 03:34:09 A /opt/j2ee/domains/bamboo2.atlassian.com/gdansk/webapps/data/bamboo-2.0.2-attempt/xml-data/build-dir/INT-TST2/src/test/java/docs 29-Jan-2009 03:34:09 A /opt/j2ee/domains/bamboo2.atlassian.com/gdansk/webapps/data/bamboo-2.0.2-attempt/xml-data/build-dir/INT-TST2/src/test/java/com 29-Jan-2009 03:34:09 A /opt/j2ee/domains/bamboo2.atlassian.com/gdansk/webapps/data/bamboo-2.0.2-attempt/xml-data/build-dir/INT-TST2/src/test/java/com/atlassian 29-Jan-2009 03:34:09 A /opt/j2ee/domains/bamboo2.atlassian.com/gdansk/webapps/data/bamboo-2.0.2-attempt/xml-data/build-dir/INT-TST2/src/test/java/com/atlassian/theplugin 29-Jan-2009 03:34:09 A /opt/j2ee/domains/bamboo2.atlassian.com/gdansk/webapps/data/bamboo-2.0.2-attempt/xml-data/build-dir/INT-TST2/src/test/java/com/atlassian/theplugin/bamboo 29-Jan-2009 03:34:09 A /opt/j2ee/domains/bamboo2.atlassian.com/gdansk/webapps/data/bamboo-2.0.2-attempt/xml-data/build-dir/INT-TST2/src/test/java/com/atlassian/theplugin/bamboo/api 29-Jan-2009 03:34:09 A /opt/j2ee/domains/bamboo2.atlassian.com/gdansk/webapps/data/bamboo-2.0.2-attempt/xml-data/build-dir/INT-TST2/src/test/java/com/atlassian/theplugin/idea 29-Jan-2009 03:34:09 U /opt/j2ee/domains/bamboo2.atlassian.com/gdansk/webapps/data/bamboo-2.0.2-attempt/xml-data/build-dir/INT-TST2/src/test/java/com/atlassian/theplugin/idea/GenericServerConfigurationFormTest.java 29-Jan-2009 03:34:09 A /opt/j2ee/domains/bamboo2.atlassian.com/gdansk/webapps/data/bamboo-2.0.2-attempt/xml-data/build-dir/INT-TST2/src/test/java/com/atlassian/theplugin/idea/bamboo 29-Jan-2009 03:34:10 Error occurred while executing the build for INT-TST2-2 : Unable to retrieve source code to 'null' for 'INT-TST2 {noformat} or {noformat} U /opt/j2ee/domains/bamboo2.atlassian.com/gdansk/webapps/data/bamboo-2.0.2-attempt/xml-data/build-dir/INT-CS/src/main/java/com/atlassian/theplugin/idea/crucible/CrucibleRevisionsNumber.java 29-Jan-2009 03:37:10 U /opt/j2ee/domains/bamboo2.atlassian.com/gdansk/webapps/data/bamboo-2.0.2-attempt/xml-data/build-dir/INT-CS/src/main/java/com/atlassian/theplugin/idea/crucible/tree/ReviewItemTreePanel.java 29-Jan-2009 03:37:10 /opt/j2ee/domains/bamboo2.atlassian.com/gdansk/webapps/data/bamboo-2.0.2-attempt/xml-data/build-dir/INT-CS/src/main/java/com/atlassian/theplugin/idea/crucible/tree 29-Jan-2009 03:37:10 U /opt/j2ee/domains/bamboo2.atlassian.com/gdansk/webapps/data/bamboo-2.0.2-attempt/xml-data/build-dir/INT-CS/src/main/java/com/atlassian/theplugin/idea/crucible/CrucibleCreatePostCommitReviewForm.java 29-Jan-2009 03:37:10 D /opt/j2ee/domains/bamboo2.atlassian.com/gdansk/webapps/data/bamboo-2.0.2-attempt/xml-data/build-dir/INT-CS/src/main/java/com/atlassian/theplugin/idea/crucible/editor/EditorDiffActionImpl.java 29-Jan-2009 03:37:10 D /opt/j2ee/domains/bamboo2.atlassian.com/gdansk/webapps/data/bamboo-2.0.2-attempt/xml-data/build-dir/INT-CS/src/main/java/com/atlassian/theplugin/idea/crucible/editor/EditorUpdateDiffActionImpl.java 29-Jan-2009 03:37:11 Error occurred while executing the build for INT-CS-1177 : Unable to retrieve source code to '26987' for 'INT-CS' 29-Jan-2009 03:38:20 Purging the checked out code from ""/opt/j2ee/domains/bamboo2.atlassian.com/gdansk/webapps/data/bamboo-2.0.2-attempt/xml-data/build-dir/INT-CS"" 29-Jan-2009 03:38:30 Manual build triggered by wseliga 29-Jan-2009 03:38:30 Build INT-CS-1178 started building on agent Default Agent 29-Jan-2009 03:38:30 Updating source code to revision: 26987 {noformat} However executing svn co from command line on exactly the same host where Bamboo was installed (with the same credentials even) worked fine. There were two problems: * Bamboo did bump up build number and this build failed, but nowhere it was really shown. I.e. on dashboard (and via remote API) I still got last build as successful. And although my build number (in above logs) was now greater than 1000, Bamboo claimed on dashboard and via API that the last build is e.g. 500 (which happened to be the last one before these problems started) * Cleaning working dir or full checkout did not help * I solved this problem by full clean and using anonymous SVN access or my private account. Only then Bamboo finally showed new build on dashboard (with number > 1000) and its real status. I suspect the problem may be also somehow connected to our SVN server which could have applied some security policies to avoid DOS attacks from Bamboo (Bamboo every 3 minutes - above 500 hundred times) was trying to checkout from svn the sources without success. ",2 BAM-3612,"Talkback from elastic agent to bamboo server to include EBS volume mount results","When an elastic instance/agent is configured to mount a ebs volume containing a snapshot during startup the progress/success/fail should be fed back to bamboo server for display. the log in /tmp/setupEbsSnapshot.log could be used to process progress and results.",2 BAM-3616,"Users can see the maven module (groupid, artifactid, version) against each plan.","* Should respect the sub-working directory. Only look for poms under the sub-working directory * Only read top level pom for modules * Pom is read only when building. * This is only read only * Each plan may have multiple artifacts",5 BAM-3620,"PostBuildProcessor plugin to kick off the Maven pom.xml parsing","Consider running on remote agents. Can functional test the PostBuilderProcessor plugin behavior. ",2 BAM-3621,"Get Bamboo functional tests passing in the cloud",NULL,5 BAM-3626,"Allow gadget server plugin to be incorporated into Bamboo.","Does not include OAuth, nor SAL Read this for more details: http://extranet.atlassian.com/display/BAMBOO/Plugins+2+Estimate ",5 BAM-3631,"Implement SAL part 1","The goal was Goal to get 100% compatible with the SAL compatibility kit however we are only tackling a subset of SAL implementation. We should figure how much of the compatibility kit we are targeting. NOTE - I changed this from 8 storypoints to 5 given that we are not tackling all of SAL. ",5 BAM-3633,"Implement SAL part 2","This is the remaining work for SAL. See BAM-3631 for part 1.",8 BAM-3634,"Alert users of builds which can not be built by any agents","Bamboo should alert the user if a Plan can not be built for a period of time. This should be set by default and overridden or removed by the user if necessary. This will avoid the following: !http://img.skitch.com/20090310-fk3547se8py75u3pr1g2g4mfux.jpg!",1 BAM-3676,"Reliably Reproduce ""BAM-3244 Fix hanging agents""",NULL,8 BAM-3679,"Patch ActiveMQ to fix the code problem to fix hanging agent problem","relies on BAM-3676. this is the minimal patch that we could ship to customers. this does NOT imply creating a activeMQ branch that Atlassian maintain, etc, etc.",3 BAM-3681,"Reproduce BAM-3643 - Extreme CPU spike on BEAC","We have little idea what this could be and have not had much success repro'ing it.",12 BAM-3683,"BAM-3495 Fixing borked status",NULL,8 BAM-3685,"Support bundled plugins in Bamboo",NULL,5 BAM-3693,"Add the ability to sleep before collecting artifacts to a bamboo agent","When the build ends, bamboo sweeps up the artifacts. I'd like a system property on the agent which could introducce a small sleep. This would be to allow the build to settle down and save all its artifacts before the agent comes along to collect them.",2 BAM-3695,"Bamboo Specfic Functional Tests for SAL Intefaces","All the CTK testing plugin does is generic testing that the interfaces return something. We need to write some Bamboo specific tests which ensure Bamboo is actually doing the right thing underneath those SAL calls. ",3 BAM-3718,"Implement SAL Interfaces Part 3","Implement the interfaces which didn't make it into the last milestone. See this page for details on which items missed out http://extranet.atlassian.com/display/BAMBOO/Bamboo+SAL+Compatability+-+Work+In+Progress",5 BAM-3724,"Spike - Deploy gadget server into Bamboo with a Hello world gadget to prove it","Estimates to include infrastructure Assuming plugins 2 is done depends on implement SAL pt 2 No Authentication mechanism yet See where this can be consumed. Not sure if Ref App can consume. Timebox this spike to 1 person iteration ",12 BAM-3728,"BAM-3674 (Regression) - Incorrect display of faiing since test","Investigation required Keep Sam Berlin Happy To be done on stable branch for 2.2.2 ",5 BAM-3731,"BAM-3717 (Regression) - :: in test names throws error","Need to escape properly To be done on stable branch for 2.2.2 ",2 BAM-3733,"Implement Bundled Plugins Part 2","Delivery mechanism for the Gadget server. Try plugin that is known to work (SAL) ",1 BAM-3735,"REST Module type plugin point","Drop in the plugin ",2 BAM-3737,"REST endpoint for build status gadget","Requires mockups done ",3 BAM-3740,"Gadget - User can authenticate through a gadget","This means manual username/password must be inputted. Should use basic auth Not OAuth (will be obselete with OAuth) ",3 BAM-3742,"Gadget - User can see the status of favourite plans ","interactions are links back to the server only Edwin to get UI teams to give some mock ups ",5 BAM-3745,"Gadget - User can see the status of the recent 5 builds of favourite plans in the existing status gadget","Just the display. REST should provide info Need mockup for this - story assume that mockup is there already ",3 BAM-3748,"Gadget - User can select which plans they want to watch","Selection based on read permissions of the authenticated user Can pick between individual plans or their favourite plans Whilst selecting, the favourited should still be indicated (up top) Storage of configuraiton on the gadge consumer ",5 BAM-3766,"Upgrade default AMI OS to newer version of Fedora Linux - see reduced scope of this issue","For the current default AMI (ami-3c3dda55 in case of 2.2.1) there are many updates pending and it isn't wise to do it on each instance startup - see: {noformat} [root@domU-12-31-39-03-75-B2 bamboo-ebs]# yum update Loading ""fastestmirror"" plugin Loading mirror speeds from cached hostfile * fedora: archive.fedoraproject.org * updates: archive.fedoraproject.org Setting up Update Process Resolving Dependencies --> Running transaction check ---> Package fedora-release.noarch 0:8-6.transition set to be updated --> Finished Dependency Resolution Dependencies Resolved ============================================================================= Package Arch Version Repository Size ============================================================================= Updating: fedora-release noarch 8-6.transition updates 31 k Transaction Summary ============================================================================= Install 0 Package(s) Update 1 Package(s) Remove 0 Package(s) Total download size: 31 k Is this ok [y/N]: y Downloading Packages: (1/1): fedora-release-8-6 100% |=========================| 31 kB 00:00 Running rpm_check_debug Running Transaction Test Finished Transaction Test Transaction Test Succeeded Running Transaction Updating : fedora-release ######################### [1/2] Cleanup : fedora-release ######################### [2/2] Updated: fedora-release.noarch 0:8-6.transition Complete! [root@domU-12-31-39-03-75-B2 bamboo-ebs]# yum update Loading ""fastestmirror"" plugin Loading mirror speeds from cached hostfile * updates-newkey: archive.fedoraproject.org * fedora: archive.fedoraproject.org * updates: archive.fedoraproject.org updates-newkey 100% |=========================| 2.3 kB 00:00 primary.sqlite.bz2 100% |=========================| 3.7 MB 00:07 Setting up Update Process Resolving Dependencies --> Running transaction check ---> Package ntp.i386 0:4.2.4p4-1.fc8 set to be updated ---> Package vim-enhanced.i386 2:7.1.245-1.fc8 set to be updated ---> Package openldap.i386 0:2.3.39-4.fc8 set to be updated ---> Package fuse-devel.i386 0:2.7.4-1.fc8 set to be updated ---> Package bind-utils.i386 32:9.5.0-29.P2.fc8 set to be updated ---> Package python-libs.i386 0:2.5.1-26.fc8.2 set to be updated ---> Package pcre.i386 0:7.3-4.fc8 set to be updated ---> Package yum.noarch 0:3.2.20-5.fc8 set to be updated --> Processing Dependency: pygpgme for package: yum ---> Package ruby.i386 0:1.8.6.287-2.fc8 set to be updated ---> Package logwatch.noarch 0:7.3.6-22.fc8 set to be updated ---> Package kernel-xen.i686 0:2.6.21.7-5.fc8 set to be installed ---> Package util-linux-ng.i386 0:2.13.1-2.fc8 set to be updated ---> Package vim-minimal.i386 2:7.1.245-1.fc8 set to be updated ---> Package vixie-cron.i386 4:4.2-9.fc8 set to be updated ---> Package alsa-lib.i386 0:1.0.16-3.fc8 set to be updated ---> Package iptables.i386 0:1.4.1.1-2.fc8 set to be updated ---> Package libxml2.i386 0:2.7.2-2.fc8 set to be updated ---> Package libpng.i386 2:1.2.33-1.fc8 set to be updated ---> Package nss.i386 0:3.12.2.0-1.1.fc8 set to be updated ---> Package paps-libs.i386 0:0.6.8-8.fc8 set to be updated ---> Package libacl.i386 0:2.2.39-14.fc8 set to be updated ---> Package openobex.i386 0:1.3-12.fc8 set to be updated ---> Package libnfnetlink.i386 0:0.0.39-3.fc8 set to be updated ---> Package acl.i386 0:2.2.39-14.fc8 set to be updated ---> Package microcode_ctl.i386 1:1.17-1.39.fc8 set to be updated ---> Package hal-libs.i386 0:0.5.10-5.fc8 set to be updated ---> Package pygobject2.i386 0:2.14.2-1.fc8 set to be updated ---> Package rsync.i386 0:2.6.9-5.fc8 set to be updated ---> Package ruby-irb.i386 0:1.8.6.287-2.fc8 set to be updated ---> Package bluez-libs.i386 0:3.35-1.fc8 set to be updated ---> Package bind-libs.i386 32:9.5.0-29.P2.fc8 set to be updated ---> Package system-config-network-tui.noarch 0:1.5.10-1.fc8 set to be updated ---> Package beecrypt.i386 0:4.1.2-17.fc8 set to be updated ---> Package gtk2.i386 0:2.12.8-2.fc8 set to be updated ---> Package fuse-libs.i386 0:2.7.4-1.fc8 set to be updated ---> Package libedit.i386 0:2.11-1.20080712cvs.fc8 set to be updated ---> Package ed.i386 0:1.1-1.fc8 set to be updated ---> Package NetworkManager-glib.i386 1:0.7.0-0.12.svn4326.fc8 set to be updated --> Processing Dependency: NetworkManager = 1:0.7.0-0.12.svn4326.fc8 for package: NetworkManager-glib ---> Package db4.i386 0:4.6.21-3.fc8 set to be updated ---> Package dhcpv6-client.i386 0:0.10-52.fc8 set to be updated ---> Package freetype.i386 0:2.3.5-5.fc8 set to be updated ---> Package python-urlgrabber.noarch 0:3.0.0-9.fc8 set to be updated ---> Package coreutils.i386 0:6.9-19.fc8 set to be updated ---> Package e2fsprogs.i386 0:1.40.4-3.fc8 set to be updated ---> Package psmisc.i386 0:22.6-2.1.fc8 set to be updated ---> Package libsysfs.i386 0:2.1.0-4.fc8 set to be updated ---> Package audit-libs.i386 0:1.7.4-1.fc8 set to be updated ---> Package libglade2.i386 0:2.6.2-4.fc8 set to be updated ---> Package quota.i386 1:3.14-2.fc8 set to be updated ---> Package cups-libs.i386 1:1.3.9-2.fc8 set to be updated ---> Package perl-libs.i386 4:5.8.8-41.fc8 set to be updated ---> Package fedora-gnome-theme.noarch 0:8.0.0-2.fc8 set to be updated ---> Package libdhcp6client.i386 0:0.10-52.fc8 set to be updated ---> Package iptables-ipv6.i386 0:1.4.1.1-2.fc8 set to be updated ---> Package libtiff.i386 0:3.8.2-11.fc8 set to be updated ---> Package autofs.i386 1:5.0.2-31 set to be updated ---> Package ypbind.i386 3:1.20.4-4.fc8 set to be updated ---> Package anacron.i386 0:2.3-58.fc8 set to be updated ---> Package control-center-filesystem.i386 1:2.20.3-3.fc8 set to be updated ---> Package nfs-utils.i386 1:1.1.1-2.fc8 set to be updated ---> Package smartmontools.i386 1:5.38-1.fc8 set to be updated ---> Package wget.i386 0:1.11.1-1.fc8 set to be updated ---> Package pm-utils.i386 0:0.99.4-19.fc8 set to be updated ---> Package sudo.i386 0:1.6.9p4-6.fc8 set to be updated ---> Package popt.i386 0:1.13-4.fc8 set to be updated ---> Package shadow-utils.i386 2:4.0.18.1-22.fc8 set to be updated ---> Package dbus-glib.i386 0:0.73-8.fc8 set to be updated ---> Package traceroute.i386 3:2.0.12-1.fc8 set to be updated ---> Package kernel-headers.i386 0:2.6.26.8-57.fc8 set to be updated ---> Package ruby-rdoc.i386 0:1.8.6.287-2.fc8 set to be updated ---> Package info.i386 0:4.11-5.fc8 set to be updated ---> Package pam_krb5.i386 0:2.2.18-2.fc8 set to be updated ---> Package bluez-utils.i386 0:3.35-5.fc8 set to be updated ---> Package curl.i386 0:7.18.2-7.fc8 set to be updated --> Processing Dependency: libssh2.so.1 for package: curl ---> Package gnupg.i386 0:1.4.7-10.fc8 set to be updated ---> Package hal.i386 0:0.5.10-5.fc8 set to be updated ---> Package file-libs.i386 0:4.21-6.fc8 set to be updated ---> Package bzip2-libs.i386 0:1.0.4-13.fc8 set to be updated ---> Package rubygems.noarch 0:1.2.0-2.fc8 set to be updated ---> Package perl.i386 4:5.8.8-41.fc8 set to be updated ---> Package PolicyKit.i386 0:0.6-2.fc8 set to be updated ---> Package aspell.i386 12:0.60.5-4.fc8 set to be updated ---> Package e2fsprogs-libs.i386 0:1.40.4-3.fc8 set to be updated ---> Package ruby-libs.i386 0:1.8.6.287-2.fc8 set to be updated ---> Package shared-mime-info.i386 0:0.23-2.fc8 set to be updated ---> Package yum-fastestmirror.noarch 0:1.1.17-1.fc8 set to be updated ---> Package ntfs-3g.i386 2:1.5012-4.fc8 set to be updated ---> Package iproute.i386 0:2.6.26-2.fc8 set to be updated ---> Package stunnel.i386 0:4.24-0.fc8 set to be updated ---> Package fuse.i386 0:2.7.4-1.fc8 set to be updated ---> Package elfutils-libelf.i386 0:0.137-3.fc8 set to be updated ---> Package libxcb.i386 0:1.1-1.1.fc8 set to be updated ---> Package wpa_supplicant.i386 1:0.5.10-5.fc8 set to be updated ---> Package libxslt.i386 0:1.1.24-2.fc8 set to be updated ---> Package libgnomecanvas.i386 0:2.20.1-3.fc8 set to be updated ---> Package tzdata.noarch 0:2008i-1.fc8 set to be updated ---> Package fuse-sshfs.i386 0:2.2-1.fc8 set to be updated ---> Package gnutls.i386 0:1.6.3-5.fc8 set to be updated ---> Package pciutils.i386 0:2.2.9-2.fc8 set to be updated ---> Package glib2.i386 0:2.14.6-2.fc8 set to be updated ---> Package nss-tools.i386 0:3.12.2.0-1.1.fc8 set to be updated ---> Package mlocate.i386 0:0.21-1.fc8 set to be updated ---> Package bzip2.i386 0:1.0.4-13.fc8 set to be updated ---> Package fuse-encfs.i386 0:1.5-3.fc8 set to be updated --> Processing Dependency: libboost_serialization-mt.so.3 for package: fuse-encfs --> Processing Dependency: libboost_filesystem-mt.so.3 for package: fuse-encfs ---> Package hal-info.noarch 0:20080607-2.fc8 set to be updated ---> Package cups.i386 1:1.3.9-2.fc8 set to be updated ---> Package eject.i386 0:2.1.5-8.fc8 set to be updated ---> Package make.i386 1:3.81-11.fc8 set to be updated ---> Package nspr.i386 0:4.7.3-1.fc8 set to be updated ---> Package vim-common.i386 2:7.1.245-1.fc8 set to be updated ---> Package file.i386 0:4.21-6.fc8 set to be updated ---> Package paps.i386 0:0.6.8-8.fc8 set to be updated ---> Package python.i386 0:2.5.1-26.fc8.2 set to be updated --> Running transaction check ---> Package libssh2.i386 0:0.18-5.fc8 set to be updated ---> Package NetworkManager.i386 1:0.7.0-0.12.svn4326.fc8 set to be updated --> Processing Dependency: ppp >= 2.2.4 for package: NetworkManager --> Processing Dependency: dnsmasq for package: NetworkManager --> Processing Dependency: avahi-autoipd for package: NetworkManager ---> Package pygpgme.i386 0:0.1-6.fc8 set to be updated --> Processing Dependency: libgpgme.so.11(GPGME_1.0) for package: pygpgme --> Processing Dependency: libgpgme.so.11 for package: pygpgme ---> Package boost.i386 0:1.34.1-7.fc8 set to be updated --> Processing Dependency: libicuuc.so.38 for package: boost --> Processing Dependency: libicui18n.so.38 for package: boost --> Running transaction check ---> Package gpgme.i386 0:1.1.5-4.fc8 set to be updated --> Processing Dependency: gnupg2 for package: gpgme --> Processing Dependency: libpth.so.20 for package: gpgme ---> Package avahi-autoipd.i386 0:0.6.21-8.fc8 set to be updated ---> Package libicu.i386 0:3.8-6.fc8 set to be updated ---> Package ppp.i386 0:2.4.4-2 set to be updated ---> Package dnsmasq.i386 0:2.40-1.fc8 set to be updated --> Running transaction check ---> Package gnupg2.i386 0:2.0.9-2.fc8 set to be updated --> Processing Dependency: libksba.so.8(KSBA_0.9) for package: gnupg2 --> Processing Dependency: dirmngr for package: gnupg2 --> Processing Dependency: libksba.so.8 for package: gnupg2 --> Processing Dependency: pinentry for package: gnupg2 ---> Package pth.i386 0:2.0.7-3 set to be updated --> Running transaction check ---> Package dirmngr.i386 0:1.0.0-6.fc8 set to be updated ---> Package libksba.i386 0:1.0.2-3.fc8 set to be updated ---> Package pinentry.i386 0:0.7.4-1.fc8 set to be updated --> Finished Dependency Resolution Dependencies Resolved ============================================================================= Package Arch Version Repository Size ============================================================================= Installing: NetworkManager-glib i386 1:0.7.0-0.12.svn4326.fc8 updates-newkey 167 k replacing NetworkManager.i386 1:0.7.0-0.6.7.svn3235.fc8 kernel-xen i686 2.6.21.7-5.fc8 updates-newkey 17 M Updating: PolicyKit i386 0.6-2.fc8 updates-newkey 76 k acl i386 2.2.39-14.fc8 updates-newkey 69 k alsa-lib i386 1.0.16-3.fc8 updates-newkey 402 k anacron i386 2.3-58.fc8 updates-newkey 39 k aspell i386 12:0.60.5-4.fc8 updates-newkey 969 k audit-libs i386 1.7.4-1.fc8 updates-newkey 73 k autofs i386 1:5.0.2-31 updates-newkey 865 k beecrypt i386 4.1.2-17.fc8 updates-newkey 144 k bind-libs i386 32:9.5.0-29.P2.fc8 updates-newkey 951 k bind-utils i386 32:9.5.0-29.P2.fc8 updates-newkey 187 k bluez-libs i386 3.35-1.fc8 updates-newkey 59 k bluez-utils i386 3.35-5.fc8 updates-newkey 469 k bzip2 i386 1.0.4-13.fc8 updates-newkey 49 k bzip2-libs i386 1.0.4-13.fc8 updates-newkey 37 k control-center-filesystem i386 1:2.20.3-3.fc8 updates-newkey 34 k coreutils i386 6.9-19.fc8 updates-newkey 3.3 M cups i386 1:1.3.9-2.fc8 updates-newkey 3.5 M cups-libs i386 1:1.3.9-2.fc8 updates-newkey 197 k curl i386 7.18.2-7.fc8 updates-newkey 293 k db4 i386 4.6.21-3.fc8 updates-newkey 587 k dbus-glib i386 0.73-8.fc8 updates-newkey 160 k dhcpv6-client i386 0.10-52.fc8 updates-newkey 85 k e2fsprogs i386 1.40.4-3.fc8 updates-newkey 610 k e2fsprogs-libs i386 1.40.4-3.fc8 updates-newkey 138 k ed i386 1.1-1.fc8 updates-newkey 71 k eject i386 2.1.5-8.fc8 updates-newkey 51 k elfutils-libelf i386 0.137-3.fc8 updates-newkey 58 k fedora-gnome-theme noarch 8.0.0-2.fc8 updates-newkey 10 k file i386 4.21-6.fc8 updates-newkey 29 k file-libs i386 4.21-6.fc8 updates-newkey 309 k freetype i386 2.3.5-5.fc8 updates-newkey 331 k fuse i386 2.7.4-1.fc8 updates-newkey 83 k fuse-devel i386 2.7.4-1.fc8 updates-newkey 27 k fuse-encfs i386 1.5-3.fc8 updates-newkey 373 k fuse-libs i386 2.7.4-1.fc8 updates-newkey 71 k fuse-sshfs i386 2.2-1.fc8 updates-newkey 49 k glib2 i386 2.14.6-2.fc8 updates-newkey 850 k gnupg i386 1.4.7-10.fc8 updates-newkey 1.9 M gnutls i386 1.6.3-5.fc8 updates-newkey 397 k gtk2 i386 2.12.8-2.fc8 updates-newkey 6.8 M hal i386 0.5.10-5.fc8 updates-newkey 461 k hal-info noarch 20080607-2.fc8 updates-newkey 118 k hal-libs i386 0.5.10-5.fc8 updates-newkey 61 k info i386 4.11-5.fc8 updates-newkey 166 k iproute i386 2.6.26-2.fc8 updates-newkey 843 k iptables i386 1.4.1.1-2.fc8 updates-newkey 309 k iptables-ipv6 i386 1.4.1.1-2.fc8 updates-newkey 192 k kernel-headers i386 2.6.26.8-57.fc8 updates-newkey 753 k libacl i386 2.2.39-14.fc8 updates-newkey 20 k libdhcp6client i386 0.10-52.fc8 updates-newkey 79 k libedit i386 2.11-1.20080712cvs.fc8 updates-newkey 79 k libglade2 i386 2.6.2-4.fc8 updates-newkey 64 k libgnomecanvas i386 2.20.1-3.fc8 updates-newkey 228 k libnfnetlink i386 0.0.39-3.fc8 updates-newkey 23 k libpng i386 2:1.2.33-1.fc8 updates-newkey 249 k libsysfs i386 2.1.0-4.fc8 updates-newkey 47 k libtiff i386 3.8.2-11.fc8 updates-newkey 307 k libxcb i386 1.1-1.1.fc8 updates-newkey 124 k libxml2 i386 2.7.2-2.fc8 updates-newkey 828 k libxslt i386 1.1.24-2.fc8 updates-newkey 526 k logwatch noarch 7.3.6-22.fc8 updates-newkey 319 k make i386 1:3.81-11.fc8 updates-newkey 477 k microcode_ctl i386 1:1.17-1.39.fc8 updates-newkey 437 k mlocate i386 0.21-1.fc8 updates-newkey 75 k nfs-utils i386 1:1.1.1-2.fc8 updates-newkey 281 k nspr i386 4.7.3-1.fc8 updates-newkey 119 k nss i386 3.12.2.0-1.1.fc8 updates-newkey 1.2 M nss-tools i386 3.12.2.0-1.1.fc8 updates-newkey 1.2 M ntfs-3g i386 2:1.5012-4.fc8 updates-newkey 192 k ntp i386 4.2.4p4-1.fc8 updates-newkey 1.4 M openldap i386 2.3.39-4.fc8 updates-newkey 294 k openobex i386 1.3-12.fc8 updates-newkey 37 k pam_krb5 i386 2.2.18-2.fc8 updates-newkey 128 k paps i386 0.6.8-8.fc8 updates-newkey 32 k paps-libs i386 0.6.8-8.fc8 updates-newkey 23 k pciutils i386 2.2.9-2.fc8 updates-newkey 93 k pcre i386 7.3-4.fc8 updates-newkey 137 k perl i386 4:5.8.8-41.fc8 updates-newkey 12 M perl-libs i386 4:5.8.8-41.fc8 updates-newkey 570 k pm-utils i386 0.99.4-19.fc8 updates-newkey 44 k popt i386 1.13-4.fc8 updates-newkey 39 k psmisc i386 22.6-2.1.fc8 updates-newkey 72 k pygobject2 i386 2.14.2-1.fc8 updates-newkey 104 k python i386 2.5.1-26.fc8.2 updates-newkey 4.8 M python-libs i386 2.5.1-26.fc8.2 updates-newkey 568 k python-urlgrabber noarch 3.0.0-9.fc8 updates-newkey 112 k quota i386 1:3.14-2.fc8 updates-newkey 357 k rsync i386 2.6.9-5.fc8 updates-newkey 232 k ruby i386 1.8.6.287-2.fc8 updates-newkey 525 k ruby-irb i386 1.8.6.287-2.fc8 updates-newkey 285 k ruby-libs i386 1.8.6.287-2.fc8 updates-newkey 1.7 M ruby-rdoc i386 1.8.6.287-2.fc8 updates-newkey 353 k rubygems noarch 1.2.0-2.fc8 updates-newkey 598 k shadow-utils i386 2:4.0.18.1-22.fc8 updates-newkey 1.1 M shared-mime-info i386 0.23-2.fc8 updates-newkey 166 k smartmontools i386 1:5.38-1.fc8 updates-newkey 323 k stunnel i386 4.24-0.fc8 updates-newkey 125 k sudo i386 1.6.9p4-6.fc8 updates-newkey 235 k system-config-network-tui noarch 1.5.10-1.fc8 updates-newkey 1.8 M traceroute i386 3:2.0.12-1.fc8 updates-newkey 50 k tzdata noarch 2008i-1.fc8 updates-newkey 756 k util-linux-ng i386 2.13.1-2.fc8 updates-newkey 2.0 M vim-common i386 2:7.1.245-1.fc8 updates-newkey 6.6 M vim-enhanced i386 2:7.1.245-1.fc8 updates-newkey 862 k vim-minimal i386 2:7.1.245-1.fc8 updates-newkey 346 k vixie-cron i386 4:4.2...",1 BAM-3801,"Gadget - User can view a chart of recent percentage of builds successful","Select plans Grouped by time period, configurable. Can filter by time period (Last 7 days, Last 30 days, Last 90 days, Last 25 builds, Show all builds) ",3 BAM-3804,"Prevent a build from running if its ancestors are in queue or running","E.g. B depends on A if B is triggered whilst A building, B trigger is ignored. This will mean that further checkins against B won't run. Have to be optional. Must only block if the parent is the same revision as the child that is about to build, otherwise, the child might never build. ",3 BAM-3805,"User can configure dependency blocking","Applicable per child plan User can configure whether dependency children are blocked from building when ancestors are running.",2 BAM-3806,"Check ancestors of a build when it is triggered and prevent building if changes found (in ancestors) Ancestors are kicked off","E.g. B triggered, whilst A is not building. Check A, if changes found in A, build A, don't build B. What if A is a manual and dependent builds only? or a schedule build? Ignore the trigger for now. Later optimizations needed. ",12 BAM-3807,"Detect infinte cycles in dependent builds.","Should not allow users to input cyclic dependency configurations If customers have already done cyclic dependencies, we don't do anything in the upgrade task. We show an error when we try to show the tree. ",2 BAM-3808,"User can see in text its ancestors and children for the build result","See all parents See all children ",5 BAM-3809,"Get a gadget to authenticate end to end via Oauth","Takes away the need to manually input username/password ",5 BAM-3864,"Enable user configuraiton of OAuth in Bamboo.",NULL,5 BAM-3871,"Gadget - chart of queued time",NULL,2 BAM-3890,"Notfication when a build has been in the queue for x minutes","Similar to a build hung notification but for builds in the queue",3 BAM-3905,"""Test failing since"" doesn't properly consider builds without test results","h3. Case A Consider a series of builds: BUILD-1 Test X passed BUILD-2 Test X failed BUILD-3 Build failure, no test results BUILD-4 Test X failed BUILD-5 Test X failed In the results of BUILD-4 and BUILD-5, Bamboo reports that test X has been failing since BUILD-4. From this, developers incorrectly infer that the test passed in BUILD-3 and the change that caused this failure was introduced in BUILD-4. In this case, it would be better to report that the test has been failing since BUILD-2. h3. Case B There's another interesting case that needs to be considered: BUILD-6 Test X passed BUILD-7 Build failure, no test results BUILD-8 Build failure, no test results BUILD-9 Test X failed Here, the failure of test X could have been introduced in BUILD-7, BUILD-8 or BUILD-9. In this case, perhaps it's best to report that Test X has been failing since BUILD-7?",3 BAM-3912,"Bandana import/export",NULL,3 BAM-3917,"Fix i18n for gadgets",NULL,5 BAM-3918,"Provide feedback in UI about builds being blocked (build dependencies)",NULL,3 BAM-3922,"Tests for REST",NULL,3 BAM-3923,"Selenium tests (with Hamish)",NULL,3 BAM-3961,"Bucket - Gadget issues",NULL,8 BAM-3981,"Dependency blocking for polling builds",NULL,2 BAM-4000,"Configure agent capabilities for each Elastic Configuration",NULL,5 BAM-4003,"Allow ""at least"" and ""maximum #"" of agent on schedule",NULL,2 BAM-4030,"Make it possible (via instructions) for a customer to 'Bamboo enable' an AMI","As per Krystian's comments - http://jira.atlassian.com/browse/BAM-3766?focusedCommentId=160191&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#action_160191 we want to make it possible for a customer to follow instructions/install software so that an instances of an AMI can be spawned by Bamboo server and have elastic agents start up on them. This is will get us out of the endless cycle of upgrading the default AMI.",5 BAM-4037,"Add support for EC2 Availability Zones","See here for what we are talking about - http://developer.amazonwebservices.com/connect/entry.jspa?externalID=1347 Availability zone support is a pre-requisite for [Reserved Instance|http://aws.amazon.com/ec2/faqs/#What_is_a_Reserved_Instance] support. We should have a default availability zone (for the Bamboo install) and be able to specify the avail zone per Elastic Configuration.",5 BAM-4088,"Rename ElasticAgentSchedule to ElasticInstanceSchedule","Also rework associated UI text",1 BAM-4341,"Roundtrip error w/ input validation during EC2 instance startup","Round trip errors occur on the EC2/instance screen when an invalid number of instances are requested",1 BAM-4360,"Ensure that all commands when mounting EBS volumes handle failure recursively","EBS volume creation, attachment & mounting is still depending on various variable timing from Amazon (especially when multiple volumes are stared simultaneously). We should ensure that we cater for failure and perform retries for all commands.",2 BAM-4367,"Please make a Maven 2.1.0 builder available on the EC2 image","Confluence need Maven 2.1.0 specifically to build confluence.",2 BAM-4378,"Set the ""Last Modified"" header for artifacts, so browsers can cache static resources","Since most (all?) build artifacts are static, and probably never change once they are created, Bamboo should set the ""Last Modified"" header when serving any artifact. The timestamp from the file stored on disk could be used, or if that is unavailable - the time stamp of when the build finished? !http://img.skitch.com/20090819-me3phuunma1um3acd6jpdddkxt.jpg! Large artifacts such as the JSON needed for Clover's new Tree Map could greatly benefit from browsers doing the needful caching.",1 BAM-4386,"The ""no more than"" instance schedule seems to shut down more instances than it should","Having a schedule configured as ""no more than"" e.g. ""no more than 4"" seems to kill all available instances, since it seems that it looks if the instance is on list (even if already scheduled to be shut down - agent stopped, but the instance is still on the list) instead of checking if given instance to be shut down has agent present or not.",1 BAM-4416,"Failed EBS volume creaion should start as disabled","If startup of EBS volume fails for an instance, the Agent should start as disabled. ",2 BAM-4418,"Rename ""Bamboo Builds"" tab in JIRA Bamboo plugin to be ""Builds""",NULL,1 BAM-4424,"Allow a clover license to be entered via the Bamboo admin (ie a global license). License can be overridden at the plan config level","* on the build config screen if a ""global"" license exists then we display a message indicating that a license is already configured. * on the build config screen if a ""global"" license exists AND the license is valid then we display a message indicating that a license is valid. * on the build config screen if a ""global"" license exists AND the license is invalid then we display a message indicating that a license is NOT valid * on the build config screen if NO ""global"" license exists then a text entry field should be available and a message indicating that a license is required should be displayed. * a text entry field should be available on the build config screen to allow the license to be overridden at the plan level. * If _any_ license is defined at a plan level, it takes precedence * Check interaction with clover.license in the settings.xml* Validation of lic. is optional nice to have iff extras supports decoding. ",3 BAM-4484,"Add path to clover gadget to the list of gadgets available",NULL,1 BAM-4497,"Update Dependencies to match jira's (again)","once jira has finalised its own dependencies... To ensure gadgets actually work we will probably need to ensure that our oauth, atlasian-plugins and atlassian-gadgets libraries are updated to the same version as jira 4.0 and then double check that all the gadgets work.",2 BAM-4503,"ship version 2.1.15 of nant builder plugin with bamboo 2.3.x","Changes in the plugin api for bamboo 2.3x have broken the nant builder plugin http://developer.atlassian.com/jira/browse/NANT-24 A new version of the plugin is [available|http://confluence.atlassian.com/download/attachments/47448218/nant_builder-2.1.15.jar?version=1&modificationDate=1251978264907]",1 BAM-4534,"Spike: Concurrent chains running",NULL,20 BAM-4535,"Quick and dirty way to add a plan to a stage in a chain","Suggestion here is to have a ""chain and stage"" selector just on the plan edit page. No need to hide anything on the plan edit page.",3 BAM-4536,"Spike: Extract common behaviour from Plan and Chain",NULL,20 BAM-4537,"Quick and dirty list of chains",NULL,2 BAM-4574,"Package http://datejs.googlecode.com/files/date.js for gadgets","The gadgets should not use http://datejs.googlecode.com/files/date.js directly",1 BAM-4576,"Faster Setup: Minimize screens for setup wizard - express vs custom installs",NULL,5 BAM-4579,"Faster Setup: Immediately login as admin user after setup wizard",NULL,1 BAM-4580,"Faster Setup: Make it obvious where to go next after login",NULL,3 BAM-4581,"Faster Setup: Remove/Reword supportability wording of HSQLDB",NULL,1 BAM-4583,"External DB: Bundle database drivers",NULL,3 BAM-4593,"WIP Creation: Allow Save after builders entry",NULL,5 BAM-4594,"WIP Creation: Option to not build immediately after plan create",NULL,2 BAM-4605,"Faster Wizard: Setting up Builders/JDKs inline",NULL,3 BAM-4627,"Inline adding of IM",NULL,2 BAM-4628,"Faster Wizard: Inline create mail sever",NULL,2 BAM-4645,"Faster Setup: Visual indication for long running tasks in Setup Wizard",NULL,3 BAM-4664,"Re-enable the maven tab to see if it still works on single module projects.",NULL,2 BAM-4665,"Show the snapshot dependencies at the top of the maven tab, ie update the maven dependency parser so that it can just provide snapshot dependencies.",NULL,2 BAM-4666,"introduce a ""generated"" type of dependency (as opposed to a manually created).",NULL,8 BAM-4667,"generated dependencies are created after builds complete based on maven dependency info.",NULL,8 BAM-4673,"Check and make the maven tab work on multi module projects.",NULL,5 BAM-4690,"Clean up chain level Repo information",NULL,5 BAM-4704,"Installer not setting bamboo home","after installing bamboo using the 2.5 M2 windows installer bamboo does not start because bamboo.home is not set. I checked bamboo-init.properties and it has not been updated at all. See install4j logs",1 BAM-4718,"Provide persistence to abstract ""artifacts/particles"" consumed and produced by plan.",NULL,2 BAM-4724,"Allow user to specify location of pom file",NULL,2 BAM-4725,"Spiking read pom before build occurs using maven 3 embedder - svn only",NULL,8 BAM-4729,"Unchecking use maven dependencies option should actually clear maven depedencies data. Confirmation for this should happen.",NULL,3 BAM-4731,"Miscellaneous UI ugliness","Remembering which tab you're on for configuraiton Tooltips broken Styling for tabs for build configuration Dropdown build menu is too narrow. Build Configuration tabs no longer check if there is data not saved before navigating away from the tab.",3 BAM-4732,"View a build that didn't run because of a failed prior stage in the chain",NULL,2 BAM-4734,"Clicking the run page should go to the live results page.",NULL,1 BAM-4735,"Redirect to last result of the chain if no chains currently running",NULL,1 BAM-4736,"Build blocking for chain dependencies",NULL,2 BAM-4737,"Automatically turn on build blocking when turning on maven dependencies with warning",NULL,2 BAM-4780,"Spike backend support up to 100 remote agents","Acceptance criteria: * 100 remote agents can concurrently connect to one server. * The 100 remote agents include both remote and elastic agents. * 100 builds can concurrently run",20 BAM-4790,"Make mail server template more compact",NULL,1 BAM-4791,"update page inline rather than reload after adding builder/jdk/mail/im",NULL,5 BAM-4793,"User can specify a pom.xml for plans to be created from",NULL,3 BAM-4794,"Resolve concurrent chains issue with hack",NULL,3 BAM-4795,"Bamboo can parse the pom.xml plan details",NULL,5 BAM-4806,"Upgrade to AUI 2.0.3","AUI 2.0 has changes that are not currently compatible with Bamboo's js, especially the restrictions they have imposed where the selector $ is no longer allowed This is needed for 2009-11 Upgrade Pack.",2 BAM-4841,"Dependency block should block on parents as well",NULL,5 BAM-4845,"Styling for tabs for build configuration",NULL,5 BAM-4849,"Maven dependency on by default(?)",NULL,1 BAM-4850,"Maven dependency tab clean up",NULL,3 BAM-4857,"Show REST & Gadgets URLs from within the UI","* REST URL should appear where we enable the Remote API part of the description) * Add new section with page ""List of Gadget URLs"" & OAuth * Minimal req. URLS & descriptions, other stuff would be cool ",3 BAM-4869,"Add a function to remove OAuth tokens in Bamboo","Please add a function to remove OAuth tokens from Bamboo. This is already implemented in JIRA, if that's a helpful reference. http://confluence.atlassian.com/display/JIRA/Configuring+OAuth+Consumers#ConfiguringOAuthConsumers-RemovinganOAuthconsumer ",5 BAM-4871,"REST: Incorrect representation of JSON data","JSON data which is returned from the builds rest api service is incorrect. Please see screenshots. Example: https://bamboo.extranet.atlassian.com/rest/api/latest/build/CRUC.json?expand=builds.build",3 BAM-4905,"Plan requirements are not updated after builder JDK has been updated.","An update in a plan's builder spec is not reflected in the plan's requirements. For example after changing the JDK from 1.5 to 1.6 in the builder spec the requirements tab will still show JDK 1.5 ",2 BAM-4922,"Removing build results from a menu should have a confirmation screen","* Deleting from list page currently uses JS popup * Prefer JS popup but fine to add confirmation screen (just be consistent with each other) * Should work with the class=""confirmationRequired"" * Fix wording o be conssitent",1 BAM-4923,"The contact administrators link should not be available is the setup footer",NULL,1 BAM-4924,"When editing plans ""Done"" button in artifacts doesn't work","* Should go to view version of the artifacts screen",2 BAM-4925,"Artifact ""Clover Report (System)"" is added even if the Clover is not enabled",NULL,1 BAM-4932,"Problem when importing a plan from Maven for a second time","* Not sure if both plans were the same URL. {noformat} 2009-11-29 18:45:41,330 INFO [1085098145@qtp-1013059835-7] [AccessLogFilter] admin http://xxxxgold.local:8085/bamboo/admin/importMavenPlanCreatePlan.action 64565kb 2009-11-29 18:45:41,363 WARN [1085098145@qtp-1013059835-7] [JDBCExceptionReporter] SQL Error: -104, SQLState: 23000 2009-11-29 18:45:41,364 ERROR [1085098145@qtp-1013059835-7] [JDBCExceptionReporter] Violation of unique constraint $$: duplicate value(s) for column(s) $$: SYS_CT_108 in statement [insert into BUILD_DEFINITION (BUILD_ID, CREATED_DATE, UPDATED_DATE, XML_DEFINITION_DATA, BUILD_DEFINITION_TYPE, BUILD_DEFINITION_ID) values (?, ?, ?, ?, 'BUILD', ?)] 2009-11-29 18:45:41,364 ERROR [1085098145@qtp-1013059835-7] [SessionImpl] Could not synchronize database state with session 2009-11-29 18:45:41,364 WARN [1085098145@qtp-1013059835-7] [HibernateObjectDao] Problems getting build by key net.sf.hibernate.exception.GenericJDBCException: could not insert: [com.atlassian.bamboo.build.DefaultBuildDefinitionForBuild#819203] net.sf.hibernate.exception.ErrorCodeConverter.handledNonSpecificException(ErrorCodeConverter.java:90) net.sf.hibernate.exception.ErrorCodeConverter.convert(ErrorCodeConverter.java:79) net.sf.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:29) net.sf.hibernate.persister.AbstractEntityPersister.convert(AbstractEntityPersister.java:1331) net.sf.hibernate.persister.EntityPersister.insert(EntityPersister.java:472) net.sf.hibernate.persister.EntityPersister.insert(EntityPersister.java:436) net.sf.hibernate.impl.ScheduledInsertion.execute(ScheduledInsertion.java:37) net.sf.hibernate.impl.SessionImpl.execute(SessionImpl.java:2449) net.sf.hibernate.impl.SessionImpl.executeAll(SessionImpl.java:2435) net.sf.hibernate.impl.SessionImpl.execute(SessionImpl.java:2392) net.sf.hibernate.impl.SessionImpl.autoFlushIfRequired(SessionImpl.java:1821) net.sf.hibernate.impl.SessionImpl.find(SessionImpl.java:3652) net.sf.hibernate.impl.CriteriaImpl.list(CriteriaImpl.java:238) net.sf.hibernate.impl.CriteriaImpl.uniqueResult(CriteriaImpl.java:385) com.atlassian.bamboo.build.BuildHibernateDao.getBuildByKey(BuildHibernateDao.java:40) sun.reflect.GeneratedMethodAccessor116.invoke(Unknown Source) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) java.lang.reflect.Method.invoke(Method.java:597) org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:304) org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149) org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) $Proxy7.getBuildByKey(Unknown Source) com.atlassian.bamboo.build.HibernateBuildManager.getBuildByKey(HibernateBuildManager.java:77) com.atlassian.bamboo.build.HibernateBuildManager.createBuild(HibernateBuildManager.java:248) sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) java.lang.reflect.Method.invoke(Method.java:597) org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:304) org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149) com.atlassian.bamboo.security.acegi.intercept.aopalliance.AuthorityOverrideMethodSecurityInterceptor.invoke(AuthorityOverrideMethodSecurityInterceptor.java:30) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) com.atlassian.bamboo.security.acegi.intercept.aopalliance.AuthorityOverrideMethodSecurityInterceptor.invoke(AuthorityOverrideMethodSecurityInterceptor.java:30) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) $Proxy13.createBuild(Unknown Source) com.atlassian.bamboo.build.creation.BuildPlanCreationServiceImpl.createBuild(BuildPlanCreationServiceImpl.java:235) com.atlassian.bamboo.build.creation.BuildPlanCreationServiceImpl.createBuild(BuildPlanCreationServiceImpl.java:207) com.atlassian.bamboo.ww2.actions.admin.ImportMavenPlanCreatePlanAction.doExecute(ImportMavenPlanCreatePlanAction.java:120) com.atlassian.bamboo.ww2.BambooActionSupport.execute(BambooActionSupport.java:705) ... Caused by: java.sql.SQLException: Violation of unique constraint $$: duplicate value(s) for column(s) $$: SYS_CT_108 in statement [insert into BUILD_DEFINITION (BUILD_ID, CREATED_DATE, UPDATED_DATE, XML_DEFINITION_DATA, BUILD_DEFINITION_TYPE, BUILD_DEFINITION_ID) values (?, ?, ?, ?, 'BUILD', ?)] org.hsqldb.jdbc.Util.throwError(Unknown Source) org.hsqldb.jdbc.jdbcPreparedStatement.executeUpdate(Unknown Source) com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeUpdate(NewProxyPreparedStatement.java:105) net.sf.hibernate.impl.NonBatchingBatcher.addToBatch(NonBatchingBatcher.java:22) net.sf.hibernate.persister.EntityPersister.insert(EntityPersister.java:462) ... 178 more java.lang.IllegalArgumentException: object cannot be null org.springframework.util.Assert.notNull(Assert.java:112) com.atlassian.bamboo.security.acegi.acls.HibernateObjectIdentityImpl.(HibernateObjectIdentityImpl.java:58) com.atlassian.bamboo.build.HibernateBuildManager.createBuild(HibernateBuildManager.java:249) sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) java.lang.reflect.Method.invoke(Method.java:597) org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:304) org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149) com.atlassian.bamboo.security.acegi.intercept.aopalliance.AuthorityOverrideMethodSecurityInterceptor.invoke(AuthorityOverrideMethodSecurityInterceptor.java:30) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) com.atlassian.bamboo.security.acegi.intercept.aopalliance.AuthorityOverrideMethodSecurityInterceptor.invoke(AuthorityOverrideMethodSecurityInterceptor.java:30) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) $Proxy13.createBuild(Unknown Source) com.atlassian.bamboo.build.creation.BuildPlanCreationServiceImpl.createBuild(BuildPlanCreationServiceImpl.java:235) com.atlassian.bamboo.build.creation.BuildPlanCreationServiceImpl.createBuild(BuildPlanCreationServiceImpl.java:207) com.atlassian.bamboo.ww2.actions.admin.ImportMavenPlanCreatePlanAction.doExecute(ImportMavenPlanCreatePlanAction.java:120) {noformat} ",3 BAM-4933,"System property to enable the ""unsupported database"" option in setup","{{-Dbamboo.enable.unsupported.db=true}} or something like that. * Only affects UI on setup wizard * Need to add to upgrade guide for people doing import export",3 BAM-4935,"Import from Maven should redirect the user to the builder configuration in edit mode and prevent the initial build","* Should not build immediately (current way is to Disable plan) * Redirect to Builder config. section in Edit mode * (Some risk with tabs recently broken) * Q: re how to set tab from param ** Should be a param that sets the cookied & the selectedTab",3 BAM-4937,"Upgrade to AUI 1.2.5 to resolve dialog size issues in ie7","See https://studio.atlassian.com/browse/AJS-202 Under IE7 the buttons pane will over-run the size of the dialog (affects add JDK / add Builder) * Need to test in all supported browsers. * Inline JDK, Builder, Mail, IM * Ping Anton for VM",3 BAM-4939,"OAuth Consumer tab should not be visible","Test in all supported browsers !http://img.skitch.com/20091201-xsixujr2hfjfhpq8dkc86dwhq8.png!",2 BAM-4940,"Make ""Enable Plan"" link more prominent on the config screen","* Above (or below if that looks better) * Use your judgement & trial it out! ",2 BAM-4941,"Link to Maven plan import from the first page of the create plan wizard","* Don't bother with the dashboard",1 BAM-4942,"should append pom.xml if not specified","* Check repo if the SVN URL is a file or a directory first {{svn info}} and then append pom.xml if directory * Does SVN kit have APIs to do SVN info? ** Oui oui, but SVN does have it, but never done in Bamboo",3 BAM-4943,"Retest all new gadget work in Test IE7 IE8 Safari","* Make sure we test all gadgets in JIRA & Connie * In all supported browsers * No IE6",4 BAM-5008,"Build process not shutting down EC2 instances",NULL,3 BAM-5057,"Changing from a JDK Label that's been deleted will not remove old Requirement","# Create a plan with a JDK # Go to admin section and remove the JDK # Edit the plan, changing the JDK # The old JDK should be removed but it's not !http://img.skitch.com/20091211-m297tdrx9j28n3hisgjttgftfm.png! ",2 BAM-5070,"Test the tagger plugin","http://confluence.atlassian.com/display/BAMEXT/Bamboo+Tagger+plugin ",2 BAM-5076,"Ensure Clover gadget is working","Nothing's changed in the gadget itself, just the config screen... We'll hold the Poles to it :) ",2 BAM-5102,"Write developer docs for backend plan creation",NULL,2 BAM-5124,"StopBuildManager with abandon result does not abandon result","StopBuildManager with abandon result does not abandon result in 3.0. In 2.0 it just stopped the result from being persisted but that now happens at the start of the build.",5 BAM-5127,"Improve the Bamboo startup script","There are several things wrong with the bamboo.sh startup script: 1) an option to specify which user to run Bamboo under 2) The startup script takes no care of CWD. Depending on which directory you're in the startup behaves differently. 3) if Bamboo stops abruptly or startup fails, it leaves a bamboo.pid file and this file causes future startup attempts to fail. 4) make use of the JAVA_HOME in bamboo.sh script, Bamboo defaults to the java executable in the System Path - we ask users to set JAVA_HOME, but we never use it in the script 5) Parameterize each of the startup option in RUN_CMD variable or read the options from wrapper.conf file. ",2 BAM-5135,"SASL support with bundled svnkit","The version of svnkit we bundle with bamboo doesn't have SASL support: {noformat}[amyers@erdinger:svnkit]$ jar tf svnkit-1.3.0.5847.jar | grep Sasl [amyers@erdinger:svnkit]$ {noformat} If I download it from the website it does (this is a newer version, but apparently older ones have it too): {noformat} [amyers@erdinger:svnkit-1.3.2.6267]$ jar tf svnkit.jar | grep Sasl org/tmatesoft/svn/core/internal/io/svn/sasl/SVNSaslAuthenticator$SVNCallbackHandler.class org/tmatesoft/svn/core/internal/io/svn/sasl/SVNSaslAuthenticator.class org/tmatesoft/svn/core/internal/io/svn/sasl/SaslInputStream.class org/tmatesoft/svn/core/internal/io/svn/sasl/SaslOutputStream.class [amyers@erdinger:svnkit-1.3.2.6267]$ {noformat} Is there any technical reason we don't bundle the support for SASL authentication? ",2 BAM-5140,"Importing without restart runs all upgrade tasks, if run after initial install.","* All upgrades are run rather than just the ones that are needed. * This is only a problem if run after the initial install (where the upgrade task collections in UpgradeManagerImpl are already prepopulated with all upgrade tasks.) This is fixed/avoided by: * Do not do the import without restart. * Stop and start Bamboo before the import. * If it gets into a screwed state, delete your bamboo home and start again (don't accidentally delete the import!).",3 BAM-5142,"Upgrade atlassian template renderer to 1.0.5","Needed by an upgrade pack",1 BAM-5143,"Exception in macro buildResult","I've gotten this exception several times now: 2009-12-31 10:36:49,916 INFO [1300187729@qtp-380183900-10] [AccessLogFilter] bteh http://bteh.sydney.atlassian.com:8085/bamboo/api/rest/getLatestUserBuilds.action?auth=OmdvT9Cj0M 115615kb 2009-12-31 10:36:49,963 INFO [1300187729@qtp-380183900-10] [AccessLogFilter] bteh http://bteh.sydney.atlassian.com:8085/bamboo/api/rest/getLatestBuildResults.action?auth=OmdvT9Cj0M&buildKey=TEST-DEF 112273kb 2009-12-31 10:36:49,982 INFO [1300187729@qtp-380183900-10] [AccessLogFilter] bteh http://bteh.sydney.atlassian.com:8085/bamboo/api/rest/getLatestBuildResults.action?auth=OmdvT9Cj0M&buildKey=TEST-DEF2 111418kb 2009-12-31 10:36:50,013 INFO [1300187729@qtp-380183900-10] [AccessLogFilter] bteh http://bteh.sydney.atlassian.com:8085/bamboo/api/rest/getLatestBuildResults.action?auth=OmdvT9Cj0M&buildKey=TEST-DEF3 110540kb 2009-12-31 10:36:50,117 INFO [1300187729@qtp-380183900-10] [AccessLogFilter] bteh http://bteh.sydney.atlassian.com:8085/bamboo/api/rest/getRecentlyCompletedBuildResultsForBuild.action?auth=OmdvT9Cj0M&buildKey=TEST-DEF3 109878kb 2009-12-31 10:26:52,088 ERROR [543021934@qtp-380183900-0] [runtime] Error executing macro: buildResult required parameter: buildSummary is not specified. The problematic instruction: ---------- ==> macro buildResult [on line 1, column 1 in api/rest/macros.ftl] in user-directive api.buildResult [on line 4, column 9 in api/rest/recentlyCompletedBuildResultsForBuild.ftl] ---------- Java backtrace for programmers: ---------- freemarker.template.TemplateException: Error executing macro: buildResult required parameter: buildSummary is not specified. freemarker.core.Macro$Context.sanityCheck(Macro.java:207) freemarker.core.Macro$Context.runMacro(Macro.java:165) freemarker.core.Environment.visit(Environment.java:602) freemarker.core.UnifiedCall.accept(UnifiedCall.java:106) freemarker.core.Environment.visit(Environment.java:209) freemarker.core.MixedContent.accept(MixedContent.java:92) freemarker.core.Environment.visit(Environment.java:209) freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:167) freemarker.core.Environment.visit(Environment.java:416) freemarker.core.IteratorBlock.accept(IteratorBlock.java:102) freemarker.core.Environment.visit(Environment.java:209) freemarker.core.MixedContent.accept(MixedContent.java:92) freemarker.core.Environment.visit(Environment.java:209) freemarker.core.Environment.process(Environment.java:189) freemarker.template.Template.process(Template.java:237) com.opensymphony.webwork.views.freemarker.FreemarkerResult.doExecute(FreemarkerResult.java:214) com.opensymphony.webwork.dispatcher.WebWorkResultSupport.execute(WebWorkResultSupport.java:143) com.opensymphony.xwork.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:313) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:208) com.opensymphony.xwork.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:175) com.atlassian.bamboo.ww2.interceptors.BambooWorkflowInterceptor.doIntercept(BambooWorkflowInterceptor.java:33) com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:116) com.atlassian.bamboo.ww2.interceptors.BambooValidationInterceptor.doIntercept(BambooValidationInterceptor.java:33) com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.webwork.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:174) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:151) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.security.acegi.intercept.web.WebworkSecurityInterceptor.intercept(WebworkSecurityInterceptor.java:55) com.atlassian.bamboo.security.acegi.intercept.web.WebworkSecurityInterceptorProxy.intercept(WebworkSecurityInterceptorProxy.java:30) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.PaginationAwareInterceptor.intercept(PaginationAwareInterceptor.java:68) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.StatisticsAwareInterceptor.intercept(StatisticsAwareInterceptor.java:41) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.ResultsListAwareInterceptor.intercept(ResultsListAwareInterceptor.java:48) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.TestCaseAwareInterceptor.intercept(TestCaseAwareInterceptor.java:44) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.BuildResultsSummaryAwareInteceptor.intercept(BuildResultsSummaryAwareInteceptor.java:66) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.BuildAwareInterceptor.intercept(BuildAwareInterceptor.java:47) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.RemoteApiExceptionInterceptor.intercept(RemoteApiExceptionInterceptor.java:21) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.RemoteApiLoginInterceptor.intercept(RemoteApiLoginInterceptor.java:57) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.DefaultActionProxy.execute(DefaultActionProxy.java:116) com.opensymphony.webwork.dispatcher.DispatcherUtils.serviceAction(DispatcherUtils.java:274) com.opensymphony.webwork.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:202) org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:55) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:41) org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:118) com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:52) org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) com.opensymphony.webwork.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:88) org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:55) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:41) org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) com.atlassian.bamboo.filter.AccessLogFilter.doFilter(AccessLogFilter.java:61) org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265) org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125) org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275) com.atlassian.bamboo.filter.SeraphLoginFilter.doFilter(SeraphLoginFilter.java:61) org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275) org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149) org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98) com.atlassian.bamboo.filter.BambooAcegiProxyFilter.doFilter(BambooAcegiProxyFilter.java:25) org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) com.atlassian.bamboo.filter.LicenseFilter.doFilter(LicenseFilter.java:73) com.atlassian.core.filters.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:31) org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) com.atlassian.johnson.filters.AbstractJohnsonFilter.doFilter(AbstractJohnsonFilter.java:72) org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) com.atlassian.seraph.filter.SecurityFilter.doFilter(SecurityFilter.java:206) org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) com.atlassian.seraph.filter.BaseLoginFilter.doFilter(BaseLoginFilter.java:133) org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46) com.atlassian.plugin.servlet.filter.DelegatingPluginFilter$1.doFilter(DelegatingPluginFilter.java:66) com.atlassian.oauth.serviceprovider.internal.servlet.OAuthFilter.doFilter(OAuthFilter.java:69) com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.doFilter(DelegatingPluginFilter.java:74) com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:42) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:55) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:41) org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) org.springframework.orm.hibernate.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:170) com.atlassian.spring.filter.FlushingSpringSessionInViewFilter.doFilterInternal(FlushingSpringSessionInViewFilter.java:29) org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75) org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) com.planetj.servlet.filter.compression.CompressingFilter.handleDoFilter(CompressingFilter.java:203) com.planetj.servlet.filter.compression.CompressingFilter.doFilter(CompressingFilter.java:174) com.atlassian.bamboo.filter.CompressingFilter.doFilter(CompressingFilter.java:65) org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) com.atlassian.bamboo.filter.RequestCacheThreadLocalFilter.doFilter(RequestCacheThreadLocalFilter.java:26) org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:55) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:41) org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96) org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75) org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:378) org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181) org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765) org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:417) org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) org.mortbay.jetty.Server.handle(Server.java:324) org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:535) org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:865) org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:539) org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212) org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:228) org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:520)",2 BAM-5153,"Running a chain from the actions menu runs the chain twice",NULL,3 BAM-5172,"CVS deletes working copy when using tag/branch and ampersand modules after initial build","When using cvs ampersand modules on a tag/branch bamboo checks out the _initial_ working copy just fine. For subsequent builds bamboo *deletes* all files in the working copy when updating. https://support.atlassian.com/browse/BSP-2452 ",5 BAM-5182,"Agent upload of artifacts fails to set Content-Length in HTTP/1.1 (on lighthttpd or nginx)"," Bamboo Agent upload of artifacts fails to set Content-Length:, causes problems when using a proxy that implements strict HTTP/1.1 Our preferred reverse proxy solution is Lighttpd. However, use of Lighttpd resulted in failure of Bamboo Agents to upload artifacts to the Bamboo Server. Upon investigation, we discovered the following error in the Lighttpd error logs: 2010-01-08 13:50:26: (request.c.1115) POST-request, but content-length missing -> 411 HTTP/1.1 - http://www.ietf.org/rfc/rfc2616.txt - Section 4.4: ... For compatibility with HTTP/1.0 applications, HTTP/1.1 requests containing a message-body MUST include a valid Content-Length header field unless the server is known to be HTTP/1.1 compliant. If a request contains a message-body and a Content-Length is not given, the server SHOULD respond with 400 (bad request) if it cannot determine the length of the message, or with 411 (length required) if it wishes to insist on receiving a valid Content-Length. And below in section 10.4.12: 10.4.12 411 Length Required The server refuses to accept the request without a defined Content- Length. The client MAY repeat the request if it adds a valid Content-Length header field containing the length of the message-body in the request message. And further below in section : 14.13 Content-Length The Content-Length entity-header field indicates the size of the entity-body, in decimal number of OCTETs, sent to the recipient or, in the case of the HEAD method, the size of the entity-body that would have been sent had the request been a GET. Content-Length = ""Content-Length"" "":"" 1*DIGIT An example is Content-Length: 3495 Applications SHOULD use this field to indicate the transfer-length of the message-body, unless this is prohibited by the rules in section 4.4. Any Content-Length greater than or equal to zero is a valid value. Section 4.4 describes how to determine the length of a message-body if a Content-Length is not given. Note that the meaning of this field is significantly different from the corresponding definition in MIME, where it is an optional field used within the ""message/external-body"" content-type. In HTTP, it SHOULD be sent whenever the message's length can be determined prior to being transferred, unless this is prohibited by the rules in section 4.4. According to my research, both Microsoft IIS and Lighttpd are strict on this. I have confirmed that Lighttpd does not have a configuration option to disable this level of strictness. Apache, however, is lax about enforcing this rule. As a result, Apache works and Lighttpd fails. Please correct the Bamboo Agent upload of artifacts to specify a Content-Length according to the specification defined above so we can switch back to Lighttpd.",2 BAM-5184,"Can't create Plan from POM if the only Builder detected was the Elastic Agent","To reproduce, make sure that the ""Maven 2"" Builder has only the Elastic Agent Builder in its list (Bamboo Console >> Administration >> Builders). Therefore, Bamboo has not detected any local or remote Maven installation. When trying to create the Plan from a POM, after detecting the Repository and Providing the ProjectName and ProjectKey, the following stacktrace is displayed: Version: 2.5 Build: 1711 Build Date: 29 Dec 2009 system.error.request.information: * Request URL: http://localhost:8085/admin/importMavenPlanCreatePlan.action * Scheme: http * Server: localhost * Port: 8085 * URI: /admin/importMavenPlanCreatePlan.action * Context Path: * Servlet Path: /admin/importMavenPlanCreatePlan.action * Path Info: * Query String: Stack Trace: com.atlassian.bamboo.build.PlanCreationException: No Maven 2 builder found, should not occur com.atlassian.bamboo.ww2.actions.admin.ImportMavenPlanCreatePlanAction.createBuilder(ImportMavenPlanCreatePlanAction.java:184) com.atlassian.bamboo.ww2.actions.admin.ImportMavenPlanCreatePlanAction.doExecute(ImportMavenPlanCreatePlanAction.java:123) com.atlassian.bamboo.ww2.BambooActionSupport.execute(BambooActionSupport.java:705) sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) java.lang.reflect.Method.invoke(Method.java:592) com.opensymphony.xwork.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:358) com.opensymphony.xwork.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:218) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:192) com.opensymphony.xwork.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:175) com.atlassian.bamboo.ww2.interceptors.BambooWorkflowInterceptor.doIntercept(BambooWorkflowInterceptor.java:33) com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:116) com.atlassian.bamboo.ww2.interceptors.BambooValidationInterceptor.doIntercept(BambooValidationInterceptor.java:33) com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.JSONValidationInterceptor.intercept(JSONValidationInterceptor.java:78) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.webwork.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:174) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:151) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.GlobalAdminInterceptor.intercept(GlobalAdminInterceptor.java:21) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.security.acegi.intercept.web.WebworkSecurityInterceptor.intercept(WebworkSecurityInterceptor.java:55) com.atlassian.bamboo.security.acegi.intercept.web.WebworkSecurityInterceptorProxy.intercept(WebworkSecurityInterceptorProxy.java:30) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.PaginationAwareInterceptor.intercept(PaginationAwareInterceptor.java:68) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.StatisticsAwareInterceptor.intercept(StatisticsAwareInterceptor.java:41) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.ResultsListAwareInterceptor.intercept(ResultsListAwareInterceptor.java:48) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.TestCaseAwareInterceptor.intercept(TestCaseAwareInterceptor.java:44) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.BuildResultsSummaryAwareInteceptor.intercept(BuildResultsSummaryAwareInteceptor.java:66) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.BuildAwareInterceptor.intercept(BuildAwareInterceptor.java:47) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:186) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.BuildConfigurationInterceptor.intercept(BuildConfigurationInterceptor.java:52) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.BuildConfigurationFromSessionInterceptor.intercept(BuildConfigurationFromSessionInterceptor.java:50) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.DefaultActionProxy.execute(DefaultActionProxy.java:116) com.opensymphony.webwork.dispatcher.DispatcherUtils.serviceAction(DispatcherUtils.java:274) com.opensymphony.webwork.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:202) org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:55) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:41) org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:118) com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:52) org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) com.opensymphony.webwork.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:88) org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:55) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:41) org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) com.atlassian.bamboo.filter.AccessLogFilter.doFilter(AccessLogFilter.java:61) org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265) org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125) org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275) com.atlassian.bamboo.filter.SeraphLoginFilter.doFilter(SeraphLoginFilter.java:61) org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275) org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149) org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98) com.atlassian.bamboo.filter.BambooAcegiProxyFilter.doFilter(BambooAcegiProxyFilter.java:25) org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) com.atlassian.bamboo.filter.LicenseFilter.doFilter(LicenseFilter.java:73) com.atlassian.core.filters.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:31) org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) com.atlassian.johnson.filters.AbstractJohnsonFilter.doFilter(AbstractJohnsonFilter.java:72) org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) com.atlassian.seraph.filter.SecurityFilter.doFilter(SecurityFilter.java:204) org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) com.atlassian.seraph.filter.BaseLoginFilter.doFilter(BaseLoginFilter.java:138) org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46) com.atlassian.plugin.servlet.filter.DelegatingPluginFilter$1.doFilter(DelegatingPluginFilter.java:66) com.atlassian.oauth.serviceprovider.internal.servlet.OAuthFilter.doFilter(OAuthFilter.java:69) com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.doFilter(DelegatingPluginFilter.java:74) com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:42) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:55) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:41) org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) org.springframework.orm.hibernate.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:170) com.atlassian.spring.filter.FlushingSpringSessionInViewFilter.doFilterInternal(FlushingSpringSessionInViewFilter.java:29) org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75) org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) com.planetj.servlet.filter.compression.CompressingFilter.handleDoFilter(CompressingFilter.java:203) com.planetj.servlet.filter.compression.CompressingFilter.doFilter(CompressingFilter.java:193) com.atlassian.bamboo.filter.CompressingFilter.doFilter(CompressingFilter.java:65) org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) com.atlassian.bamboo.filter.RequestCacheThreadLocalFilter.doFilter(RequestCacheThreadLocalFilter.java:26) org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:55) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:41) org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96) org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75) org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:378) org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181) org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765) org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:417) org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) org.mortbay.jetty.Server.handle(Server.java:324) org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:535) org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:880) org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:747) org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218) org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:228) org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:520)",3 BAM-5187,"Update Builders and Jdk's to allow for > 25 agents","This view JDKs and view builders page needs rewriting. A mock up can be found here: https://extranet.atlassian.com/display/BAMBOO/Supporting+more+than+25+remote+agents We are trying to condense this information. There is a bug on this page which also needs to be fixed, see screenshot: http://skitch.com/brydiemccoy/n8fbq/jdks-atlassian-bamboo Investigate surrounding/similar pages and identify if any other work needs doing.",5 BAM-5189,"${system.bamboo.agent.home} should be defined for all agents, not just remote ones","${system.bamboo.agent.home} needs to be defined for all agents, otherwise it makes running pre and post build scripts break.",2 BAM-5192,"Ability to delete build working directory after a suceessful build","Add a checkbox to delete the builds working directory after the build to control the amount of disk space in use It would be excellent if this https://extranet.atlassian.com/display/IT/2010/01/11/Pre+and+Post+scripts+on+BEAC+agents+to+clean+up+builds was incorporated into the product at a per plan level",5 BAM-5197,"Bamboo Rest calls cannot find resources directly after install","I started a brand new Bamboo Home (2.5). After running the setup wizard in Bamboo and running a few builds, I added a new plan status gadget to jira (4.0) and got the error below (see screen shot also). The error could also be seen when hitting the straight rest urls: http://localhost:8085/bamboo/rest/api/latest/build/SVN/DEF?expand=builds[0%3A9].build&max-results=10 I then stopped and started Bamboo and the resources were found happily and everything worked. Notifications are not affected (runs through similar code) just the REST calls. --------------- 2010-01-12 13:51:45,070 INFO [10084294@qtp-11642082-31] [AccessLogFilter] admin http://172.20.7.225:8085/bamboo/rest/api/latest/build/SVN/DEF2.json?expand=builds%5B0%3A9%5D.build&max-results=10&nocache=1263264704955 174430kb 2010-01-12 13:51:45,132 ERROR [9682830@qtp-11642082-30] [BambooFreemarkerManager] Error resolving template java.io.FileNotFoundException: Template freemarker-lib/ui.ftl not found. freemarker.template.Configuration.getTemplate(Configuration.java:489) freemarker.core.Environment.getTemplateForInclusion(Environment.java:1464) freemarker.core.Environment.getTemplateForImporting(Environment.java:1518) freemarker.core.Environment.importLib(Environment.java:1503) freemarker.template.Configuration.doAutoImportsAndIncludes(Configuration.java:843) freemarker.core.Configurable.doAutoImportsAndIncludes(Configurable.java:835) freemarker.core.Configurable.doAutoImportsAndIncludes(Configurable.java:835) freemarker.core.Environment.process(Environment.java:188) freemarker.template.Template.process(Template.java:237) com.atlassian.bamboo.ww2.BambooFreemarkerManager.renderPageWithNoContext(BambooFreemarkerManager.java:419) com.atlassian.bamboo.ww2.BambooFreemarkerManager.renderPage(BambooFreemarkerManager.java:260) com.atlassian.bamboo.ww2.BambooFreemarkerManager.renderPage(BambooFreemarkerManager.java:236) com.atlassian.bamboo.ww2.BambooFreemarkerManager.render(BambooFreemarkerManager.java:305) com.atlassian.bamboo.v2.build.trigger.DefaultTriggerReasonRenderer.getShortDescriptionHtml(DefaultTriggerReasonRenderer.java:40) com.atlassian.bamboo.resultsummary.AbstractBuildResultsSummary.getReasonSummary(AbstractBuildResultsSummary.java:135) com.atlassian.bamboo.plugins.rest.model.build.AbstractRestBuild.expand(AbstractRestBuild.java:145) com.atlassian.bamboo.plugins.rest.model.build.RestBuild.expand(RestBuild.java:68) com.atlassian.bamboo.plugins.rest.model.build.RestBuildExpander.expandInternal(RestBuildExpander.java:14) com.atlassian.bamboo.plugins.rest.model.build.RestBuildExpander.expandInternal(RestBuildExpander.java:8) com.atlassian.plugins.rest.common.expand.AbstractRecursiveEntityExpander.expand(AbstractRecursiveEntityExpander.java:9) com.atlassian.plugins.rest.common.expand.resolver.CollectionEntityExpanderResolver$ListExpander.expand(CollectionEntityExpanderResolver.java:65) com.atlassian.plugins.rest.common.expand.resolver.CollectionEntityExpanderResolver$ListExpander.expand(CollectionEntityExpanderResolver.java:56) com.atlassian.plugins.rest.common.expand.EntityCrawler.expandFields(EntityCrawler.java:94) com.atlassian.plugins.rest.common.expand.EntityCrawler.crawl(EntityCrawler.java:35) com.atlassian.plugins.rest.common.expand.resolver.ListWrapperEntityExpanderResolver$ListWrapperEntityExpander.expand(ListWrapperEntityExpanderResolver.java:58) com.atlassian.plugins.rest.common.expand.resolver.ListWrapperEntityExpanderResolver$ListWrapperEntityExpander.expand(ListWrapperEntityExpanderResolver.java:32) com.atlassian.plugins.rest.common.expand.EntityCrawler.expandFields(EntityCrawler.java:94) com.atlassian.plugins.rest.common.expand.EntityCrawler.crawl(EntityCrawler.java:35) com.atlassian.plugins.rest.common.expand.jersey.ExpandResponseFilter.filter(ExpandResponseFilter.java:39) com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:675) com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:612) com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:603) com.sun.jersey.spi.container.servlet.WebComponent.service(WebComponent.java:309) com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:425) com.atlassian.plugins.rest.module.RestDelegatingServletFilter$JerseyOsgiServletContainer.doFilter(RestDelegatingServletFilter.java:198) com.sun.jersey.spi.container.servlet.ServletContainer.doFilter(ServletContainer.java:689) com.atlassian.plugins.rest.module.RestDelegatingServletFilter.doFilter(RestDelegatingServletFilter.java:112) ",3 BAM-5213,"Editing user and setting Source Repository Alias causes null pointer exception","assigning a repository alias to an external (ldap) user throws NPE 2010-01-14 14:41:36,093 ERROR [4844447@qtp-6659511-0] [FiveOhOh] 500 Exception was thrown. java.lang.NullPointerException java.util.AbstractCollection.addAll(AbstractCollection.java:316) com.atlassian.bamboo.ww2.actions.admin.user.ConfigureUser.execute(ConfigureUser.java:88) com.atlassian.bamboo.ww2.actions.admin.user.ConfigureUser.doUpdateExternalUser(ConfigureUser.java:153) sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) java.lang.reflect.Method.invoke(Method.java:592) ",3 BAM-5218,"When downsizing a license plans users are directed to delete on the _old_ server ","When a user has to downsize bamboo instance the use is directed to a delete plans screen. The link points to the bamboo server the last export was made from. Plans on the _previous_ server are deleted _not_ on the current. The previous server may still be active and eligible to run unlimited plans. On that screen a neon warning should be displayed and the base url should be questioned (if not the same as the current hostname/ip address)",3 BAM-5230,"CVS module field doesn't store changes when cloning an existing build plan","First: create a build plan using CVS as source repository and specify a module to be used. Second: create another build plan and select ""Clone an existing build plan?"" then select the other plan. Click ""Next >>"" and change the CVS module to be used. Click ""Next >>"" until the new plan can be saved and tries to do it's initial build... you will notice that it uses the CVS module specified in the initial build plan instead of the new one specified. Workaround: Abort the initial build and change the module again in the new plan's configuration... afterwards the module is set correctly.",2 BAM-5244,"Cannot undo Maven POM dependency management","We have 200+ Maven plans configured on one Bamboo instance and some of them are nightly plans with a once-a-day trigger. On upgrading to 2.5 I set all plans to use the Maven2 dependency management. The problem is that I don't want regular CI plans to trigger nightly plans(as they are resource intensive). When I remove POM dependency management from the nightly builds, it doesn't stop them from being triggered by regular CI plans. I have no choice now but to take the Maven 2 dep management off all plans. Oh well, it was nice while it lasted. So - any way to stop the Maven 2 dependencies from crossing from plans of one build strategy (polling) to plans of another (single daily build)?",3 BAM-5261,"Fix up UI for builders/jdks admin pages",NULL,3 BAM-5263,"Return URL should be restricted to current server",NULL,3 BAM-5277,"Session timeout and refreshing of Latest Status bar causes decorated login screen to appear inside page rather than taking up whole page","Attached is a screenshot of what happens when your session has timed out and you go back then forward - appears after about 5-10 seconds",3 BAM-5281,"JIRA Bamboo Plugin creates deadlock in JIRA and Bamboo applications when starting them up in the same Tomcat server","Steps to reproduce: # Deploy JIRA 4.0.1 WAR into Tomcat 5.5.26 # Deploy Bamboo 2.5.1 WAR into same Tomcat # Configure everything normally # Start up JIRA. Default configuration. Create TST project. # Start up Bamboo. Express Installation. # In JIRA, configure a Bamboo Server for the Bamboo app # Shutdown Tomcat # Restart Tomcat Bamboo gets this far: {quote} 2010-02-04 16:06:03,522 INFO [main] [BambooSmackClient] No IM server specified. Bambo Smack client not initiated. 2010-02-04 16:06:03,573 INFO [main] [BambooContainer] Registered Event Listener: completedBuildNotificationEventListener 2010-02-04 16:06:03,591 INFO [main] [BambooContainer] Registered Event Listener: afterXFailedNotificationListener 2010-02-04 16:06:03,597 INFO [main] [BambooContainer] Registered Event Listener: buildCommentedNotificationListener 2010-02-04 16:06:03,601 INFO [main] [BambooContainer] Registered Event Listener: buildHungNotificationListener 2010-02-04 16:06:03,605 INFO [main] [BambooContainer] Registered Event Listener: buildQueueTimeoutNotificationListener 2010-02-04 16:06:03,608 INFO [main] [BambooContainer] Registered Event Listener: legacyNotificationEventListener 2010-02-04 16:06:03,612 INFO [main] [BambooContainer] Registered Event Listener: buildErrorNotificationListener 2010-02-04 16:06:03,616 INFO [main] [BambooContainer] Registered Event Listener: buildMissingCapableAgentNotificationListener 2010-02-04 16:06:03,620 INFO [main] [BambooContainer] Registered Event Listener: serverStartedEventListener 2010-02-04 16:06:03,620 INFO [main] [BambooContainer] Initialising builds... 2010-02-04 16:06:03,630 INFO [main] [BambooContainer] Checking build repository configurations... 2010-02-04 16:06:03,634 INFO [main] [BambooContainer] Bamboo version 2.5.1 initialised OK 2010-02-04 16:06:03,634 INFO [main] [BambooContainer] Using bamboo.home: /Users/mtokar/support/JSP-51856/bamboohome 2010-02-04 16:06:03,636 INFO [main] [AccessLogFilter] AccessLogFilter initialized. Format is: +- 2010-02-04 16:06:03,642 INFO [main] [[/bamboo]] org.tuckey.web.filters.urlrewrite.utils.Log ERROR: logLevelConf: null 2010-02-04 16:06:03,665 INFO [main] [[/bamboo]] org.tuckey.web.filters.urlrewrite.UrlRewriteFilter INFO: loaded (conf ok) 2010-02-04 16:06:03,748 INFO [main] [[/bamboo]] [CompressingFilter/1.4] CompressingFilter has initialized {quote} JIRA initialisation gets this far: {quote} Database configuration OK ___ Database Configuration _______ Loading entityengine.xml from : file:/Users/mtokar/support/JSP-51856/apache-tomcat-5.5.26/webapps/jira/WEB-INF/classes/entityengine.xml Entity model data source name : defaultDS Entity model field type name : hsql Entity model schema name : PUBLIC Database Version : HSQL Database Engine - 1.8.0 Database Driver : HSQL Database Engine Driver - 1.8.0 Database URL : jdbc:hsqldb:/Users/mtokar/support/JSP-51856/atlassian-jira-enterprise-4.0.1/database/jiradb Database JNDI address : java:comp/env/jdbc/JiraDS {quote} Tomcat logs show that Tomcat has hung after the plugins system has been initialised: {quote} 4/02/2010 16:06:17 com.atlassian.plugin.osgi.factory.UnrecognizedModuleDescriptorServiceTrackerCustomizer addingService INFO: Turned plugin module com.atlassian.streams.streams-jira-plugin:streamsActivityProvider into module com.atlassian.streams.streams-jira-plugin:streamsActivityProvider (null) 4/02/2010 16:06:26 com.atlassian.plugin.loaders.ScanningPluginLoader loadAllPlugins INFO: No plugins found to be deployed 4/02/2010 16:06:26 com.atlassian.plugin.manager.DefaultPluginManager init INFO: Plugin system started in 0:00:19.183 {quote} Neither JIRA or Bamboo webapps can be accessed through the browser. Thread dump of Tomcat shows the following stack trace: {quote} Thread t@81667: (state = IN_NATIVE) - java.net.SocketInputStream.socketRead0(java.io.FileDescriptor, byte[], int, int, int) @bci=0 (Interpreted frame) - java.net.SocketInputStream.read(byte[], int, int) @bci=84, line=129 (Interpreted frame) - java.io.BufferedInputStream.fill() @bci=175, line=218 (Compiled frame) - java.io.BufferedInputStream.read() @bci=12, line=235 (Compiled frame) - org.apache.commons.httpclient.HttpParser.readRawLine(java.io.InputStream) @bci=36, line=77 (Interpreted frame) - org.apache.commons.httpclient.HttpParser.readLine(java.io.InputStream, java.lang.String) @bci=11, line=105 (Interpreted frame) - org.apache.commons.httpclient.HttpConnection.readLine(java.lang.String) @bci=19, line=1115 (Interpreted frame) - org.apache.commons.httpclient.MultiThreadedHttpConnectionManager$HttpConnectionAdapter.readLine(java.lang.String) @bci=12, line=1373 (Interpreted frame) - org.apache.commons.httpclient.HttpMethodBase.readStatusLine(org.apache.commons.httpclient.HttpState, org.apache.commons.httpclient.HttpConnection) @bci=36, line=1832 (Interpreted frame) - org.apache.commons.httpclient.HttpMethodBase.readResponse(org.apache.commons.httpclient.HttpState, org.apache.commons.httpclient.HttpConnection) @bci=16, line=1590 (Interpreted frame) - org.apache.commons.httpclient.HttpMethodBase.execute(org.apache.commons.httpclient.HttpState, org.apache.commons.httpclient.HttpConnection) @bci=68, line=995 (Interpreted frame) - org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(org.apache.commons.httpclient.HttpMethod) @bci=138, line=397 (Interpreted frame) - org.apache.commons.httpclient.HttpMethodDirector.executeMethod(org.apache.commons.httpclient.HttpMethod) @bci=291, line=170 (Interpreted frame) - org.apache.commons.httpclient.HttpClient.executeMethod(org.apache.commons.httpclient.HostConfiguration, org.apache.commons.httpclient.HttpMethod, org.apache.commons.httpclient.HttpState) @bci=115, line=396 (Interpreted frame) - org.apache.commons.httpclient.HttpClient.executeMethod(org.apache.commons.httpclient.HttpMethod) @bci=14, line=324 (Interpreted frame) - com.atlassian.jira.plugin.ext.bamboo.BambooServerManagerImpl.isGadgetAvailable(java.net.URI) @bci=17, line=413 (Interpreted frame) - com.atlassian.jira.plugin.ext.bamboo.BambooServerManagerImpl.addGadgetsForServer(com.atlassian.jira.plugin.ext.bamboo.service.BambooServer) @bci=63, line=376 (Interpreted frame) - com.atlassian.jira.plugin.ext.bamboo.BambooServerManagerImpl.start() @bci=36, line=117 (Interpreted frame) - com.atlassian.sal.jira.lifecycle.JiraLifecycleManager.notifyOnStart() @bci=99, line=83 (Interpreted frame) - com.atlassian.sal.core.lifecycle.DefaultLifecycleManager.start() @bci=15, line=50 (Interpreted frame) - com.atlassian.sal.jira.lifecycle.JiraLifecycleManager.onJiraStart(com.atlassian.jira.extension.JiraStartedEvent) @bci=9, line=60 (Interpreted frame) {quote} So what we have is a deadlock. Bamboo is somewhat started up but not responding to HTTP requests. JIRA has started its plugins, and in the starting of the JIRA Bamboo Plugin, some code tries to eagerly instantiate something in {{BambooServerManagerImpl.java}}: {code} protected boolean isGadgetAvailable(URI uri) { HeadMethod method = new HeadMethod(uri.toString()); try { httpClient.executeMethod(method); return method.getStatusCode() < HTTP_STATUS_CODE_ERRORS; } catch(IOException e) { return false; } finally { method.releaseConnection(); } } {code} i.e. JIRA is waiting on Bamboo to respond. This should be fixed so that the attempted HTTP connection at least has a sensible timeout (60seconds?) before it gives up and moves along. That, or instantiate things not on the startup of a plugin but at a different point in the lifecycle.",5 BAM-5287,"Name change from Build to Plan security aware broke nant plugin","2010-02-04 13:40:32,839 ERROR [main] [DefaultPluginManager] There was an error loading the descriptor 'View NCover Result' of plugin 'com.atlassian.bamboo.plugin.builder.nant'. Disabling. java.lang.NoClassDefFoundError: com/atlassian/bamboo/ww2/aware/permissions/BuildReadSecurityAware java.lang.ClassLoader.defineClass1(Native Method) java.lang.ClassLoader.defineClass(ClassLoader.java:620) java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124) org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:1629) org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:850) org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1299) org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1181) com.opensymphony.util.ClassLoaderUtil.loadClass(ClassLoaderUtil.java:96) com.opensymphony.xwork.ObjectFactory.getClassInstance(ObjectFactory.java:88) com.opensymphony.xwork.spring.SpringObjectFactory.getClassInstance(SpringObjectFactory.java:177) com.opensymphony.xwork.spring.SpringObjectFactory.buildBean(SpringObjectFactory.java:117) com.opensymphony.xwork.ObjectFactory.buildAction(ObjectFactory.java:101) com.atlassian.bamboo.plugin.xwork.PluginAwareObjectFactory.buildAction(PluginAwareObjectFactory.java:34) com.atlassian.bamboo.plugin.xwork.XWorkModuleDescriptor.addAction(XWorkModuleDescriptor.java:282) com.atlassian.bamboo.plugin.xwork.XWorkModuleDescriptor.getPackages(XWorkModuleDescriptor.java:115) com.atlassian.bamboo.plugin.xwork.XWorkModuleDescriptor.getPackages(XWorkModuleDescriptor.java:500) com.atlassian.bamboo.plugin.xwork.XWorkModuleDescriptor.init(XWorkModuleDescriptor.java:479) com.opensymphony.xwork.config.impl.DefaultConfiguration.reload(DefaultConfiguration.java:159) com.atlassian.bamboo.plugin.xwork.XWorkModuleDescriptor.enabled(XWorkModuleDescriptor.java:65) com.atlassian.plugin.manager.DefaultPluginManager.notifyModuleEnabled(DefaultPluginManager.java:1168) com.atlassian.plugin.manager.DefaultPluginManager.enablePluginModules(DefaultPluginManager.java:988) com.atlassian.plugin.manager.DefaultPluginManager.addPlugins(DefaultPluginManager.java:558) com.atlassian.plugin.manager.DefaultPluginManager.init(DefaultPluginManager.java:153) com.atlassian.bamboo.container.BambooContainer.init(BambooContainer.java:181) com.atlassian.bamboo.container.BambooContainer.initialise(BambooContainer.java:148) com.atlassian.bamboo.upgrade.UpgradeLauncher.initialiseBambooContainer(UpgradeLauncher.java:140) com.atlassian.bamboo.upgrade.UpgradeLauncher.upgradeAndStartBamboo(UpgradeLauncher.java:86) com.atlassian.bamboo.upgrade.UpgradeLauncher.contextInitialized(UpgradeLauncher.java:32) org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3669) org.apache.catalina.core.StandardContext.start(StandardContext.java:4104) org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:759) org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:739) org.apache.catalina.core.StandardHost.addChild(StandardHost.java:524) org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:894) org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:857) org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:475) org.apache.catalina.startup.HostConfig.start(HostConfig.java:1102) org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119) org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1020) org.apache.catalina.core.StandardHost.start(StandardHost.java:718) org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1012) org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442) org.apache.catalina.core.StandardService.start(StandardService.java:450) org.apache.catalina.core.StandardServer.start(StandardServer.java:683) org.apache.catalina.startup.Catalina.start(Catalina.java:537) sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) java.lang.reflect.Method.invoke(Method.java:585) org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:271) org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:409)",1 BAM-5296,"Differences in the implementation of a BuildResultsSummary cause labels to be duplicated on the 'Related builds by date' tab of the Jira Bamboo Plugin","See BuildResultsSummaryDocument vs BuildResultsSummaryImpl for getLabelNames()",3 BAM-5317,"Delete multiple agents simultaneously","The lab manager plugin pollutes the agent space will thousands of agents that do no deregister properly. This ruins performance as the ui is affected by the product of plans * agent capabilities. Please implement a way to delete inactive agents.",5 BAM-5328,"Large number of exceptions being thrown on JBAC","ssh atlassian20.private nice tail -F /service/j2ee_jira.bamboo.atlassian.com/log/main/current Sample: @400000004b74ceb62c1587b4 2010-02-11 21:44:44,737 ERROR [TP-Processor29] [runtime] @400000004b74ceb62c159754 @400000004b74ceb62c159b3c Error executing macro: displayReorderQueueActions @400000004b74ceb62c159f24 required parameter: returnUrl is not specified. @400000004b74ceb62c15a30c The problematic instruction: @400000004b74ceb62c15a6f4 ---------- @400000004b74ceb62c15aadc ==> macro displayReorderQueueActions [on line 3, column 1 in fragments/showBuildQueue.ftl] @400000004b74ceb62c15b2ac in user-directive displayReorderQueueActions [on line 166, column 33 in fragments/showBuildQueue.ftl] @400000004b74ceb62c1652d4 ---------- @400000004b74ceb62c1652d4 @400000004b74ceb62c1656bc Java backtrace for programmers: @400000004b74ceb62c165aa4 ---------- @400000004b74ceb62c165e8c freemarker.template.TemplateException: Error executing macro: displayReorderQueueActions @400000004b74ceb62c16665c required parameter: returnUrl is not specified. @400000004b74ceb62c166a44 freemarker.core.Macro$Context.sanityCheck(Macro.java:207) @400000004b74ceb62c167dcc freemarker.core.Macro$Context.runMacro(Macro.java:165) @400000004b74ceb62c16859c freemarker.core.Environment.visit(Environment.java:602) @400000004b74ceb62c168984 freemarker.core.UnifiedCall.accept(UnifiedCall.java:106) @400000004b74ceb62c168d6c freemarker.core.Environment.visit(Environment.java:209) @400000004b74ceb62c169154 freemarker.core.ConditionalBlock.accept(ConditionalBlock.java:79) @400000004b74ceb62c16a4dc freemarker.core.Environment.visit(Environment.java:209) @400000004b74ceb62c16a8c4 freemarker.core.MixedContent.accept(MixedContent.java:92) @400000004b74ceb62c16d3bc freemarker.core.Environment.visit(Environment.java:209) @400000004b74ceb62c16d7a4 freemarker.core.IfBlock.accept(IfBlock.java:82) @400000004b74ceb62c16df74 freemarker.core.Environment.visit(Environment.java:209) @400000004b74ceb62c16e35c freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:167) @400000004b74ceb62c16e744 freemarker.core.Environment.visit(Environment.java:416) @400000004b74ceb62c16facc freemarker.core.IteratorBlock.accept(IteratorBlock.java:102) @400000004b74ceb62c16feb4 freemarker.core.Environment.visit(Environment.java:209) @400000004b74ceb62c170684 freemarker.core.IfBlock.accept(IfBlock.java:82) @400000004b74ceb62c170a6c freemarker.core.Environment.visit(Environment.java:209) @400000004b74ceb62c170e54 freemarker.core.MixedContent.accept(MixedContent.java:92) @400000004b74ceb62c1721dc freemarker.core.Environment.visit(Environment.java:209) @400000004b74ceb62c1725c4 freemarker.core.Environment.process(Environment.java:189) @400000004b74ceb62c1729ac freemarker.template.Template.process(Template.java:237) @400000004b74ceb62c17317c com.opensymphony.webwork.views.freemarker.FreemarkerResult.doExecute(FreemarkerResult.java:214) @400000004b74ceb62c173564 com.opensymphony.webwork.dispatcher.WebWorkResultSupport.execute(WebWorkResultSupport.java:143) @400000004b74ceb62c180c3c com.opensymphony.xwork.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:313) @400000004b74ceb62c18140c com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:208) @400000004b74ceb62c181bdc com.opensymphony.xwork.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:175) @400000004b74ceb62c1823ac com.atlassian.bamboo.ww2.interceptors.BambooWorkflowInterceptor.doIntercept(BambooWorkflowInterceptor.java:33) @400000004b74ceb62c183734 com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86) @400000004b74ceb62c183f04 com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) @400000004b74ceb62c1842ec com.opensymphony.xwork.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:116) @400000004b74ceb62c185a5c com.atlassian.bamboo.ww2.interceptors.BambooValidationInterceptor.doIntercept(BambooValidationInterceptor.java:33) @400000004b74ceb62c18622c com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86) @400000004b74ceb62c1869fc com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) @400000004b74ceb62c188d24 com.atlassian.bamboo.ww2.interceptors.JSONValidationInterceptor.intercept(JSONValidationInterceptor.java:78) @400000004b74ceb62c1894f4 com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) @400000004b74ceb62c189cc4 com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) @400000004b74ceb62c18a0ac com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) @400000004b74ceb62c18bc04 com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) @400000004b74ceb62c18c3d4 com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) @400000004b74ceb62c18c7bc com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) @400000004b74ceb62c18cf8c com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) @400000004b74ceb62c18e314 com.opensymphony.webwork.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:174) @400000004b74ceb62c18eae4 com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) @400000004b74ceb62c18eecc com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) @400000004b74ceb62c1915dc com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) @400000004b74ceb62c191dac com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) @400000004b74ceb62c192194 com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) @400000004b74ceb62c192964 com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) @400000004b74ceb62c1940d4 com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) @400000004b74ceb62c1944bc com.opensymphony.xwork.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:151) @400000004b74ceb62c194c8c com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) @400000004b74ceb62c195074 com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) @400000004b74ceb62c196bcc com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) @400000004b74ceb62c196fb4 com.atlassian.bamboo.security.acegi.intercept.web.WebworkSecurityInterceptor.intercept(WebworkSecurityInterceptor.java:55) @400000004b74ceb62c197784 com.atlassian.bamboo.security.acegi.intercept.web.WebworkSecurityInterceptorProxy.intercept(WebworkSecurityInterceptorProxy.java:30) @400000004b74ceb62c19e4e4 com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) @400000004b74ceb62c19ecb4 com.atlassian.bamboo.ww2.interceptors.PaginationAwareInterceptor.intercept(PaginationAwareInterceptor.java:68) @400000004b74ceb62c19f09c com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) @400000004b74ceb62c1a0fdc com.atlassian.bamboo.ww2.interceptors.StatisticsAwareInterceptor.intercept(StatisticsAwareInterceptor.java:41) @400000004b74ceb62c1a17ac com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) @400000004b74ceb62c1a1b94 com.atlassian.bamboo.ww2.interceptors.ResultsListAwareInterceptor.intercept(ResultsListAwareInterceptor.java:48) @400000004b74ceb62c1a3304 com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) @400000004b74ceb62c1a36ec com.atlassian.bamboo.ww2.interceptors.TestCaseAwareInterceptor.intercept(TestCaseAwareInterceptor.java:44) @400000004b74ceb62c1a3ebc com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) @400000004b74ceb62c1a61e4 com.atlassian.bamboo.ww2.interceptors.BuildResultsSummaryAwareInteceptor.intercept(BuildResultsSummaryAwareInteceptor.java:66) @400000004b74ceb62c1a69b4 com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) @400000004b74ceb62c1a6d9c com.atlassian.bamboo.ww2.interceptors.BuildAwareInterceptor.intercept(BuildAwareInterceptor.java:47) @400000004b74ceb62c1a8124 com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) @400000004b74ceb62c1a88f4 com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) @400000004b74ceb62c1a8cdc com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) @400000004b74ceb62c1a94ac com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) @400000004b74ceb62c1ab004 com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) @400000004b74ceb62c1ab3ec com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) @400000004b74ceb62c1abbbc com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) @400000004b74ceb62c1ac38c com.opensymphony.xwork.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:186) @400000004b74ceb62c1aee84 com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) @400000004b74ceb62c1af654 com.opensymphony.xwork.DefaultActionProxy.execute(DefaultActionProxy.java:116) @400000004b74ceb62c1afe24 com.opensymphony.webwork.dispatcher.DispatcherUtils.serviceAction(DispatcherUtils.java:274) @400000004b74ceb62c1b020c com.opensymphony.webwork.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:202) @400000004b74ceb62c1b214c org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) @400000004b74ceb62c1b2534 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) @400000004b74ceb62c1b2d04 com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46) @400000004b74ceb62c1b34d4 com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:55) @400000004b74ceb62c1b4c44 com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:41) @400000004b74ceb62c1b5414 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) @400000004b74ceb62c1b7f0c org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) @400000004b74ceb62c1b86dc com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:118) @400000004b74ceb62c1b8ac4 com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:52) @400000004b74ceb62c1b9294 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) @400000004b74ceb62c1bf824 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) @400000004b74ceb62c1bfff4 com.opensymphony.webwork.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:88) @400000004b74ceb62c1c07c4 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) @400000004b74ceb62c1c0bac org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) @400000004b74ceb62c1c1f34 com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46) @400000004b74ceb62c1c2704 com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:55) @400000004b74ceb62c1c4a2c com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:41) @400000004b74ceb62c1c51fc org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) @400000004b74ceb62c1c59cc org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) @400000004b74ceb62c1c6d54 com.atlassian.bamboo.filter.AccessLogFilter.doFilter(AccessLogFilter.java:76) @400000004b74ceb62c1c7524 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) @400000004b74ceb62c1c790c org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) @400000004b74ceb62c1c80dc org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265) @400000004b74ceb62c1c9464 org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125) @400000004b74ceb62c1c9c34 org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275) @400000004b74ceb62c1ca01c com.atlassian.bamboo.filter.SeraphLoginFilter.doFilter(SeraphLoginFilter.java:61) @400000004b74ceb62c1cc344 org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275) @400000004b74ceb62c1cc72c org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149) @400000004b74ceb62c1ccefc org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98) @400000004b74ceb62c1cd6cc com.atlassian.bamboo.filter.BambooAcegiProxyFilter.doFilter(BambooAcegiProxyFilter.java:25) @400000004b74ceb62c1ce66c org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) @400000004b74ceb62c1cee3c org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) @400000004b74ceb62c1cf60c com.atlassian.bamboo.filter.LicenseFilter.doFilter(LicenseFilter.java:73) @400000004b74ceb62c1cf9f4 com.atlassian.core.filters.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:31) @400000004b74ceb62c1d0d7c org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) @400000004b74ceb62c1d154c org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) @400000004b74ceb62c1d1934 com.atlassian.johnson.filters.AbstractJohnsonFilter.doFilter(AbstractJohnsonFilter.java:72) @400000004b74ceb62c1d4044 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) @400000004b74ceb62c1d442c org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) @400000004b74ceb62c1d4bfc com.atlassian.seraph.filter.SecurityFilter.doFilter(SecurityFilter.java:204) @400000004b74ceb62c1d4fe4 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) @400000004b74ceb62c1da9bc org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) @400000004b74ceb62c1db18c com.atlassian.seraph.filter.BaseLoginFilter.doFilter(BaseLoginFilter.java:138) @400000004b74ceb62c1db574 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) @400000004b74ceb62c1dbd44 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) @400000004b74ceb62c1dd0cc com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46) @400000004b74ceb62c1dd89c com.atlassian.plugin.servlet.filter.DelegatingPluginFilter$1.doFilter(DelegatingPluginFilter.java:66) @400000004b74ceb62c1de06c com.atlassian.oauth.serviceprovider.internal.servlet.OAuthFilter.doFilter(OAuthFilter.java:69) @400000004b74ceb62c1e0394 com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.doFilter(DelegatingPluginFilter.java:74) @400000004b74ceb62c1e0b64 com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:42) @400000004b74ceb62c1e1334 com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:55) @400000004b74ceb62c1e26bc com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:41) @400000004b74ceb62c1e2e8c org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) @400000004b74ceb62c1e3274 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) @400000004b74ceb62c1e45fc org.springframework.orm.hibernate.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:170) @400000004b74ceb62c1e4dcc com.atlassian.spring.filter.FlushingSpringSessionInViewFilter.doFilterInternal(FlushingSpringSessionInViewFilter.java:29) @400000004b74ceb62c1e559c org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75) @400000004b74ceb62c1e7cac org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) @400000004b74ceb62c1e8094 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) @400000004b74ceb62c1e8864 com.planetj.servlet.filter.compression.CompressingFilter.handleDoFilter(CompressingFilter.java:203) @400000004b74ceb62c1e9034 com.planetj.servlet.filter.compression.CompressingFilter.doFilter(CompressingFilter.java:193) @400000004b74ceb62c1e9fd4 com.atlassian.bamboo.filter.CompressingFilter.doFilter(CompressingFilter.java:65) @400000004b74ceb62c1ea7a4 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) @400000004b74ceb62c1eaf74 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) @400000004b74ceb62c1eb35c com.atlassian.bamboo.filter.NonCachingHeaderFilter.doFilter(NonCachingHeaderFilter.java:22) @400000004b74ceb62c1ec6e4 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) @400000004b74ceb62c1eceb4 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) @400000004b74ceb62c1ed684 com.atlassian.bamboo.filter.RequestCacheThreadLocalFilter.doFilter(RequestCacheThreadLocalFilter.java:26) @400000004b74ceb62c1ef5c4 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) @400000004b74ceb62c1efd94 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) @400000004b74ceb62c1f0564 com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46) @400000004b74ceb62c1f094c com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:55) @400000004b74ceb62c1f5384 com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:41) @400000004b74ceb62c1f5b54 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) @400000004b74ceb62c1f6324 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) @400000004b74ceb62c1f76ac org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96) @400000004b74ceb62c1f7e7c org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75) @400000004b74ceb62c1fa1a4 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) @400000004b74ceb62c1fa974 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) @40...",1 BAM-5358,"Persist some calculated data for ArtifactLink","From: https://atlaseye.atlassian.com/cru/CR-BAM-997#c17472 Chai: Is there any reason why we wouldn't simply store the calculated values? One of the things was that size was not calculated for directories in fear that it was going to be too expensive (which it can be if artifacts are big). Thoughts? Krystian: If we decide to persist the url then we shall remember to update it once the buildKey will get changed (build move) which in my opinion adds complexity. We can however store a path with some kind of token to be replaced by planKey while property is being read (""/browse/%s/artifacts/build-123/whatever"") If you want to persist artifact size as well, then we might calculate directory size (as it would be done once). Chai: Yeah for URL we could just store the calculated suffix (ie the thing that requires us to browse for an index.html etc) and leave out the prefix (that can just be apended, it's not expensive) + we should store the full size for the directory, though it'd be good to do some testing to see if how much more time it adds (say for a Clover report over JIRA is a good test)",2 BAM-5376,"Dynamic EC2 agents"," Related to BAM-3344",8 BAM-5425,"Adding correct AWS account credentials gives a stack trace if the account does not have an EC2 subscription","It should instead give a regular error message informing the user of the problem. The stack trace is: {noformat} A communication error occurred while trying to validate the AWS account credentials. com.atlassian.aws.AWSException: Failed to determine validity of AWS credentials. com.atlassian.aws.AWSAccountImpl.validate(AWSAccountImpl.java:79) com.atlassian.bamboo.agent.elastic.server.ElasticInstanceManagerImpl.validateAwsCredentials(ElasticInstanceManagerImpl.java:167) com.atlassian.bamboo.ww2.actions.admin.elastic.ConfigureElasticCloudAction.testAWSCredentials(ConfigureElasticCloudAction.java:215) com.atlassian.bamboo.ww2.actions.admin.elastic.ConfigureElasticCloudAction.validate(ConfigureElasticCloudAction.java:129) com.atlassian.bamboo.ww2.actions.admin.elastic.ConfigureElasticCloudAction.doSave(ConfigureElasticCloudAction.java:167) sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) java.lang.reflect.Method.invoke(Method.java:592) com.opensymphony.xwork.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:358) com.opensymphony.xwork.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:218) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:192) com.atlassian.bamboo.ww2.interceptors.BambooWorkflowInterceptor.doIntercept(BambooWorkflowInterceptor.java:30) com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.BambooValidationInterceptor.doIntercept(BambooValidationInterceptor.java:30) com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.JSONValidationInterceptor.intercept(JSONValidationInterceptor.java:83) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.webwork.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:174) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:151) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.security.acegi.intercept.web.WebworkSecurityInterceptor.intercept(WebworkSecurityInterceptor.java:63) com.atlassian.bamboo.security.acegi.intercept.web.WebworkSecurityInterceptorProxy.intercept(WebworkSecurityInterceptorProxy.java:30) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.PaginationAwareInterceptor.intercept(PaginationAwareInterceptor.java:68) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.StatisticsAwareInterceptor.intercept(StatisticsAwareInterceptor.java:41) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.ResultsListAwareInterceptor.intercept(ResultsListAwareInterceptor.java:48) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.TestCaseAwareInterceptor.intercept(TestCaseAwareInterceptor.java:44) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.BuildResultsSummaryAwareInteceptor.intercept(BuildResultsSummaryAwareInteceptor.java:66) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.BuildAwareInterceptor.intercept(BuildAwareInterceptor.java:47) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:186) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.DefaultActionProxy.execute(DefaultActionProxy.java:116) com.opensymphony.webwork.dispatcher.DispatcherUtils.serviceAction(DispatcherUtils.java:274) com.opensymphony.webwork.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:202) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:55) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:41) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:118) com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:52) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) com.opensymphony.webwork.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:88) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:55) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:41) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) com.atlassian.bamboo.filter.AccessLogFilter.doFilter(AccessLogFilter.java:61) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265) org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125) org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275) com.atlassian.bamboo.filter.SeraphLoginFilter.doFilter(SeraphLoginFilter.java:61) org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275) org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149) org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98) com.atlassian.bamboo.filter.BambooAcegiProxyFilter.doFilter(BambooAcegiProxyFilter.java:25) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) com.atlassian.bamboo.filter.LicenseFilter.doFilter(LicenseFilter.java:73) com.atlassian.core.filters.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:31) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) com.atlassian.johnson.filters.AbstractJohnsonFilter.doFilter(AbstractJohnsonFilter.java:72) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) com.atlassian.seraph.filter.SecurityFilter.doFilter(SecurityFilter.java:204) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) com.atlassian.seraph.filter.BaseLoginFilter.doFilter(BaseLoginFilter.java:138) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46) com.atlassian.plugin.servlet.filter.DelegatingPluginFilter$1.doFilter(DelegatingPluginFilter.java:66) com.atlassian.security.auth.trustedapps.filter.TrustedApplicationsFilter.doFilter(TrustedApplicationsFilter.java:100) com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.doFilter(DelegatingPluginFilter.java:74) com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:42) com.atlassian.plugin.servlet.filter.DelegatingPluginFilter$1.doFilter(DelegatingPluginFilter.java:66) com.atlassian.oauth.serviceprovider.internal.servlet.OAuthFilter.doFilter(OAuthFilter.java:69) com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.doFilter(DelegatingPluginFilter.java:74) com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:42) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:55) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:41) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) org.springframework.orm.hibernate.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:170) com.atlassian.spring.filter.FlushingSpringSessionInViewFilter.doFilterInternal(FlushingSpringSessionInViewFilter.java:29) org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) com.atlassian.bamboo.filter.CompressingFilter.doFilter(CompressingFilter.java:69) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) com.atlassian.bamboo.filter.RequestCacheThreadLocalFilter.doFilter(RequestCacheThreadLocalFilter.java:26) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:55) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:41) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96) org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210) org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174) org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117) org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108) org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151) org.apache.coyote.ajp.AjpAprProcessor.process(AjpAprProcessor.java:444) org.apache.coyote.ajp.AjpAprProtocol$AjpConnectionHandler.process(AjpAprProtocol.java:472) org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1286) java.lang.Thread.run(Thread.java:595) Caused by: com.xerox.amazonws.ec2.EC2Exception: Client error : You are not subscribed to this service. Please go to http://aws.amazon.com to subscribe. com.xerox.amazonws.ec2.Jec2.makeRequestInt(Jec2.java:1680) com.xerox.amazonws.ec2.Jec2.describeAvailabilityZones(Jec2.java:1284) com.atlassian.aws.AWSAccountImpl.validate(AWSAccountImpl.java:69) ... 151 more {noformat} This bug was actually found on Studio 2.1 which is running Bamboo 2.5-m5 (long story).",2 BAM-5431,"REST API missing / in url for build log artifact ","Problem is only with the *Build Log*, normal artifacts have the correct URL. https://bamboo.community.atlassian.com/rest/api/latest/build/CONFTRIGGER-TRUNK?expand=builds[0].build.artifacts Note missing / before *download*: {code:xml} Build log {code}",2 BAM-5433,"Elastic Images for Windows 2003 with IE7 and IE8 for Selenium","It would be excellent to have EC2 Images with IE7 and IE8 for Selenium testing. A few concerns: * Build system changes * Security on the Windows hosts ** Need some way to RDP to the host without the ec2 images having the same user/pass * Windows 2003 Server security needs to be tuned to Windows XP level (Selenium will break if the Security Zones are not configured correctly) * Windows software updates * Should we install Firefox 2/3 and Google Chrome?",5 BAM-5442,"Expire build logs",NULL,3 BAM-5456,"CAPABILITY and NOTIFICATIONS table access with Empty values causes (Oracle) Deadlock in larger instances","Frequent deadlocks are reported by (Oracle) DB when accessing the capability table. Databases wait to actually write (flush) data until someone wants to read it. The hibernate session is being flushed and for some reason the capability object is marked as dirty. Hibernate issues an update to persist the capability. Not usually a big deal but with a large number of plans and the fact that this is invoked from an event, we could have events that try to lock competing resources. ",3 BAM-5510,"Broken link to the dashboard on the /error/error.action","In case there're no errors the /error/error.action contains following: {code} There are no errors accessing Bamboo at present. Return to dashboard. {code}",1 BAM-5519,"Ensure all reports work with new test infrastructure","Reports = those on the reports page. * Some of the reports relied on the test count information being available on the buildresult * The tests report relied on the test data being indexed. Now it is not. * We should index the testsummary object Reports that use it * Test report In the build data table, it may need test summary ",3 BAM-5569,"'view' a plan config tab and click 'edit' - you land on a tab that you've last edited (and not the one you just viewed)","annoying cookie crumble here. If I view a config tab and click edit - where do I want to land? -- exactly you got it - I want to edit the tab that I just viewed and not some random tab that I might have edited in the past. ",3 BAM-5644,"Upgrade task fails on MS SQL Server due to deadlock","Upgrade task 1825 reports deadlock and fails. It works correctly only if run as single thread.",8 BAM-5645,"Deadlocks reported during change detection on MS SQL Server","Observed on installation created from J2BAC export.",13 BAM-5651,"Brute force protection","Login access needs to present a captcha",5 BAM-5674,"invalid backup cron expression leads to NPE when trying to edit.","there is no remedy other than manually editing /xml-data/configuration/administration.xml If an invalid cron expression is detected the edit screen should be accessible with the default cron expression. ",1 BAM-5675,"JCaptcha throwing occasional exception on OS X","{noformat} 2010-04-22 12:02:26,281 ERROR [1173503085@qtp-1259610518-2] [FiveOhOh:46] 500 Exception was thrown. com.octo.captcha.CaptchaException: word is too tall: try to use less letters, smaller font or bigger background: text bounds = {text=stoden java.awt.geom.Rectangle2D$Float[x=0.0,y=-32.871094,w=19.22461,h=40.04297] ascent=32.871094 descent=7.171875 leading=0.0 java.awt.geom.Rectangle2D$Float[x=39.22461,y=-29.357,w=7.9051514,h=38.409] ascent=29.357 descent=9.052 leading=0.0 java.awt.geom.Rectangle2D$Float[x=67.12976,y=-21.811523,w=15.0,h=30.703125] ascent=21.811523 descent=8.891602 leading=0.0 java.awt.geom.Rectangle2D$Float[x=102.12976,y=-25.410645,w=20.157715,h=33.0] ascent=25.410645 descent=7.5893555 leading=0.0 java.awt.geom.Rectangle2D$Float[x=142.28748,y=-60.0,w=16.399902,h=108.08] ascent=60.0 descent=48.08 leading=0.0 java.awt.geom.Rectangle2D$Float[x=178.68738,y=-60.0,w=20.879883,h=108.08] ascent=60.0 descent=48.08 leading=0.0 } with fonts {java.awt.Font[family=PMingLiU,name=PMingLiU,style=plain,size=32] java.awt.Font[family=Dialog,name=BrushScriptMT,style=bold,size=34] java.awt.Font[family=Bodoni SvtyTwo OS ITC TT,name=BodoniSvtyTwoOSITCTT-BookIt,style=italic,size=31] java.awt.Font[family=New Peninim MT,name=NewPeninimMT-Bold,style=bolditalic,size=30] java.awt.Font[family=Helvetica,name=Helvetica-Bold,style=bolditalic,size=33] java.awt.Font[family=Zapfino,name=Zapfino,style=bolditalic,size=32] } versus image width = 200, height = 100 com.octo.captcha.image.gimpy.GimpyFactory.getImageCaptcha(GimpyFactory.java:79) com.octo.captcha.engine.image.ListImageCaptchaEngine.getNextImageCaptcha(ListImageCaptchaEngine.java:128) com.octo.captcha.engine.image.ImageCaptchaEngine.getNextCaptcha(ImageCaptchaEngine.java:52) com.octo.captcha.service.AbstractCaptchaService.generateAndStoreCaptcha(AbstractCaptchaService.java:148) com.octo.captcha.service.AbstractManageableCaptchaService.generateCountTimeStampAndStoreCaptcha(AbstractManageableCaptchaService.java:340) com.octo.captcha.service.AbstractManageableCaptchaService.generateAndStoreCaptcha(AbstractManageableCaptchaService.java:329) com.octo.captcha.service.AbstractCaptchaService.getChallengeForID(AbstractCaptchaService.java:74) com.octo.captcha.service.image.AbstractManageableImageCaptchaService.getImageChallengeForID(AbstractManageableImageCaptchaService.java:62) com.atlassian.bamboo.servlet.BambooCaptchaServlet.doGet(BambooCaptchaServlet.java:38) {noformat} http://jcaptcha.octo.com/jira/browse/FWK-58",1 BAM-5701,"Column AUTHOR_NAME in AUTHOR table should be unique",NULL,3 BAM-5713,"Link is escaped on Elastic Bamboo Configuration scrren","see screenshot (link to the enable remote agents page inside the error box is escaped)",1 BAM-5778,"After installing Bamboo (on Windows), Bamboo automatically detects and assigns the JRE executables of a JDK installation rather than the JDK executables.","When you install a JDK on windows, it usually installs a JDK and JRE component to the following paths: * {{C:\Java\jdk1.6.0_10}} * {{C:\Java\jre6}} When Bamboo automatically detects the presence of local JDKs (after having installed a JDK and Bamboo on Windows), Bamboo appears to assign these locally detected JDKs the path to the JRE executables of the JDK installation (for example, {{C:\Java\jre6}}), rather than the path to the JDK executables instead (i.e. {{C:\Java\jdk1.6.0_10}}). I'm not sure if this happens on other operating systems. ",1 BAM-5833,"Labmanager should remove agents properly","From https://studio.atlassian.com/browse/LABMAN-26",5 BAM-5860,"Incorrect state shown on remote agent page","After a remote agent is stopped the state shown in the page cycles between Disabled (correct) and ""will be disabled when the build finishes"" (incorrect as agent process is long dead) ",1 BAM-5862,"Support MSSQL with Unicode","[Confluence supports MSSQL Unicode|http://confluence.atlassian.com/display/DOC/Known+Issues+For+SQL+Server#KnownIssuesForSQLServer-UnicodeCharactersNotSupportedByDefault] Bamboo should do as well. Include net/sf/hibernate/dialect/SQLServerIntlDialect.java (we can steal it from confluence) I have verified that it works. ",3 BAM-5870,"SaveBuildTask & LocalBuildProcessor should be run as a single tranasactional call","SaveBuildTask needs some refactoring: 1. It should not be a task, instead, it should be a service. 2. At least database access for BRS and test classes should be made in a single transaction. 3. Consider moving updateBuildSummaryFromBuildResults from BRSManager to the newly created service.",5 BAM-5943,"Elastic bamboo agent (bamboo-agent-home) uses small 10G root partition of elastic instance.","the elastic agent home is located in the small (10G) root partition of the el instance. the rest of the disk space is available on /mnt which is not used at all!!! bamboo-agent-home should be linked to use /mnt/bamboo/bamboo-agent-home for bamboo data /home/bamboo _could_ be linked to /mnt/bamboo/. for agent logs etc. but this is not urgent, This issue occurs if no ebs volumes are used. ",1 BAM-6010,"Create reusable progress bar component",NULL,3 BAM-6017,"Hibernate Exception when hitting dashboard","2010-06-10 11:08:45,082 ERROR [304703545@qtp-46675819-10] [LazyInitializer] Exception initializing proxy net.sf.hibernate.HibernateException: Could not initialize proxy - the owning Session was closed net.sf.hibernate.proxy.LazyInitializer.initialize(LazyInitializer.java:47) net.sf.hibernate.proxy.LazyInitializer.initializeWrapExceptions(LazyInitializer.java:60) net.sf.hibernate.proxy.LazyInitializer.getImplementation(LazyInitializer.java:164) net.sf.hibernate.proxy.CGLIBLazyInitializer.intercept(CGLIBLazyInitializer.java:108) com.atlassian.bamboo.project.DefaultProject$$EnhancerByCGLIB$$ed17e412.getKey() com.atlassian.bamboo.project.ProjectStatusHelperImpl.(ProjectStatusHelperImpl.java:39) com.atlassian.bamboo.webwork.StarterAction.getProjectStatusHelper(StarterAction.java:146) sun.reflect.GeneratedMethodAccessor358.invoke(Unknown Source) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) java.lang.reflect.Method.invoke(Method.java:597) ognl.OgnlRuntime.invokeMethod(OgnlRuntime.java:778) ognl.OgnlRuntime.getMethodValue(OgnlRuntime.java:1297) ognl.ObjectPropertyAccessor.getPossibleProperty(ObjectPropertyAccessor.java:60) ognl.ObjectPropertyAccessor.getProperty(ObjectPropertyAccessor.java:147) com.opensymphony.xwork.util.OgnlValueStack$ObjectAccessor.getProperty(OgnlValueStack.java:57) ognl.OgnlRuntime.getProperty(OgnlRuntime.java:1940) com.opensymphony.xwork.util.CompoundRootAccessor.getProperty(CompoundRootAccessor.java:334) ognl.OgnlRuntime.getProperty(OgnlRuntime.java:1940) ognl.ASTProperty.getValueBody(ASTProperty.java:114) ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:212) ognl.SimpleNode.getValue(SimpleNode.java:258) ognl.Ognl.getValue(Ognl.java:494) ognl.Ognl.getValue(Ognl.java:458) com.opensymphony.xwork.util.OgnlUtil.getValue(OgnlUtil.java:287) com.opensymphony.xwork.util.OgnlValueStack.findValue(OgnlValueStack.java:224) com.opensymphony.webwork.views.freemarker.ScopesHashModel.get(ScopesHashModel.java:51) freemarker.core.Environment.getGlobalVariable(Environment.java:1063) freemarker.core.Environment.getVariable(Environment.java:1049) freemarker.core.Identifier._getAsTemplateModel(Identifier.java:70) freemarker.core.Expression.getAsTemplateModel(Expression.java:89) freemarker.core.Dot._getAsTemplateModel(Dot.java:74) freemarker.core.Expression.getAsTemplateModel(Expression.java:89) freemarker.core.MethodCall._getAsTemplateModel(MethodCall.java:86) freemarker.core.Expression.getAsTemplateModel(Expression.java:89) freemarker.core.Expression.getStringValue(Expression.java:93) freemarker.core.DollarVariable.accept(DollarVariable.java:76) freemarker.core.Environment.visit(Environment.java:210) freemarker.core.MixedContent.accept(MixedContent.java:92) freemarker.core.Environment.visit(Environment.java:210) freemarker.core.IfBlock.accept(IfBlock.java:82) freemarker.core.Environment.visit(Environment.java:210) freemarker.core.MixedContent.accept(MixedContent.java:92) freemarker.core.Environment.visit(Environment.java:210) freemarker.core.IfBlock.accept(IfBlock.java:82) freemarker.core.Environment.visit(Environment.java:210) freemarker.core.MixedContent.accept(MixedContent.java:92) freemarker.core.Environment.visit(Environment.java:210) freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:167) freemarker.core.Environment.visit(Environment.java:417) freemarker.core.IteratorBlock.accept(IteratorBlock.java:102) freemarker.core.Environment.visit(Environment.java:210) freemarker.core.MixedContent.accept(MixedContent.java:92) freemarker.core.Environment.visit(Environment.java:210) freemarker.core.Macro$Context.runMacro(Macro.java:172) freemarker.core.Environment.visit(Environment.java:603) freemarker.core.UnifiedCall.accept(UnifiedCall.java:106) freemarker.core.Environment.visit(Environment.java:210) freemarker.core.MixedContent.accept(MixedContent.java:92) freemarker.core.Environment.visit(Environment.java:210) freemarker.core.Environment.process(Environment.java:190) freemarker.template.Template.process(Template.java:237) com.opensymphony.webwork.views.freemarker.FreemarkerResult.doExecute(FreemarkerResult.java:214) com.opensymphony.webwork.dispatcher.WebWorkResultSupport.execute(WebWorkResultSupport.java:143) com.opensymphony.xwork.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:313) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:208) com.opensymphony.xwork.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:175) com.atlassian.bamboo.ww2.interceptors.BambooWorkflowInterceptor.doIntercept(BambooWorkflowInterceptor.java:33) com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:116) com.atlassian.bamboo.ww2.interceptors.BambooValidationInterceptor.doIntercept(BambooValidationInterceptor.java:33) com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.JSONValidationInterceptor.intercept(JSONValidationInterceptor.java:78) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.webwork.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:174) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:151) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.security.acegi.intercept.web.WebworkSecurityInterceptor.intercept(WebworkSecurityInterceptor.java:55) com.atlassian.bamboo.security.acegi.intercept.web.WebworkSecurityInterceptorProxy.intercept(WebworkSecurityInterceptorProxy.java:30) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.PaginationAwareInterceptor.intercept(PaginationAwareInterceptor.java:84) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.StatisticsAwareInterceptor.intercept(StatisticsAwareInterceptor.java:41) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.ResultsListAwareInterceptor.intercept(ResultsListAwareInterceptor.java:49) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.BuildResultsSummaryAwareInteceptor.intercept(BuildResultsSummaryAwareInteceptor.java:66) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.ChainAwareInterceptor.intercept(ChainAwareInterceptor.java:93) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.BuildAwareInterceptor.intercept(BuildAwareInterceptor.java:46) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.PlanAwareInterceptor.intercept(PlanAwareInterceptor.java:53) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:186) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.DefaultActionProxy.execute(DefaultActionProxy.java:116) com.opensymphony.webwork.components.ActionComponent.executeAction(ActionComponent.java:229) com.opensymphony.webwork.components.ActionComponent.end(ActionComponent.java:127) com.opensymphony.webwork.views.freemarker.tags.CallbackWriter.afterBody(CallbackWriter.java:65) freemarker.core.Environment.visit(Environment.java:301) freemarker.core.UnifiedCall.accept(UnifiedCall.java:130) freemarker.core.Environment.visit(Environment.java:210) freemarker.core.MixedContent.accept(MixedContent.java:92) freemarker.core.Environment.visit(Environment.java:210) freemarker.core.Environment.process(Environment.java:190) freemarker.template.Template.process(Template.java:237) com.opensymphony.webwork.views.freemarker.FreemarkerResult.doExecute(FreemarkerResult.java:214) com.opensymphony.webwork.dispatcher.WebWorkResultSupport.execute(WebWorkResultSupport.java:143) com.opensymphony.xwork.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:313) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:208) com.opensymphony.xwork.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:175) com.atlassian.bamboo.ww2.interceptors.BambooWorkflowInterceptor.doIntercept(BambooWorkflowInterceptor.java:33) com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:116) com.atlassian.bamboo.ww2.interceptors.BambooValidationInterceptor.doIntercept(BambooValidationInterceptor.java:33) com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.JSONValidationInterceptor.intercept(JSONValidationInterceptor.java:78) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.webwork.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:174) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:151) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.security.acegi.intercept.web.WebworkSecurityInterceptor.intercept(WebworkSecurityInterceptor.java:55) com.atlassian.bamboo.security.acegi.intercept.web.WebworkSecurityInterceptorProxy.intercept(WebworkSecurityInterceptorProxy.java:30) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.PaginationAwareInterceptor.intercept(PaginationAwareInterceptor.java:84) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.StatisticsAwareInterceptor.intercept(StatisticsAwareInterceptor.java:41) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.ResultsListAwareInterceptor.intercept(ResultsListAwareInterceptor.java:49) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.BuildResultsSummaryAwareInteceptor.intercept(BuildResultsSummaryAwareInteceptor.java:66) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.ChainAwareInterceptor.intercept(ChainAwareInterceptor.java:93) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.BuildAwareInterceptor.intercept(BuildAwareInterceptor.java:46) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.PlanAwareInterceptor.intercept(PlanAwareInterceptor.java:53) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:186) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.DefaultActionProxy.execute(DefaultActionProxy.java:116) com.opensymphony.webwork.components.ActionComponent.executeAction(ActionComponent.java:229) com.opensymphony.webwork.components.ActionComponent.end(ActionComponent.java:127) com.opensymphony.webwork.views.freemarker.tags.CallbackWriter.afterBody(CallbackWriter.java:65) freemarker.core.Environment.visit(Environment.java:301) freemarker.core.UnifiedCall.accept(UnifiedCall.java:130) freemarker.core.Environment.visit(Environment.java:210) freemarker.core.IfBlock.accept(IfBlock.java:82) freemarker.core.Environment.visit(Environment.java:210) freemarker.core.MixedContent.accept(MixedContent.java:92) freemarker.core.Environment.visit(Environment.java:210) freemarker.core.IfBlock.accept(IfBlock.java:82) freemarker.core.Environment.visit(Environment.java:210) freemarker.core.IfBlock.accept(IfBlock.java:82) freemarker.core.Environment.visit(Environment.java:210) freemarker.core.MixedContent.accept(MixedContent.java:92) freemarker.core.Environment.visit(Environment.java:210) freemarker.core.Environment.process(Environment.java:190) freemarker.template.Template.process(Template.java:237) com.opensymphony.webwork.views.freemarker.FreemarkerResult.doExecute(FreemarkerResult.java:214) com.opensymphony.webwork.dispatcher.WebWorkResultSupport.execute(WebWorkResultSupport.java:143) com.opensymphony.xwork.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:313) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:208) com.opensymphony.xwork.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:175) com.atlassian.bamboo.ww2.interceptors.BambooWorkflowInterceptor.doIntercept(BambooWorkflowInterceptor.java:33) com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:116) com.atlassian.bamboo.ww2.interceptors.BambooValidationInterceptor.doIntercept(BambooValidationInterceptor.java:33) com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.atlassian.bamboo.ww2.interceptors.JSONValidationInterceptor.intercept(JSONValidationInterceptor.java:78) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.webwork.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:174) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) com.opensymphony.xwork.DefaultActionI...",3 BAM-6018,"Implicit 'Build Requirements' from 'Builders' are not removed when changing 'Builders', causes builds to not execute","When creating/copying a plan, there are implicit build requirements derived from the selected builder. These requirements can not be managed by the user, but are added and deleted on their behalf by Bamboo when selecting a builder. In 2.6 build 1901 - 27 May 10, when one changed the builder for a plan; the old builder requirement is not removed from the plan: !Build Requirements.png! This causes the build to no be able to schedule on desired agents, leaving it in the build queue. Once saved, the requirements can not be removed; cloning the build plan doesn't work around this issue. This will only affect plans that change builders.",2 BAM-6038,"Label of test cases are incorrect",NULL,2 BAM-6087,"Fail producer job if required chain artifacts do not get produced"," https://extranet.atlassian.com/display/BAMBOO/Copy+in+place+artifact+subscriptions",2 BAM-6119,"""Block build if parent plans have unbuilt changes"" doesn't block when parent builds are queued","I have multiple component builds set up in bamboo, with the actual dependencies indicated in the build dependencies for those builds. Set with a blocking strategy of ""Block build if parent plans have unbuilt changes"" - but I don't think this affects the issue. Because of the graph of dependencies, and the current methodology of triggering builds in bamboo, the components at the end of the dependency tree can get build multiple times for the same root reason/submission. Consider the builds: || Build || Parent Plans || | parent | | | child-A | parent | | grandchild-B | parent \\ child-A | If a change is submitted to parent source, then on a successful build, both child-A and grandchild-B builds are queued. Once child-A successfully builds, grandchild-B is queued. Grandchild-b gets built twice (with non-deterministic results on the first build since it uses the current parent results and the previous child-A results).",2 BAM-6122,"phpunit --log-xml option deprecated in phpunit 3.4.3+","When configuring the PhpUnit Builder, under the option: ""Log test execution to XML file Relative path to file where PHPUnit will store log test execution in XML format (option --log-xml)."" fails in PhpUnit 3.4.3+ since --log-xml is now deprecated option in PhpUnit. Message: The --log-xml option is deprecated, please use --log-junit instead Therefore the only way to successfully build with PhpUnit 3.4.3+ is to have ""Log test execution to XML file"" disabled.",2 BAM-6133,"custom.svn.lastchange.revision.number is omitted in build result metadata when reprository advanced option 'quiet period' is enabled","reproduce: enable quiet period in plan (advanced repository options) trigger build via commit or manual.",1 BAM-6140,"PHPUnit builder fails by default on Windows","I installed Babmoo 2.6.1. It found PHPUnit and added PHPUnit builder correctly without any user action. However when I created and started a plan using the PHPUnit builder it fails with following error: {code} Failed to execute build: Cannot run program ""C:\Program Files (x86)\PHP\phpunit"" (in directory ""C:\Users\Jacek Jaroczynski\bamboo-home\xml-data\build-dir\TEST-TEST""): CreateProcess error=193, %1 is not a valid Win32 application {code} The solution was to explicitly configure PHPUnit builder to point at *phpunit.bat* instead of *phpunit*",1 BAM-6144,"Amazon EC2 commands do not timeout"," {noformat} QuartzScheduler_Worker-2 [RUNNABLE, IN_NATIVE] CPU time: 0:12 java.net.SocketInputStream.read(byte[], int, int) com.sun.net.ssl.internal.ssl.InputRecord.readFully(InputStream, byte[], int, int) com.sun.net.ssl.internal.ssl.InputRecord.readV3Record(InputStream, OutputStream) com.sun.net.ssl.internal.ssl.InputRecord.read(InputStream, OutputStream) com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(InputRecord, boolean) com.sun.net.ssl.internal.ssl.SSLSocketImpl.readDataRecord(InputRecord) com.sun.net.ssl.internal.ssl.AppInputStream.read(byte[], int, int) org.apache.commons.httpclient.HttpClient.executeMethod(HttpMethod) com.xerox.amazonws.common.AWSQueryConnection.makeRequest(HttpMethodBase, String, Map, Class) com.xerox.amazonws.ec2.Jec2.makeRequestInt(HttpMethodBase, String, Map, Class) com.xerox.amazonws.ec2.Jec2.describeSecurityGroups(List) com.atlassian.aws.AWSAccountImpl.getEC2SecurityGroups() com.atlassian.bamboo.agent.elastic.server.ElasticFunctionalityFacadeImpl.ensureSecurityGroupExists(AWSAccount) com.atlassian.bamboo.agent.elastic.server.ElasticFunctionalityFacadeImpl.startupAgents(Collection) com.atlassian.bamboo.agent.elastic.schedule.ElasticInstancesMonitorJob.execute(JobExecutionContext) org.quartz.core.JobRunShell.run() com.atlassian.bamboo.quartz.SystemAuthorizedThreadPool$1.run() org.quartz.simpl.SimpleThreadPool$WorkerThread.run() {noformat} this can lead to some fairly serious thread starvation issues like http://skitch.com/markchai/dknaw/bootstrap-yourkit-java-profiler-8.0.24",3 BAM-6215,"Maven Import doesn't work if the Maven builder isn't labelled 'Maven 2'","Bamboo doesn't seem to pick up the Maven builder if its using a non-default label, it complains about {{Bamboo is currently not configured to build Maven 2 projects. Proceed to builder configuration before importing Maven plan. }} ",2 BAM-6216,"Cannot import Maven POM from repositories requiring authentication","When I try to import a Maven POM from my CVS repository I get the error ""Cannot connect to CVS root: Wrong Password."" (see attachment) However the password specified is exactly the same than the one I specify in another plan to retrieve files from my CVS, and in this case it can connect succesfully to the CVS server. Furthermore the error generates the following stacktrace in bamboo.log : INFO | jvm 1 | 2010/07/09 15:13:11 | 2010-07-09 15:13:11,079 INFO [1619340@qtp-6161922-7] [AccessLogFilter] system http://vbsbuiltin.ivb.victor-buck.com:8085/admin/importMavenPlanExecutePomCheckout.action 136127kb INFO | jvm 1 | 2010/07/09 15:13:11 | 2010-07-09 15:13:11,094 INFO [1619340@qtp-6161922-7] [PlanAwareInterceptor] /admin/importMavenPlanExecutePomCheckout.action INFO | jvm 1 | 2010/07/09 15:13:11 | 2010-07-09 15:13:11,735 ERROR [1619340@qtp-6161922-7] [runtime] Expression repository.p4Executable is undefined on line 4, column 26 in templates/plugins/repository/p4RepositoryMavenPomCheckoutAccessEdit.ftl. INFO | jvm 1 | 2010/07/09 15:13:11 | INFO | jvm 1 | 2010/07/09 15:13:11 | Expression repository.p4Executable is undefined on line 4, column 26 in templates/plugins/repository/p4RepositoryMavenPomCheckoutAccessEdit.ftl. INFO | jvm 1 | 2010/07/09 15:13:11 | The problematic instruction: INFO | jvm 1 | 2010/07/09 15:13:11 | ---------- INFO | jvm 1 | 2010/07/09 15:13:11 | ==> ${repository.p4Executable} [on line 4, column 24 in templates/plugins/repository/p4RepositoryMavenPomCheckoutAccessEdit.ftl] INFO | jvm 1 | 2010/07/09 15:13:11 | in user-directive ww.param [on line 4, column 13 in templates/plugins/repository/p4RepositoryMavenPomCheckoutAccessEdit.ftl] INFO | jvm 1 | 2010/07/09 15:13:11 | in user-directive ww.text [on line 3, column 9 in templates/plugins/repository/p4RepositoryMavenPomCheckoutAccessEdit.ftl] INFO | jvm 1 | 2010/07/09 15:13:11 | ---------- INFO | jvm 1 | 2010/07/09 15:13:11 | INFO | jvm 1 | 2010/07/09 15:13:11 | Java backtrace for programmers: INFO | jvm 1 | 2010/07/09 15:13:11 | ---------- INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.InvalidReferenceException: Expression repository.p4Executable is undefined on line 4, column 26 in templates/plugins/repository/p4RepositoryMavenPomCheckoutAccessEdit.ftl. INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.TemplateObject.assertNonNull(TemplateObject.java:124) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.Expression.getStringValue(Expression.java:118) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.Expression.getStringValue(Expression.java:93) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.DollarVariable.accept(DollarVariable.java:76) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.Environment.visit(Environment.java:210) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.Environment.visit(Environment.java:299) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.UnifiedCall.accept(UnifiedCall.java:130) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.Environment.visit(Environment.java:210) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.MixedContent.accept(MixedContent.java:92) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.Environment.visit(Environment.java:210) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.Environment.visit(Environment.java:299) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.UnifiedCall.accept(UnifiedCall.java:130) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.Environment.visit(Environment.java:210) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.MixedContent.accept(MixedContent.java:92) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.Environment.visit(Environment.java:210) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.IfBlock.accept(IfBlock.java:82) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.Environment.visit(Environment.java:210) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.MixedContent.accept(MixedContent.java:92) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.Environment.visit(Environment.java:210) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.Environment.process(Environment.java:190) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.template.Template.process(Template.java:237) INFO | jvm 1 | 2010/07/09 15:13:11 | com.atlassian.bamboo.ww2.BambooFreemarkerManager.renderPage(BambooFreemarkerManager.java:310) INFO | jvm 1 | 2010/07/09 15:13:11 | com.atlassian.bamboo.ww2.BambooFreemarkerManager.renderPage(BambooFreemarkerManager.java:250) INFO | jvm 1 | 2010/07/09 15:13:11 | com.atlassian.bamboo.ww2.BambooFreemarkerManager.render(BambooFreemarkerManager.java:319) INFO | jvm 1 | 2010/07/09 15:13:11 | com.atlassian.bamboo.repository.MavenPomAccessorAbstract.getMavenPomCheckoutAccessEditHtml(MavenPomAccessorAbstract.java:36) INFO | jvm 1 | 2010/07/09 15:13:11 | sun.reflect.GeneratedMethodAccessor612.invoke(Unknown Source) INFO | jvm 1 | 2010/07/09 15:13:11 | sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) INFO | jvm 1 | 2010/07/09 15:13:11 | java.lang.reflect.Method.invoke(Unknown Source) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:841) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:106) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.MethodCall._getAsTemplateModel(MethodCall.java:93) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.Expression.getAsTemplateModel(Expression.java:89) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.DefaultToExpression._getAsTemplateModel(DefaultToExpression.java:100) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.Expression.getAsTemplateModel(Expression.java:89) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.Expression.getStringValue(Expression.java:93) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.DollarVariable.accept(DollarVariable.java:76) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.Environment.visit(Environment.java:210) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.MixedContent.accept(MixedContent.java:92) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.Environment.visit(Environment.java:210) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.Environment.visit(Environment.java:395) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.BodyInstruction.accept(BodyInstruction.java:93) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.Environment.visit(Environment.java:210) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.MixedContent.accept(MixedContent.java:92) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.Environment.visit(Environment.java:210) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.Macro$Context.runMacro(Macro.java:172) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.Environment.visit(Environment.java:603) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.UnifiedCall.accept(UnifiedCall.java:106) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.Environment.visit(Environment.java:210) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:167) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.Environment.visit(Environment.java:417) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.IteratorBlock.accept(IteratorBlock.java:102) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.Environment.visit(Environment.java:210) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.MixedContent.accept(MixedContent.java:92) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.Environment.visit(Environment.java:210) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.Environment.visit(Environment.java:299) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.UnifiedCall.accept(UnifiedCall.java:130) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.Environment.visit(Environment.java:210) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.MixedContent.accept(MixedContent.java:92) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.Environment.visit(Environment.java:210) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.IfBlock.accept(IfBlock.java:82) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.Environment.visit(Environment.java:210) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.MixedContent.accept(MixedContent.java:92) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.Environment.visit(Environment.java:210) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.core.Environment.process(Environment.java:190) INFO | jvm 1 | 2010/07/09 15:13:11 | freemarker.template.Template.process(Template.java:237) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.webwork.views.freemarker.FreemarkerResult.doExecute(FreemarkerResult.java:214) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.webwork.dispatcher.WebWorkResultSupport.execute(WebWorkResultSupport.java:143) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:313) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:208) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:116) INFO | jvm 1 | 2010/07/09 15:13:11 | com.atlassian.bamboo.ww2.interceptors.BambooValidationInterceptor.doIntercept(BambooValidationInterceptor.java:33) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) INFO | jvm 1 | 2010/07/09 15:13:11 | com.atlassian.bamboo.ww2.interceptors.JSONValidationInterceptor.intercept(JSONValidationInterceptor.java:78) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.webwork.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:174) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:151) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) INFO | jvm 1 | 2010/07/09 15:13:11 | com.atlassian.bamboo.ww2.interceptors.GlobalAdminInterceptor.intercept(GlobalAdminInterceptor.java:21) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) INFO | jvm 1 | 2010/07/09 15:13:11 | com.atlassian.bamboo.security.acegi.intercept.web.WebworkSecurityInterceptor.intercept(WebworkSecurityInterceptor.java:55) INFO | jvm 1 | 2010/07/09 15:13:11 | com.atlassian.bamboo.security.acegi.intercept.web.WebworkSecurityInterceptorProxy.intercept(WebworkSecurityInterceptorProxy.java:30) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) INFO | jvm 1 | 2010/07/09 15:13:11 | com.atlassian.bamboo.ww2.interceptors.PaginationAwareInterceptor.intercept(PaginationAwareInterceptor.java:84) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) INFO | jvm 1 | 2010/07/09 15:13:11 | com.atlassian.bamboo.ww2.interceptors.StatisticsAwareInterceptor.intercept(StatisticsAwareInterceptor.java:41) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) INFO | jvm 1 | 2010/07/09 15:13:11 | com.atlassian.bamboo.ww2.interceptors.ResultsListAwareInterceptor.intercept(ResultsListAwareInterceptor.java:49) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) INFO | jvm 1 | 2010/07/09 15:13:11 | com.atlassian.bamboo.ww2.interceptors.BuildResultsSummaryAwareInteceptor.intercept(BuildResultsSummaryAwareInteceptor.java:66) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) INFO | jvm 1 | 2010/07/09 15:13:11 | com.atlassian.bamboo.ww2.interceptors.ChainAwareInterceptor.intercept(ChainAwareInterceptor.java:93) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) INFO | jvm 1 | 2010/07/09 15:13:11 | com.atlassian.bamboo.ww2.interceptors.BuildAwareInterceptor.intercept(BuildAwareInterceptor.java:46) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) INFO | jvm 1 | 2010/07/09 15:13:11 | com.atlassian.bamboo.ww2.interceptors.PlanAwareInterceptor.intercept(PlanAwareInterceptor.java:53) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:186) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) INFO | jvm 1 | 2010/07/09 15:13:11 | com.atlassian.bamboo.ww2.interceptors.BuildConfigurationInterceptor.intercept(BuildConfigurationInterceptor.java:54) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.xwork.DefaultActionProxy.execute(DefaultActionProxy.java:116) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.webwork.dispatcher.DispatcherUtils.serviceAction(DispatcherUtils.java:274) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.webwork.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:202) INFO | jvm 1 | 2010/07/09 15:13:11 | org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) INFO | jvm 1 | 2010/07/09 15:13:11 | com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46) INFO | jvm 1 | 2010/07/09 15:13:11 | com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:55) INFO | jvm 1 | 2010/07/09 15:13:11 | com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:41) INFO | jvm 1 | 2010/07/09 15:13:11 | org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:118) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:52) INFO | jvm 1 | 2010/07/09 15:13:11 | org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) INFO | jvm 1 | 2010/07/09 15:13:11 | com.opensymphony.webwork.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:88) INFO | jvm 1 | 2010/07/09 15:13:11 | org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) INFO | jvm 1 | 2010/07/09 15:13:11 | com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46) INFO | jvm 1 | 2010/07/09 15:13:11 | com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:55) INFO | jvm 1 | 2010/07/09 15:13:11 | com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:41) INFO | jvm 1 | 2010/07/09 15:13:11 | org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) INFO | jvm 1 | 2010/07/09 15:13:11 | com.atlassian.bamboo.filter.AccessLogFilter.doFilter(AccessLogFilter.java:66) INFO | jvm 1 | 2010/07/09 15:13:11 | org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) INFO | jvm 1 | 2010/07/09 15:13:11 | ...",1 BAM-6226,"Activity Stream atom feed throws NPE","{noformat} 2010-07-12 11:58:12,434 ERROR [http-8085-22] [BambooFreemarkerManager] Error resolving template java.lang.NullPointerException org.apache.catalina.connector.Request.setAttribute(Request.java:1424) org.apache.catalina.connector.RequestFacade.setAttribute(RequestFacade.java:503) org.apache.catalina.core.ApplicationHttpRequest.setAttribute(ApplicationHttpRequest.java:279) javax.servlet.ServletRequestWrapper.setAttribute(ServletRequestWrapper.java:284) com.opensymphony.webwork.views.freemarker.FreemarkerManager.buildScopesHashModel(FreemarkerManager.java:192) com.opensymphony.webwork.views.freemarker.FreemarkerManager.buildTemplateModel(FreemarkerManager.java:324) com.atlassian.bamboo.ww2.BambooFreemarkerManager.renderPage(BambooFreemarkerManager.java:324) com.atlassian.bamboo.ww2.BambooFreemarkerManager.renderPage(BambooFreemarkerManager.java:274) com.atlassian.bamboo.ww2.BambooFreemarkerManager.render(BambooFreemarkerManager.java:340) com.atlassian.bamboo.v2.build.trigger.DefaultTriggerReasonRenderer.getShortDescriptionHtml(DefaultTriggerReasonRenderer.java:40) com.atlassian.bamboo.resultsummary.AbstractResultsSummary.getReasonSummary(AbstractResultsSummary.java:175) com.atlassian.streams.bamboo.BuildToSyndTransformer.buildDescriptionHtml(BuildToSyndTransformer.java:127) com.atlassian.streams.bamboo.BuildToSyndTransformer.apply(BuildToSyndTransformer.java:67) com.atlassian.streams.bamboo.BuildToSyndTransformer.apply(BuildToSyndTransformer.java:24) com.google.common.collect.Lists$TransformingRandomAccessList.get(Lists.java:431) com.sun.syndication.feed.synd.impl.ConverterForAtom10.createAtomEntries(ConverterForAtom10.java:416) com.sun.syndication.feed.synd.impl.ConverterForAtom10.createRealFeed(ConverterForAtom10.java:397) com.sun.syndication.feed.synd.SyndFeedImpl.createWireFeed(SyndFeedImpl.java:207) com.sun.syndication.feed.synd.SyndFeedImpl.createWireFeed(SyndFeedImpl.java:189) com.sun.syndication.io.SyndFeedOutput.outputString(SyndFeedOutput.java:61) com.atlassian.streams.servlet.StreamsActivityServlet.doGet(StreamsActivityServlet.java:167) javax.servlet.http.HttpServlet.service(HttpServlet.java:617) javax.servlet.http.HttpServlet.service(HttpServlet.java:717) com.atlassian.plugin.servlet.DelegatingPluginServlet.service(DelegatingPluginServlet.java:42) javax.servlet.http.HttpServlet.service(HttpServlet.java:717) com.atlassian.plugin.servlet.ServletModuleContainerServlet.service(ServletModuleContainerServlet.java:52) javax.servlet.http.HttpServlet.service(HttpServlet.java:717) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:55) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:41) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:118) com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:52) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:55) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:41) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) com.atlassian.bamboo.filter.AccessLogFilter.doFilter(AccessLogFilter.java:66) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265) org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125) org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275) com.atlassian.bamboo.filter.SeraphLoginFilter.doFilter(SeraphLoginFilter.java:66) org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275) org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149) org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98) com.atlassian.bamboo.filter.BambooAcegiProxyFilter.doFilter(BambooAcegiProxyFilter.java:25) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) com.atlassian.bamboo.filter.LicenseFilter.doFilter(LicenseFilter.java:73) com.atlassian.core.filters.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:31) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) com.atlassian.johnson.filters.AbstractJohnsonFilter.doFilter(AbstractJohnsonFilter.java:72) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) com.atlassian.seraph.filter.SecurityFilter.doFilter(SecurityFilter.java:219) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) com.atlassian.seraph.filter.BaseLoginFilter.doFilter(BaseLoginFilter.java:140) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46) com.atlassian.plugin.servlet.filter.DelegatingPluginFilter$1.doFilter(DelegatingPluginFilter.java:66) com.atlassian.oauth.serviceprovider.internal.servlet.OAuthFilter.doFilter(OAuthFilter.java:69) com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.doFilter(DelegatingPluginFilter.java:74) com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:42) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:55) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:41) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) org.springframework.orm.hibernate.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:170) com.atlassian.bamboo.persistence.BambooSessionInViewFilter.doFilterInternal(BambooSessionInViewFilter.java:31) org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:55) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:41) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96) org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286) org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845) org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) java.lang.Thread.run(Thread.java:637) 2010-07-12 11:58:12,439 INFO [BAM::Events:pool-1-thread-35] [DependencyBuildListener] Finished checking children plans of 'Bamboo Plugins - Pre and Post Build Command Plugin' for build BPLUG-BPBC-247 2010-07-12 11:58:12,468 ERROR [http-8085-22] [BambooFreemarkerManager] Error resolving template java.lang.NullPointerException org.apache.catalina.connector.Request.setAttribute(Request.java:1424) org.apache.catalina.connector.RequestFacade.setAttribute(RequestFacade.java:503) org.apache.catalina.core.ApplicationHttpRequest.setAttribute(ApplicationHttpRequest.java:279) javax.servlet.ServletRequestWrapper.setAttribute(ServletRequestWrapper.java:284) com.opensymphony.webwork.views.freemarker.FreemarkerManager.buildScopesHashModel(FreemarkerManager.java:202) com.opensymphony.webwork.views.freemarker.FreemarkerManager.buildTemplateModel(FreemarkerManager.java:324) com.atlassian.bamboo.ww2.BambooFreemarkerManager.renderPage(BambooFreemarkerManager.java:324) com.atlassian.bamboo.ww2.BambooFreemarkerManager.renderPage(BambooFreemarkerManager.java:274) com.atlassian.bamboo.ww2.BambooFreemarkerManager.render(BambooFreemarkerManager.java:340) com.atlassian.bamboo.v2.build.trigger.DefaultTriggerReasonRenderer.getShortDescriptionHtml(DefaultTriggerReasonRenderer.java:40) com.atlassian.bamboo.resultsummary.AbstractResultsSummary.getReasonSummary(AbstractResultsSummary.java:175) com.atlassian.streams.bamboo.BuildToSyndTransformer.buildDescriptionHtml(BuildToSyndTransformer.java:127) com.atlassian.streams.bamboo.BuildToSyndTransformer.apply(BuildToSyndTransformer.java:67) com.atlassian.streams.bamboo.BuildToSyndTransformer.apply(BuildToSyndTransformer.java:24) com.google.common.collect.Lists$TransformingRandomAccessList.get(Lists.java:431) com.sun.syndication.feed.synd.impl.ConverterForAtom10.createAtomEntries(ConverterForAtom10.java:416) com.sun.syndication.feed.synd.impl.ConverterForAtom10.createRealFeed(ConverterForAtom10.java:397) com.sun.syndication.feed.synd.SyndFeedImpl.createWireFeed(SyndFeedImpl.java:207) com.sun.syndication.feed.synd.SyndFeedImpl.createWireFeed(SyndFeedImpl.java:189) com.sun.syndication.io.SyndFeedOutput.outputString(SyndFeedOutput.java:61) com.atlassian.streams.servlet.StreamsActivityServlet.doGet(StreamsActivityServlet.java:167) javax.servlet.http.HttpServlet.service(HttpServlet.java:617) javax.servlet.http.HttpServlet.service(HttpServlet.java:717) com.atlassian.plugin.servlet.DelegatingPluginServlet.service(DelegatingPluginServlet.java:42) javax.servlet.http.HttpServlet.service(HttpServlet.java:717) com.atlassian.plugin.servlet.ServletModuleContainerServlet.service(ServletModuleContainerServlet.java:52) javax.servlet.http.HttpServlet.service(HttpServlet.java:717) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:55) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:41) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:118) com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:52) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:55) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:41) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) com.atlassian.bamboo.filter.AccessLogFilter.doFilter(AccessLogFilter.java:66) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265) org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125) org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275) com.atlassian.bamboo.filter.SeraphLoginFilter.doFilter(SeraphLoginFilter.java:66) org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275) org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149) org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98) com.atlassian.bamboo.filter.BambooAcegiProxyFilter.doFilter(BambooAcegiProxyFilter.java:25) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) com.atlassian.bamboo.filter.LicenseFilter.doFilter(LicenseFilter.java:73) com.atlassian.core.filters.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:31) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) com.atlassian.johnson.filters.AbstractJohnsonFilter.doFilter(AbstractJohnsonFilter.java:72) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) com.atlassian.seraph.filter.SecurityFilter.doFilter(SecurityFilter.java:219) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) com.atlassian.seraph.filter.BaseLoginFilter.doFilter(BaseLoginFilter.java:140) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46) com.atlassian.plugin.servlet.filter.DelegatingPluginFilter$1.doFilter(DelegatingPluginFilter.java:66) com.atlassian.oauth.serviceprovider.internal.servlet.OAuthFilter.doFilter(OAuthFilter.java:69) com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.doFilter(DelegatingPluginFilter.java:74) com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:42) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:55) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:41) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) org.springframework.orm.hibernate.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:170) com.atlassian.bamboo.persistence.BambooSessionInViewFilter.doFilterInternal(BambooSessionInViewFilter.java:31) org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:55) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:41) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96) org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286) org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845) org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) java.lang.Thread.run(Thread.java:637) {noformat}",3 BAM-6247,"Scheduled backups are written to Bamboo Installation directory","Bamboo writes scheduled backups to the Bamboo-Install directory (or the location it was started from) instead of /export directory.",1 BAM-6251,"Allow admins to shutdown instances that are not connected to bamboo","There were some reports that bamboo leaves 'orphaned' elastic instances and detached ebs volumes. Add functionality to allow admins to view/shutdown instances that are not currently connected to bamboo.",2 BAM-6259,"User can set up chain completed notification",NULL,3 BAM-6260,"User can set up chain failed + 1st success notification",NULL,2 BAM-6261,"Ensure notifications aren't run / throw exceptions for SubPlan",NULL,2 BAM-6262,"Drag and drop for moving SubPlan between stages",NULL,2 BAM-6293,"Live Job Result Summary REST does not lookup Buildable","This causes the page to be devoid of useful content.",2 BAM-6313,"Test for SASL support with bundled svnkit","The version of svnkit we bundle with bamboo doesn't have SASL support: {noformat}[amyers@erdinger:svnkit]$ jar tf svnkit-1.3.0.5847.jar | grep Sasl [amyers@erdinger:svnkit]$ {noformat} If I download it from the website it does (this is a newer version, but apparently older ones have it too): {noformat} [amyers@erdinger:svnkit-1.3.2.6267]$ jar tf svnkit.jar | grep Sasl org/tmatesoft/svn/core/internal/io/svn/sasl/SVNSaslAuthenticator$SVNCallbackHandler.class org/tmatesoft/svn/core/internal/io/svn/sasl/SVNSaslAuthenticator.class org/tmatesoft/svn/core/internal/io/svn/sasl/SaslInputStream.class org/tmatesoft/svn/core/internal/io/svn/sasl/SaslOutputStream.class [amyers@erdinger:svnkit-1.3.2.6267]$ {noformat} Is there any technical reason we don't bundle the support for SASL authentication? ",2 BAM-6358,"Ability to Stop a Job",NULL,2 BAM-6497,"User can clone another chain's job configuration",NULL,3 BAM-6498,"Hide configuration tabs of Job",NULL,1 BAM-6500,"Chain configuration should use static tabs",NULL,3 BAM-6501,"Ensure dependencies work for chains","Functional tests, validation, description, chains & plans in the same list.",3 BAM-6503,"New failure periods tab for Chains",NULL,2 BAM-6505,"Update bread crumbs to be the title",NULL,2 BAM-6506,"Ensure basic charts work for chains",NULL,3 BAM-6529,"System Variables does not work in Source repository","When we try to use System envirenment variables in the Repository URL we get an error : This is not a valid Subversion Repository. We think the system property is not replaced",2 BAM-6551,"Servlet api 2.5 broken","NoSuchMethodError: javax.servlet.ServletContext.getContextPath()Ljava/lang/String when installing the JavaMelody plugin. This issue is based on the initial issue submitted at http://code.google.com/p/javamelody/issues/detail?id=37 Steps to reproduce: 1. Download the JavaMelody plugin from https://plugins.atlassian.com/plugin/details/20909 2. Copy the jar into the webapp/WEB-INF/lib folder 3. Start Bamboo (2.6.1) 4. Tail the bamboo log file The Bamboo logs show this stack trace when JavaMelody is installed in Bamboo 2.6.1: 2010-07-16 14:40:46,712 ERROR [796347291@qtp-745957924-0] [DefaultServletModuleManager] Unable to create filter com.atlassian.plugin.servlet.util.LazyLoadedReference$InitializationException: java.lang.NoSuchMethodError: javax.servlet.ServletContext.getContextPath()Ljava/lang/String; at com.atlassian.plugin.servlet.util.LazyLoadedReference.get(LazyLoadedReference.java:94) at com.atlassian.plugin.servlet.DefaultServletModuleManager.getFilter(DefaultServletModuleManager.java:321) at com.atlassian.plugin.servlet.DefaultServletModuleManager.getFilters(DefaultServletModuleManager.java:188) at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:53) at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:41) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:378) at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181) at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765) at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:417) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) at org.mortbay.jetty.Server.handle(Server.java:324) at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:535) at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:865) at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:539) at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212) at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) at org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:228) at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:520) Caused by: java.lang.NoSuchMethodError: javax.servlet.ServletContext.getContextPath()Ljava/lang/String; at net.bull.javamelody.Parameters.getContextPath(Parameters.java:328) at net.bull.javamelody.MonitoringFilter.init(MonitoringFilter.java:94) at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.init(DelegatingPluginFilter.java:43) at com.atlassian.plugin.servlet.DefaultServletModuleManager$LazyLoadedFilterReference.create(DefaultServletModuleManager.java:371) at com.atlassian.plugin.servlet.DefaultServletModuleManager$LazyLoadedFilterReference.create(DefaultServletModuleManager.java:356) at com.atlassian.plugin.servlet.util.LazyLoadedReference$1.call(LazyLoadedReference.java:62) at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source) at java.util.concurrent.FutureTask.run(Unknown Source) at com.atlassian.plugin.servlet.util.LazyLoadedReference.get(LazyLoadedReference.java:74) My analysis: This ServletContext.getContextPath() method is called by the javamelody plugin only if the servlet api version is 2.5 or more. So the fact that the method is called in Bamboo v2.6.1 Build 1902 / jetty v6.1.15 implies that ServletContext.getMajorVersion() has returned 2 and that ServletContext.getMinorVersion() has returned 5. But the method call in the plugin throws ""java.lang.NoSuchMethodError: javax.servlet.ServletContext.getContextPath()Ljava/lang/String;"", even if this method is supposed to exists in the servlet api 2.5. This issue implies that in this setup (in a plugin with bamboo 2.6.1 Build 1902 and jetty v6.1.15), the servlet api 2.5 was broken somehow: the method must exists. This is probably related to the fact that there are both servlet-api-2.4.jar and servlet-api-2.5.jar in ""Bamboo/webapp/WEB-INF/lib/"". Workaround: The following workaround was tested with success: 1. stop the bamboo server 2. backup and delete the file ""Bamboo/webapp/WEB-INF/lib/servlet-api-2.4.jar"" from your bamboo setup (but keep the servlet-api-2.5.jar) 3. restart the bamboo server 4. install the javamelody plugin Thanks anyway for a great plugin architecture. PS: The JavaMelody plugin goal is to monitor JIRA, Confluence and Bamboo servers. ",1 BAM-6714,"Allow ""Import With Maven"" for ""Restricted Administrators""","We differentiate between System Administrators and Administrators in Studio. System Administrators are Atlassian and Contegix, Administrators may be customers. I was told that these groups roughly map to the notion of Administrators (Studio: System Administrators) and Restricted Administrators (Studio: Administrators) in Bamboo. The customer is allowed to perform certain administration tasks in Studio's Bamboo, amongst them f.e. to configure the build expiry (BuildExpiryAction). These actions define no interceptor ref and thus use the defaultStack (default-interceptor-ref, xwork.xml). The defaultStack contains as far as I can see only one interceptor for authorisation, that is the permissionCheck (com.atlassian.bamboo.security.acegi.intercept.web.WebworkSecurityInterceptorProxy) interceptor which delegates to an extension of Acegi's org.acegisecurity.intercept.AbstractSecurityInterceptor, com.atlassian.bamboo.security.acegi.intercept.web.WebworkSecurityInterceptor. The AbstractSecurityInterceptor is configured to check, amongst other things, if principals trying to access com.atlassian.bamboo.ww2.aware.permissions.GlobalAdminSecurityAware instances possess one of these authorities: WW_ADMIN,WW_RESTRICTED_ADMIN,GLOBAL_READ (applicationContextAcegiSecurity.xml). The administrative actions currently configured in Studio to be accessible by Restricted Administrators (Studio: Administrators) implement this interface and thus they are allowed to access the action. My current task is to allow customers to create build plans from POMs (https://studio.atlassian.com/browse/JST-2328). This action, importMavenPlan (com.atlassian.bamboo.ww2.actions.admin.ImportMavenPlanCheckoutPomAction) uses a different interceptor stack, buildConfig and globalAdminStackAlwaysValidate. Regarding permissions, as far as I can see, the WebworkSecurityInterceptor is still used due to globalAdminStackAlwaysValidate → basicAdminStackPreValidate → permissionCheck, but the principal is only checked against these authorities: WW_READ,GLOBAL_READ due to the instance being ""only"" a com.atlassian.bamboo.ww2.aware.permissions.GlobalReadSecurityAware (BambooActionSupport, see screenshot). The Restricted Administrators pass this test. However, a second permission check is applied in this configuration, the globalAdminStackAlwaysValidate → basicAdminStackPreValidate → globalAdmin (com.atlassian.bamboo.ww2.interceptors.GlobalAdminInterceptor). This interceptor uses the com.atlassian.bamboo.security.acegi.acls.HibernateMutableAclServiceImpl in order to check if the principal has the ADMINISTRATION permission, which he has not (RESTRICTEDADMINISTRATION instead). My request is to change the configuration for the importMavenPlan action in order to allow it to be used by Restricted Administrators. One way would be to use the default stack and implement GlobalAdminSecurityAware. I haven't checked what other implications that would have regarding the interceptor configuration. Thx for the help.",1 BAM-6747,"Cannot create entry in AUTHORS table when running build from Mercurial repository","Don't forget to clean AUTHORS table to reproduce it. Sample log {noformat} 2010-09-04 13:14:49,553 ERROR [BAM::Default Agent::Agent:pool-4-thread-1] [BuildAgentControllerImpl] Unknown exception occurred on 'Default Agent'. Agent will attempt to recover its normal operation... java.lang.RuntimeException: java.lang.Exception: Could not save the build results BuildResults: RAN88534083-MAIN88534083-DEFAULT-1. Data could be in an inconsistent state. com.atlassian.bamboo.v2.build.agent.LocalBuildResultProcessor.processBuildResult(LocalBuildResultProcessor.java:146) com.atlassian.bamboo.v2.build.agent.BuildAgentControllerImpl.waitAndPerformBuild(BuildAgentControllerImpl.java:115) com.atlassian.bamboo.v2.build.agent.DefaultBuildAgent$1.run(DefaultBuildAgent.java:102) com.atlassian.bamboo.build.pipeline.concurrent.NamedThreadFactory$2.run(NamedThreadFactory.java:47) java.lang.Thread.run(Thread.java:595) Caused by: java.lang.Exception: Could not save the build results BuildResults: RAN88534083-MAIN88534083-DEFAULT-1. Data could be in an inconsistent state. com.atlassian.bamboo.v2.build.agent.BuildResultsSummaryPersisterImpl.saveBuild(BuildResultsSummaryPersisterImpl.java:112) sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) java.lang.reflect.Method.invoke(Method.java:592) org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:304) org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149) org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) $Proxy39.saveBuild(Unknown Source) com.atlassian.bamboo.v2.build.agent.LocalBuildResultProcessor.processBuildResult(LocalBuildResultProcessor.java:141) ... 4 more Caused by: java.lang.RuntimeException: AuthorCreatorService must not be called within an existing transaction. com.atlassian.bamboo.utils.BambooValidate.notInsideTransaction(BambooValidate.java:39) com.atlassian.bamboo.author.AuthorCreatorServiceImpl.createAuthorIfMissing(AuthorCreatorServiceImpl.java:31) com.atlassian.bamboo.author.AuthorCreatorServiceImpl.createMissingAuthors(AuthorCreatorServiceImpl.java:62) com.atlassian.bamboo.v2.build.agent.BuildResultsSummaryPersisterImpl.saveBuild(BuildResultsSummaryPersisterImpl.java:76) ... 16 more {noformat}",2 BAM-6749,"Comment Tooltip does not show text of the comment anymore On JBAC","When you put you mouse over the comment icon you used to be able to view the content of the comment withour having to click on it to be take to the comments tab of that build. Now, this gets shortened so that you are only able to see the commenter and the comment's date. See screenshot. I am marking this bug as critical, because it's extremely annoying to browse build comments by clicking on them, as you have to wait for a page load and be taken out of the plan view, which you then will have to reload again once you finish reading the comment.",1 BAM-6755,"IMPORT/EXPORT of login failure info is broken","This error occurs when importing a tardigrade export. export_tardigradeserver_2014_20100824.zip Caused by: org.springframework.orm.hibernate.HibernateSystemException: not-null property references a null or transient value: com.atlassian.bamboo.user.LoginInformationImpl.userName; nested exception is net.sf.hibernate.PropertyValueException: not-null property references a null or transient value: com.atlassian.bamboo.user.LoginInformationImpl.userName org.springframework.orm.hibernate.SessionFactoryUtils.convertHibernateAccessException(SessionFactoryUtils.java:597) org.springframework.orm.hibernate.HibernateAccessor.convertHibernateAccessException(HibernateAccessor.java:353) org.springframework.orm.hibernate.HibernateTemplate.execute(HibernateTemplate.java:375) org.springframework.orm.hibernate.HibernateTemplate.saveOrUpdate(HibernateTemplate.java:601) com.atlassian.hibernate.HibernateObjectDao.saveRaw(HibernateObjectDao.java:148) com.atlassian.hibernate.HibernateObjectDao.save(HibernateObjectDao.java:118) com.atlassian.bamboo.user.LoginInformationHibernateDao.save(LoginInformationHibernateDao.java:49) com.atlassian.bamboo.user.LoginInformationManagerImpl.injectLoginInformation(LoginInformationManagerImpl.java:79) sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) java.lang.reflect.Method.invoke(Method.java:597) org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:304) org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149) org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) $Proxy16.injectLoginInformation(Unknown Source) com.atlassian.bamboo.migration.stream.LoginInformationMapper.afterImportListItem(LoginInformationMapper.java:96) com.atlassian.bamboo.migration.stream.LoginInformationMapper.afterImportListItem(LoginInformationMapper.java:20) com.atlassian.bamboo.migration.BambooStAXListImportStrategy.importListItemXml(BambooStAXListImportStrategy.java:268) com.atlassian.bamboo.migration.BambooStAXListImportStrategy.access$100(BambooStAXListImportStrategy.java:16) com.atlassian.bamboo.migration.BambooStAXListImportStrategy$1.importListItems(BambooStAXListImportStrategy.java:36) com.atlassian.bamboo.migration.BambooStAXListImportStrategy.importListXml(BambooStAXListImportStrategy.java:234)",1 BAM-6757,"HG Changeset detection is totally wrong","The build https://bamboo-extranet.atlassian.com/browse/CRUCHG-BR22-3 triggered at the right time, but since https://bamboo-extranet.atlassian.com/browse/CRUCHG-BR22-2, there is only 1 change, but https://bamboo-extranet.atlassian.com/browse/CRUCHG-BR22-3/commit lists loads of changes, none of which were even on the 2.2 branch. The real diffs: {code} $ hg log -b 2.2 -r a780b00521e8e6464de1c3509f330b4c7d2ffedc:2a4ec7c3fc9db7a907bdf42601ab431615aeca48 changeset: 17456:a780b00521e8 branch: 2.2 parent: 17427:545beab760a6 user: Seb Ruiz date: Wed Jul 07 04:31:37 2010 +0000 files: src/java/com/cenqua/fisheye/web/Watch.java description: NONE: Fix NPE when comparing invalid watches changeset: 17628:2a4ec7c3fc9d branch: 2.2 tag: tip parent: 17456:a780b00521e8 user: Matthew Watson date: Tue Sep 07 17:05:13 2010 +1000 files: src/tests/com/cenqua/fisheye/license/LicenseTestStrings.java description: NONE: Upgrade license Keys for Tests {code} Note, the first is the commit from build 2, the second is the commit that triggered build 3. Note the builds trigger correctly only when changes are made for their branch, but the list of changes is almost always rubbish.",2 BAM-6765,"Inline Importer Causes Upgrade Tasks To Fail","When doing an import either via the setup wizard (or checking the checkbox to not restart bamboo from the admin section) the upgrades are run within the same thread as the action so therefore maintain the same session object (via the sessionInViewFilter thingy) for every upgrade task. This causes some nasty exceptions - the tasks assume they have a clean slate to work off. We need to make the upgrades run in a separate thread which does not have the overarching session available to it, and just make the action thread hang around waiting for the other thread to finish. I have attached an export which reproduces this problem. ",3 BAM-6785,"Can not delete image configuration if used in instance scheduling "," 2010-09-09 14:36:15,156 INFO [1921423913@qtp-1196121930-3] [LocalAgentManagerImpl] Attempting to remove build agent... 2010-09-09 14:36:15,182 WARN [1921423913@qtp-1196121930-3] [JDBCExceptionReporter] SQL Error: 0, SQLState: null 2010-09-09 14:36:15,182 ERROR [1921423913@qtp-1196121930-3] [JDBCExceptionReporter] Batch entry 0 delete from ELASTIC_IMAGE where ELASTIC_IMAGE_ID=131075 was aborted. Call getNextException to see the cause. 2010-09-09 14:36:15,182 WARN [1921423913@qtp-1196121930-3] [JDBCExceptionReporter] SQL Error: 0, SQLState: 23503 2010-09-09 14:36:15,182 ERROR [1921423913@qtp-1196121930-3] [JDBCExceptionReporter] ERROR: update or delete on table ""elastic_image"" violates foreign key constraint ""fk1c6b30e1581fb731"" on table ""elastic_schedule"" Detail: Key (elastic_image_id)=(131075) is still referenced from table ""elastic_schedule"". 2010-09-09 14:36:15,184 WARN [1921423913@qtp-1196121930-3] [JDBCExceptionReporter] SQL Error: 0, SQLState: null 2010-09-09 14:36:15,184 ERROR [1921423913@qtp-1196121930-3] [JDBCExceptionReporter] Batch entry 0 delete from ELASTIC_IMAGE where ELASTIC_IMAGE_ID=131075 was aborted. Call getNextException to see the cause. 2010-09-09 14:36:15,184 WARN [1921423913@qtp-1196121930-3] [JDBCExceptionReporter] SQL Error: 0, SQLState: 23503 2010-09-09 14:36:15,184 ERROR [1921423913@qtp-1196121930-3] [JDBCExceptionReporter] ERROR: update or delete on table ""elastic_image"" violates foreign key constraint ""fk1c6b30e1581fb731"" on table ""elastic_schedule"" Detail: Key (elastic_image_id)=(131075) is still referenced from table ""elastic_schedule"". 2010-09-09 14:36:15,184 ERROR [1921423913@qtp-1196121930-3] [SessionImpl] Could not synchronize database state with session",2 BAM-6823,"You can edit the project name on the job level","Not sure if it was intentional but it just feel strange",1 BAM-6829,"""Move Plans"" should not show jobs","http://skitch.com/brydiemccoy/dsaqe/configure-new-plan-details-atlassian-bambooooo Currently it lists all subplans on this page which is kind of stupid. The reason I haven't just ""fixed it"" is the interfaces on the DefaultProject object are outdated and need review. I dont want to add to the mess.",1 BAM-6832,"Upgrade aspectj to 1.6.9","http://mirrors.ibiblio.org/pub/mirrors/maven2/org/aspectj/aspectjrt/1.6.9/ Will solve https://bugs.eclipse.org/bugs/show_bug.cgi?id=269867. We'll need to update the groupId and add a block for the old groupId",2 BAM-6855,"Make sure that hg errors are properly added to the plan log","Currently we just throw RepositoryExceptions. Some errors - esp 'authentication failure' - should be explicitly added to the log so the user sees it. Blocker - if it happens in change detection phase, the log is not visible at the moment - difficult to test.",1 BAM-6872,"If AJS.conglomerate.cookie gets too big, web servers will report HTTP error 413","As an Administrator edits the plans, the *AJS.conglomerate.cookie* stores the UI history. However, Bamboo is not resetting the cookie value often enough to avoid it getting too big. This causes the web/app server to report HTTP error 413. ",2 BAM-6901,"Bamboo upgrade process fails on Windows","I had Bamboo 2.6.1 installed on my Windows 7 machine. I tried to install 2.6.2 without manually uninstalling the previous version. The installer found previous version, uninstalled it and installed new one. When I tried to run the Bamboo it failed saying that duplicated plugins were found. Indeed in the WEB-INF/lib directory there were plenty of duplicated jars but in different versions.",2 BAM-6909,"Wallboard Re-Design","The wallboard looks dated and not inline with our JIRA wallboards that we've presented at Atlassian Summit. ",1 BAM-6912,"Changing the builder type during cloning adds multiple builder requirements","When cloning a plan: if you change the builder type from Ant to Maven then Bamboo adds Ant and Maven as a requirement to the plan. Ideally, Bamboo should detect that the builder has changed and set the requirement to Maven from ant in the next screen.",2 BAM-6934,"Discrepancy in time estimations in a single-job chain between job and chain",NULL,2 BAM-6957,"Job/Chain Name duplication throws exception","My Project Name: AAAA My Chain Name: AAAA In one instance I tried to update an existing job to have the name AAAA. I got a validation error. I should theoretically be able to name my plan like this shouldn't I? During an attempt to reproduce the above behaviour, I tried to create a _new_ Job with the name AAAA. This submitted successfully. However now I get a whole bunch of other exceptions: {code} 2010-09-30 10:17:41,755 ERROR [1638360365@qtp-1196121930-6] [FiveOhOh] 500 Exception was thrown. org.springframework.dao.IncorrectResultSizeDataAccessException: query did not return a unique result: 2 org.springframework.orm.hibernate.SessionFactoryUtils.convertHibernateAccessException(SessionFactoryUtils.java:590) org.springframework.orm.hibernate.HibernateAccessor.convertHibernateAccessException(HibernateAccessor.java:353) org.springframework.orm.hibernate.HibernateTemplate.execute(HibernateTemplate.java:375) org.springframework.orm.hibernate.HibernateTemplate.execute(HibernateTemplate.java:337) com.atlassian.bamboo.plan.PlanHibernateDao.getPlanByName(PlanHibernateDao.java:83) sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) java.lang.reflect.Method.invoke(Method.java:597) {code} The getPlanByName method only looks at the project name and plan name in the build table. And hence will return both the chain and the job. So we need to either a) prevent people from creating jobs with the same name as a plan (though this behaves the opposite to how we handle the keys) b) fix the getPlanByName method, and any other use cases which die because of the duplication.",2 BAM-6969,"VariableSubstitutionBean cannot be used in V2 plugins","Any plugin that requires variable substitution via the VariableSubstitutionBean has to be a V1 plugin because the VSB is not exposed to V2 plugins. This was discovered during: https://studio.plugins.atlassian.com/browse/BPBC-41 Emails were exchanged regarding this as well: Mark Chai: ------------- The VSB is a prototype scoped bean so it can't be made available in OSGI. I'm not 100% sure if it _has_ to be a prototype (it does access the AdminConfigManager but doesn't seem to cache anything). If you have Bamboo building from source, you could try to switch the prototype flag off on the application context definition and plugin:available=""true"" and see if that works. Jonathan Doklovic (response): ----------------------------- I just updated the applicationContextCommon.xml inside of bamboo-agent-core within the container that amps uses. Removed the prototype scope and added plugins:available=""true"". This has no effect. When I run my plugin, the VSB still does not get injected into my action. :( http://www.sadtrombone.com/ ",3 BAM-7010,"Allow import of Plans from Maven poms stored in Mercurial repositories","Currently Bamboo allows out of the box import of pom.xml from CVS/Perforce/Subversion. With Mercurial support in place, Mercurial should be added to the list of repositories available for plan import.",5 BAM-7024,"Apparent deadlock in Axis","We had one of our builds hang, at a point where it was running a functional test against Bamboo. It looks like there might be a deadlock within Bamboo, but it's not totally obvious to me what's going on. I'm attaching the log with a thread dump at the end.",2 BAM-7048,"Reports for tests don't have any data points","Issue reported in https://support.atlassian.com/browse/BSP-3259",8 BAM-7058,"Hide file filter pattern options when configuraing job repository","These options are only used for change detection. So should not be configurable at the job level.",1 BAM-7059,"Quiet Period and Max Retries Should be hidden for jobs","This only relates to change detection ",1 BAM-7081,"Invalid Build log artifact URL in REST reponse","/rest/api/latest/build/?expand=artifacts.artifact returns an URL to build log, which does not exist (response is a chain)",1 BAM-7200,"Add admin action that will blow away all Mercurial cache directories.","[https://atlaseye.atlassian.com/cru/CR-BAM-1971#c32842] currently if I change the repo URL, then the cache is effectively ""orphaned"" and can't be cleared through plan view. ",5 BAM-7218,"Maven 3.0 or 3.x Builder","Hi all, It would be nice if I would have the possibility to add a Maven 3.x (or Maven 3.0) Builder. When I want to build with Maven 3 I have to choose Maven 2.x or Maven Builder. That's not nice ;( Regards, Florian",1 BAM-7228,"Stop build on dashboard when multiple builds redirects to plan page","Stopping a single build from the dashboard happens async. You stay on the dashboard. If there are multiple builds running you get the dialog. After confirming deletion you get redirected to the plan page. You should return to the dashboard instead",1 BAM-7231,"Errors not showing up on result summary page"," The job-result-error is showing on the job and chain summary page, but not on the chain result or job result page. Both results are ""Not Built""",1 BAM-7236,"Bulk Actions wizard has sorting issues","In the second/third/fourth step of bulk action, the chains are grouped at the top, and jobs grouped at the bottom. The jobs should be grouped underneath their respective chain.",1 BAM-7237,"Bulk Action change svn info should indicate if a job is inheriting its parents","You should still be able to bulk edit jobs to something new. But, in the preview list showing existing config, it should show either just (e.g.) ""Inheriting information from parent"" or still show the url but e.g. in brackets next to it show (inherited).",1 BAM-7260,"Mercurial is instantly triggering another build right after the initial build.","Creating new plan (enabled) triggers initial build. Mercurial plugin will instantly trigger another build (if configured to poll repository for the changes) - because it thinks last revision was 'null'. How to reproduce: 1) just create a plan using valid Mercurial repository, enable it (during creation), set 'poll repository for changes' for example to 10s 2) wait till first build (initial) finishes 3a) instantly second build will be triggered (showing all the changesets from the repository root) 3b) where I expected the build won't be triggered until new commits will be pushed to that repository",1 BAM-7275,"Cannot load x64 wrapper dll on Windows XP x64",NULL,1 BAM-7291,"Web repository isn't validating when configuring Plan.","Giles Gaskell (at Bamboo DEV2 chatroom, 11/08/2010): {quote} Btw - just out of interest for the Docs - when configuring the 'Common repository configuration' options of an existing Plan or Job, I am able to select the option 'Mercurial Web Repository' in the 'Web Repository' field for Plan. However, this option is not available when configuring the equivalent field for a Job. Is there a reason for that? Or is this a bug? Does anyone have an answer as to why the 'Mercurial Web Repository' option is not available when configuring a Job? (whereas it is for a Plan) Aha - I see what the issue is - when you're configuring a Plan, the 'Web Repository' field does not appear to be validating your selected repository and the 'Mercurial Web Repository' option appears no matter what repository type you select. {quote} Chai: {quote} Ah okay. That sounds like a bug {quote} Giles: {quote} Yeah - I thought so - fyi - the Job configuration page appears to be working okay in this regard. {quote} ----- Worth investigating. Maybe it's a Mercurial Web Repository issue itself. Maybe not.",1 BAM-7299,"${system.PATH} or ${system.ALLUSERSPROFILE} variables are not being replaced","* I have a builder argument that uses ${system.ALLUSERSPROFILE} but now it is not being replaced by the %ALLUSERSPROFILE% environment variable * I also add extra paths to the default PATH environment variable using the following {noformat} PATH=${system.PATH};tools/bin {noformat} but the ${system.PATH} variable is also not being replaced",2 BAM-7316,"Mail Server can't get the SMTP or JNDI values if the server is Tested before Saving it","If the Mail Server is tested (""Test"" button is clicked) before being saved (""Save"" button is clicked), the following stack is reported: {noformat} Version: 2.7 Build: 2100 Build Date: 05 Nov 2010 system.error.request.information: Request URL: http://domain:8085/admin/saveMailServer.action Scheme: http Server: domain Port: 8085 URI: /admin/saveMailServer.action Context Path: Servlet Path: /admin/saveMailServer.action Path Info: Query String: Stack Trace: java.lang.NullPointerException: Name is null at java.lang.Enum.valueOf(Unknown Source) at com.atlassian.bamboo.ww2.actions.admin.mail.ConfigureMailServer$MailSetting.valueOf(ConfigureMailServer.java:25) at com.atlassian.bamboo.ww2.actions.admin.mail.ConfigureMailServer.validate(ConfigureMailServer.java:88) at com.opensymphony.xwork.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:154) at com.atlassian.bamboo.ww2.interceptors.BambooWorkflowInterceptor.doIntercept(BambooWorkflowInterceptor.java:33) at com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.opensymphony.xwork.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:116) at com.atlassian.bamboo.ww2.interceptors.BambooValidationInterceptor.doIntercept(BambooValidationInterceptor.java:33) at com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.atlassian.bamboo.ww2.interceptors.JSONValidationInterceptor.intercept(JSONValidationInterceptor.java:78) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.opensymphony.webwork.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:174) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.opensymphony.xwork.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:151) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.atlassian.bamboo.ww2.interceptors.GlobalAdminInterceptor.intercept(GlobalAdminInterceptor.java:21) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.atlassian.bamboo.security.acegi.intercept.web.WebworkSecurityInterceptor.intercept(WebworkSecurityInterceptor.java:55) at com.atlassian.bamboo.security.acegi.intercept.web.WebworkSecurityInterceptorProxy.intercept(WebworkSecurityInterceptorProxy.java:30) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.atlassian.bamboo.ww2.interceptors.PaginationAwareInterceptor.intercept(PaginationAwareInterceptor.java:81) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.atlassian.bamboo.ww2.interceptors.StatisticsAwareInterceptor.intercept(StatisticsAwareInterceptor.java:42) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.atlassian.bamboo.ww2.interceptors.ResultsListAwareInterceptor.intercept(ResultsListAwareInterceptor.java:45) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.atlassian.bamboo.ww2.interceptors.BuildResultsSummaryAwareInteceptor.intercept(BuildResultsSummaryAwareInteceptor.java:66) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.atlassian.bamboo.ww2.interceptors.ResultsSummaryAwareInteceptor.intercept(ResultsSummaryAwareInteceptor.java:67) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.atlassian.bamboo.ww2.interceptors.ChainAwareInterceptor.intercept(ChainAwareInterceptor.java:110) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.atlassian.bamboo.ww2.interceptors.PlanAwareInterceptor.intercept(PlanAwareInterceptor.java:71) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.opensymphony.xwork.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:186) at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190) at com.opensymphony.xwork.DefaultActionProxy.execute(DefaultActionProxy.java:116) at com.opensymphony.webwork.dispatcher.DispatcherUtils.serviceAction(DispatcherUtils.java:274) at com.opensymphony.webwork.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:202) at com.atlassian.bamboo.ww2.BambooFilterDispatcher.doFilter(BambooFilterDispatcher.java:30) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46) at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:55) at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:41) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) at com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:118) at com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:52) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) at com.opensymphony.webwork.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:88) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46) at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:55) at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:41) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) at com.atlassian.bamboo.filter.AccessLogFilter.doFilter(AccessLogFilter.java:66) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265) at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125) at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275) at com.atlassian.bamboo.filter.SeraphLoginFilter.doFilter(SeraphLoginFilter.java:66) at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275) at org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149) at org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98) at com.atlassian.bamboo.filter.BambooAcegiProxyFilter.doFilter(BambooAcegiProxyFilter.java:25) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) at com.atlassian.bamboo.filter.LicenseFilter.doFilter(LicenseFilter.java:73) at com.atlassian.core.filters.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:31) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) at com.atlassian.johnson.filters.AbstractJohnsonFilter.doFilter(AbstractJohnsonFilter.java:72) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) at com.atlassian.seraph.filter.SecurityFilter.doFilter(SecurityFilter.java:219) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) at com.atlassian.seraph.filter.BaseLoginFilter.doFilter(BaseLoginFilter.java:140) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46) at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter$1.doFilter(DelegatingPluginFilter.java:66) at com.atlassian.oauth.serviceprovider.internal.servlet.OAuthFilter.doFilter(OAuthFilter.java:69) at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.doFilter(DelegatingPluginFilter.java:74) at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:42) at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:55) at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:41) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) at org.springframework.orm.hibernate.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:170) at com.atlassian.bamboo.persistence.BambooSessionInViewFilter.doFilterInternal(BambooSessionInViewFilter.java:31) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) at com.planetj.servlet.filter.compression.CompressingFilter.handleDoFilter(CompressingFilter.java:203) at com.planetj.servlet.filter.compression.CompressingFilter.doFilter(CompressingFilter.java:193) at com.atlassian.bamboo.filter.CompressingFilter.doFilter(CompressingFilter.java:69) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) at com.atlassian.bamboo.filter.RequestCacheThreadLocalFilter.doFilter(RequestCacheThreadLocalFilter.java:31) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46) at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:55) at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:41) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139) at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:378) at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181) at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765) at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:417) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) at org.mortbay.jetty.Server.handle(Server.java:324) at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:535) at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:865) at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:539) at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212) at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) at org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:228) at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:520) {noformat}",1 BAM-7360,"Git Repo should work with gitosis","So bamboo user can at plan configuration pass an ssh keyfile with passphrase and JGit will talk to remote repository correctly.",2 BAM-7365,"Remove delayed changeset detection from Mercurial","If I use mercurial repository and choose ""delay changeste detection' option then I will have ""Unknown Changes"" listed under ""changes"" tab. However, after complete build those placeholder changes should be swapped with real changesets. This is not occuring. {color:red}edit: remove this functionality from Mercurial Repository. See comments below{color}",1 BAM-7366,"ManualBuildTriggerReason.getUserName() returns null.","I've been trying out the Artifactory Bamboo plugin. The plugin currently fails with a null pointer exception caused by ManualBuildTriggerReason.getUserName() returning null. I've filed a bug report and suggested workaround at JFrog, but I think the root cause is probably a Bamboo bug. https://issues.jfrog.org/jira/browse/BAP-26 http://docs.atlassian.com/bamboo/2.7/com/atlassian/bamboo/v2/build/trigger/ManualBuildTriggerReason.html#getUserName()",2 BAM-7368,"Confirm/Fix Plan Navigation For Configuration","Where should you get taken when moving between plan and job within the configuration pages. Currently it works like this 1) if there is an equivalent tab take you to that tab 2) when moving to the chain (with no equiv) it takes you to the stages tab 3) when moving to the job (with no equiv) it take you to whatever tab you have saved in the cookie Alternatives * Replace #3 always taking you to the builder tab of the job. * Replace #2 and #3 to take you to the plan/job details page. * Replace #2 to also take you to the cookied page. * Replace #1 and #2 to always take you to the cookied page.",2 BAM-7404,"Ensure that tabs for Plans and Jobs are consistent","In the Result Summary section we should ensure that the tabs that are common between for Plans and Jobs are in the same order. In the Configuration, we should ensure that the tabs that are common between Plans and Jobs have the same name (E.g. Source Repository) ",2 BAM-7408,"Decimal-Point missing in Clover integration","When showing the ""Clover code coverage summary"" Page the coverage is multiplied by 10 (ok, may be a feature :-) ). See attached Screenshot 1. When opening the clover artifact the coverage is ok (29.1 % to 291%). ",1 BAM-7410,"Mercurial quiet period","Mercurial is missing quiet period support (BAM-1178).",2 BAM-7413,"bamboo sent emails containing unreadable info","I am a east-asian user, and i setup my bamboo server to send email after every completed build. however, there's unreadable part in the email, like the following: ***** [INFO] Compilation failure \...\iskControlFacadeImpl.java:[50,38] ???????? ???? ???? findNaireByCustomerType(java.lang.String) ***** I googled for this issue, and I get the following info: ***** it's a bamboo's bug. the utf-8 charset parameter's missing in htmlpart.setContent method in com.atlassian.bamboo.notification.transports/MultipartEmailTransport.class: htmlContent = notification.getHtmlEmailContent(); if(StringUtils.isNotBlank(htmlContent)) {    BodyPart htmlPart = new MimeBodyPart();      htmlPart.setContent(htmlContent, ""text/html;charset=utf-8"");      mp.addBodyPart(htmlPart); } ***** is that true? how can i solve the problem? THANKS!",2 BAM-7432,"Overwrite Existing Data option is not effective ","The *Overwrite Existing Data* from the DB Setup installation step is not being completely effective. Data is not deleted and after the Admin User Creation step, the installation process fails when it tries to create DB entries that already exist. It should also be tested with other DBs (not only MySQL).",2 BAM-7436,"Git Repository should properly detect code has changed on arbitrary branch","I was testing Git on 'master' branch. I should test if it work on other branches as well. Probably this works already. However we need to write up some tests.",1 BAM-7437,"Git repo should use shallow clones instead of full clones.","Currently we use full clones during: * collecting changes, on bamboo server * code retrieval, on agents, during performing build In both cases we don't need the whole history, so if it is possible we should do shallow clones. Shallow clones are not implemented in JGit yet. Also - both server and agents should be able to fetch afterwards properly. Corner test case: * detecting new rev A -> add to queue * detecting new rev B (grandchild of A) -> add to queue (concurrent builds are on) * agent -> takes rev B, does shallow clone on it (so it won't have rev A) * agent -> takes rev A, does fetch - in such case agent should somehow obtain rev A",5 BAM-7441,"Initial Git build should ignore history in 'changes' tab.","Instead of showing 10 753 changeset. See: [http://groups.google.com/group/bamboogitplugin/browse_thread/thread/532384d62f62a930#] Git Repository should behave as other (CVS/SVN) repositories with regard to first build.",1 BAM-7442,"Git repository should recover from failures during checkout.","Like in other repositories - if something fail during code checkout/fetch then Git repository should try to recover - in worst case remove working directory and clone remote repository from scratch. P.S. watch out for lock files in .git directory (they lock 'checkout' operation) - teamcity had problem with that too AFAIK.",1 BAM-7448,"Git Repository should work on remote agents","ensure it does! * remote agent * elastic one",1 BAM-7452,"Investigate whether shallow clones (Git Repo) are fast enough","Before supporting shallow clones we would like to confirm that shallow clones are enough for us. So that we do not find out down the track that they are actually slow and we need caches on agents nevertheless.",1 BAM-7454,"Importing Git Repository from maven","like in other SCM's, like HgRepository",2 BAM-7469,"Plan Navigator - general progress bar improvements","I believe that plan was to not show the progress bar for the currently selected job. If we do want to show it we need to make sure the text is readable (currently text is white on light blue background)",1 BAM-7471,"Ignore compatibility mode not working in IE8 (breaking breadcrumbs)","The new character used for breadcrumbs seems to show twice in IE8. ",2 BAM-7476,"Change dashboard plan result keys to #buildNumber",NULL,1 BAM-7483,"Test basic Maven artifact passing workflow works with remote agents",NULL,2 BAM-7484,"Test basic Maven artifact passing workflow works with elastic agents","We need to change the Command decorator to use the tunnel if available.",2 BAM-7485,"Implement disk space management for maven artifact passing",https://extranet.atlassian.com/display/BAMBOO/Maven+Artifact+Passing#MavenArtifactPassing-DiskspaceManagement,3 BAM-7486,"implement artifact sharing for maven ","https://extranet.atlassian.com/display/BAMBOO/Maven+Artifact+Passing#MavenArtifactPassing-ArtifactSharing Only implementing simple groupid/artifactid selection and not choosing from a list of produced artifacts (latter requires dependency tracing).",5 BAM-7500,"errors while checkout/clone should fail the build in Git Plugin","http://tardigrade.sydney.atlassian.com:8085/bamboo/browse/GP-IDEAMASTER-JOB1-1 the error during code checkout should fail the build I reckon. Investigate what is the problem.",1 BAM-7501,"Drop down menu is 'transparent'",NULL,1 BAM-7503,"BuildManager still used in core Bamboo functionality","I've found some error messages in Tardigrade logs about build failures of builds that seemed to be completed just fine. Following that, I've found that BuildManager is still used in some places in Bamboo, causing problems with some of the functionality. For example, BuildCompletedEventListener operates on Buildables but uses BuildManager for build key validation. This which never works, since valid job keys are not valid build keys - effectively disabling the BuildCompleted plugins. There are not that many places that use BuildManager, about half of them are old UpgradeTasks. This should be fixed, and potentially backported to 2.7 too (since it breaks plugins in a way that cannot be fixed by developers). ",2 BAM-7507,"Create Plan Level Result Log Tab","To make it easier to navigate to the logs, we should offer a Plan level log tab which provides a summary table with links to the individual Job log pages as well as a link to download the job log files from the Plan level log page. ",2 BAM-7517,"Handle subscriptions for Job move across stages",NULL,2 BAM-7531,"Remove pre-2.0 upgrade tasks and provide protection against upgrade from pre 2.0 version","Krystian: In the history of Bamboo we had several versions which were required to be used to upgrade to the newer version. Ie. to upgrade from Bamboo 1.0 to Bamboo 2.1 you need to execute upgrades to 1.1.2, 1.2 and 2.0. The latest of this ""milestone-upgrade"" versions is 2.0. This is why I propose to drop all the upgrade tasks which were introduced by pre-2.0 versions. The main benefit would be dropping the last usages of old and usually deprecated APIs According to https://extranet.atlassian.com/pages/viewpage.action?pageId=636158922 it means all pre 801 upgrade tasks (18 of them) Przemek: + make it impossible to use new Bamboo version to upgrade from build number of pre-2.0.x version. That check should have been included in 2.0.x anyway... Marek: +1, those upgrade tasks are in sources too long. For historical stuff we got subversion Anton: Yes, if we do this, Bamboo *must* lockup upon starting if it detects that it is being brought up against a version which is before 2.0. We should also stop the user importing XML backups from pre 2.0 versions. In all these cases the user should be given a very clear error message and no data should be changed. Can I ask why do you bring this up now? What caused you to do this? If we do this, will this simplify some other work we need to do for 3.0? How long will the work of stopping a pre 2.0 upgrade/import take? Krystian: Adding protection against upgrade/import from pre-2.0 version is rather simple and would require ~4h of work (including testing). I'm bringing this now cause last week Przemek has spotted a small bug which was caused by internal use of deprecated API (BuildManager). I thought that releasing 3.0 is a good moment to drop this (and maybe other) legacy APIs which were deprecated in 2.7 and previous versions. A lot of uses of deprecated API is buried in old upgrade tasks which led to idea I presented in my original email. This will probably not simplify other work for 3.0 but has a potential to help us find forgotten usages of legacy code that should have been updated some time ago.",1 BAM-7555,"Ensure we only show 100 changes in Git Repository and display skipped amount (for 3.0)","... and mention in the interface that only the first 100 are shown if there are more than 100 changes.",1 BAM-7593,"Ability to stop a queued job via action menu","For stop button for a job in the action menu only shows up when the job is actually running not while it is queued. It should show while its queued. The fix needs to ensure that the button doesn't show up when the job's stage hasn't been kicked off yet.",1 BAM-7599,"Fix Bulk Edit Administration Screen","The bulk edit screen is pretty broken right now. We will need to fix this up before we release 3.0. http://tardigrade.sydney.atlassian.com:8085/bamboo/admin/chooseBulkAction.action",3 BAM-7602,"Support for include/exclude files in Git Repository","AbstactRepository implements IncludeExcludeAwareRepository interface so the Git Plugin should handle that.",1 BAM-7619,"Import/Export of Audit Logs",NULL,2 BAM-7626,"Support Bitbucket repositories","Currently we support any Mercurial Repository, but it would be great if we could specifically support BitBucket and make it easier to setup new plans using the BB API. The underlying infrastructure would be the same as for Mercurial. However, the setup would provide a BitBucket option in addition or as part of the Mercurial Repository and allow for retrieving the users repositories and branches. h4. Specification https://extranet.atlassian.com/display/BAMBOO/Bitbucket+Support+Spec ",5 BAM-7628,"Remove Build Queue Report ","Since it's not working right now (BAM-7557), we should remove the report from the UI. Once we've fixed it, we will add it again. ",1 BAM-7630,"Stage Configuration UX Update","The Stages configuration requires some UX changes to make it easier to use: * *Make the Job name link to the Edit Job Configuration* * Remove the Configuration Dropdown (and link) * Add separate ""Disable"" and ""Delete"" links instead of the dropdown * Replace ""Add Job"" with a button and move to the right",2 BAM-7631,"Fix Test Case Overview Page UI","We need to clean this page up... at least a little bit: * Remove the big colour box * Use the same key value layout we use on the summary * Move the stats below the table * Make the top right stats look the same as the Plan summary stats (once we have them) http://tardigrade.sydney.atlassian.com:8085/bamboo/browse/BAM-FC-DEP/test/case/148635675 ",2 BAM-7632,"Change hg clone into hg init/hg pull (to get rid of credentials in .hgrc)","[forums|http://forums.atlassian.com/message.jspa?messageID=257362974] bq. I went through the cache directories in the server and noticed also slight security issue. Bamboo seems to register the repository path with username/password into the hgrc file in plain text (in the url) in the cache directory and the file permissions are such that it is readable by all. Not that the source code and builds itself might have something sensitive, but atleast I find it good to know that the username/password is not secure within the file system. ",1 BAM-7633,"Remove 'clean cache directory' checkbox from Mercurial configuration screen","[forums|http://forums.atlassian.com/thread.jspa?messageID=257363207�] I think we should remove that checkbox as it is hazardous to use. Details in mail(anton,jens,sginter,pstefaniak).",1 BAM-7635,"Share Mercurial cache among the server and local agents (if concurrent builds are on)","Like in Summary - if concurrent builds are on then each local agent will grab its own copy of cache during code retrieval. And hopefully it doesn't need to, instead it should use bamboo server's cache, like in 'no concurrent build' mode.",1 BAM-7655,"Git Plugin should detect if remote repository support 'shallow' protocol",NULL,1 BAM-7656,"Git Repository shouldn't display user/pass + sshKey/pass together","as it mislead user thinking user/pass may impact ssh connection. Ideally there should be combobox ""authenticationType"" with options ""none;http auth;sshKeyfile"" which would display exclusively either user/pass, either ssh+passphrase, or nothing.",1 BAM-7658,"Sharing an artifact via quick link doesn't work when artifact name is used by other Jobs","This, of course, is correct behaviour. However, it currently doesn't provide any feedback. The link simply doesn't work. Instead, can we display a popup with the following message: ""To share an Artifact, it's name must be unique within the Plan. Please rename the Artifact to share it"" Then allow the user to edit the Artifacts name with a textbox. (just like in edit without all the other fields) The buttons at the bottom should say: Save and Cancel ",2 BAM-7660,"Ensure Artifacts upgrade task gives decent errors and can be rerun","This may already be catered for but: Its possible that moving artifact files will run out of disk space in the middle. We should make sure that the upgrade task dies elegantly and its possible to recover. e.g. (just re-run the upgrade task and it picks up where it left off.)",1 BAM-7673,"Git Repository doesn't log messages on remote agents","when run on remote agent no log from GitRepository are shown. Probably textProvider is not properly initialized/loaded - as it was in MercurialRepository.",1 BAM-7674,"Git repo shallow clones should work via http(s)","Build TEST-TESTHTTPS-JOB1-18 started building on agent Default Agent Updating source code to revision: 05b86d941d9f61f9236d7743c13821d6fdc4d416 Fetching branch 'master'. Will try to do a shallow fetch. Git: Requesting shallow fetch {color:red}Cannot fetch 'https://cixot@github.com/cixot/test.git', branch 'master' to source directory '/home/pstefaniak/bamboo/atlassian-bamboo-2.7.3-standalone/home/xml-data/build-dir/131073/TEST-TESTHTTPS-JOB1'. https://cixot@github.com/cixot/test.git: Starting read stage without written request data pending is not supported{color} {code} com.atlassian.bamboo.repository.RepositoryException: Cannot fetch 'https://cixot@github.com/cixot/test.git', branch 'master' to source directory '/home/pstefaniak/bamboo/atlassian-bamboo-2.7.3-standalone/home/xml-data/build-dir/_git-repositories-cache/0x-645f5f1-1/repository'. https://cixot@github.com/cixot/test.git: Starting read stage without written request data pending is not supported com.atlassian.bamboo.plugins.git.GitOperationHelper.fetch(GitOperationHelper.java:193) com.atlassian.bamboo.plugins.git.GitOperationHelper.fetch(GitOperationHelper.java:157) ... Caused by: org.eclipse.jgit.errors.TransportException: https://cixot@github.com/cixot/test.git: Starting read stage without written request data pending is not supported org.eclipse.jgit.transport.BasePackFetchConnection.doFetch(BasePackFetchConnection.java:292) org.eclipse.jgit.transport.TransportHttp$SmartHttpFetchConnection.doFetch(TransportHttp.java:613) org.eclipse.jgit.transport.BasePackFetchConnection.fetch(BasePackFetchConnection.java:230) org.eclipse.jgit.transport.FetchProcess.fetchObjects(FetchProcess.java:217) org.eclipse.jgit.transport.FetchProcess.executeImp(FetchProcess.java:152) org.eclipse.jgit.transport.FetchProcess.execute(FetchProcess.java:114) org.eclipse.jgit.transport.Transport.fetch(Transport.java:904) com.atlassian.bamboo.plugins.git.GitOperationHelper.fetch(GitOperationHelper.java:188) ... 23 more Caused by: org.eclipse.jgit.errors.TransportException: https://cixot@github.com/cixot/test.git: Starting read stage without written request data pending is not supported org.eclipse.jgit.transport.TransportHttp$Service.execute(TransportHttp.java:698) org.eclipse.jgit.transport.TransportHttp$Service$HttpExecuteStream.read(TransportHttp.java:772) org.eclipse.jgit.util.io.UnionInputStream.read(UnionInputStream.java:144) java.io.FilterInputStream.read(FilterInputStream.java:133) org.eclipse.jgit.util.io.TimeoutInputStream.read(TimeoutInputStream.java:111) org.eclipse.jgit.util.IO.readFully(IO.java:175) org.eclipse.jgit.transport.PacketLineIn.readLength(PacketLineIn.java:141) org.eclipse.jgit.transport.PacketLineIn.readString(PacketLineIn.java:108) org.eclipse.jgit.transport.PacketLineIn.readACK(PacketLineIn.java:86) org.eclipse.jgit.transport.BasePackFetchConnection.negotiate(BasePackFetchConnection.java:575) org.eclipse.jgit.transport.BasePackFetchConnection.doFetch(BasePackFetchConnection.java:278) ... 30 more {code} ",1 BAM-7676,"Git Repository server cache should be thread-safe (during fetches)","h3. System Error Details Build test - testmasterclean : Unable to detect changes (com.atlassian.bamboo.repository.RepositoryException : Cannot fetch 'git://github.com/cixot/test.git', branch 'master' to source directory '/home/pstefaniak/bamboo/atlassian-bamboo-2.7.3-standalone/home/xml-data/build-dir/_git-repositories-cache/0x-7300b201-1/repository'. Cannot move pack to /home/pstefaniak/bamboo/atlassian-bamboo-2.7.3-standalone/home/xml-data/build-dir/_git-repositories-cache/0x-7300b201-1/repository/.git/objects/pack/pack-9debbf5763a2286524c616934e72bf0cb8b71dba.pack) Occurred: 05 Jan 2011, 5:12:03 PM com.atlassian.bamboo.repository.RepositoryException: Cannot fetch 'git://github.com/cixot/test.git', branch 'master' to source directory '/home/pstefaniak/bamboo/atlassian-bamboo-2.7.3-standalone/home/xml-data/build-dir/_git-repositories-cache/0x-7300b201-1/repository'. Cannot move pack to /home/pstefaniak/bamboo/atlassian-bamboo-2.7.3-standalone/home/xml-data/build-dir/_git-repositories-cache/0x-7300b201-1/repository/.git/objects/pack/pack-9debbf5763a2286524c616934e72bf0cb8b71dba.pack {code} com.atlassian.bamboo.plugins.git.GitOperationHelper.fetch(GitOperationHelper.java:193) com.atlassian.bamboo.plugins.git.GitOperationHelper.fetch(GitOperationHelper.java:157) com.atlassian.bamboo.plugins.git.GitRepository.collectChangesSinceLastBuild(GitRepository.java:154) com.atlassian.bamboo.v2.trigger.DefaultChangeDetectionManager.collectChangesSinceLastBuild(DefaultChangeDetectionManager.java:92) com.atlassian.bamboo.v2.trigger.ChangeDetectionListenerAction.process(ChangeDetectionListenerAction.java:75) com.atlassian.bamboo.chains.ChainExecutionManagerImpl.createChainState(ChainExecutionManagerImpl.java:164) com.atlassian.bamboo.chains.ChainExecutionManagerImpl.start(ChainExecutionManagerImpl.java:107) sun.reflect.GeneratedMethodAccessor178.invoke(Unknown Source) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) java.lang.reflect.Method.invoke(Method.java:616) org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:304) org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:198) $Proxy41.start(Unknown Source) com.atlassian.bamboo.plan.PlanExecutionManagerImpl.startWithLockTaken(PlanExecutionManagerImpl.java:174) com.atlassian.bamboo.plan.PlanExecutionManagerImpl.access$100(PlanExecutionManagerImpl.java:39) com.atlassian.bamboo.plan.PlanExecutionManagerImpl$2.call(PlanExecutionManagerImpl.java:155) com.atlassian.bamboo.plan.PlanExecutionManagerImpl.doWithProcessLock(PlanExecutionManagerImpl.java:306) com.atlassian.bamboo.plan.PlanExecutionManagerImpl.start(PlanExecutionManagerImpl.java:148) com.atlassian.bamboo.v2.trigger.ChangeDetectionListener.handleEvent(ChangeDetectionListener.java:50) com.atlassian.bamboo.event.EventListenerRunnable.run(EventListenerRunnable.java:22) java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) com.atlassian.bamboo.build.pipeline.concurrent.NamedThreadFactory$2.run(NamedThreadFactory.java:50) java.lang.Thread.run(Thread.java:636) Caused by: org.eclipse.jgit.errors.TransportException: Cannot move pack to /home/pstefaniak/bamboo/atlassian-bamboo-2.7.3-standalone/home/xml-data/build-dir/_git-repositories-cache/0x-7300b201-1/repository/.git/objects/pack/pack-9debbf5763a2286524c616934e72bf0cb8b71dba.pack org.eclipse.jgit.transport.BasePackFetchConnection.doFetch(BasePackFetchConnection.java:292) org.eclipse.jgit.transport.BasePackFetchConnection.fetch(BasePackFetchConnection.java:230) org.eclipse.jgit.transport.FetchProcess.fetchObjects(FetchProcess.java:217) org.eclipse.jgit.transport.FetchProcess.executeImp(FetchProcess.java:152) org.eclipse.jgit.transport.FetchProcess.execute(FetchProcess.java:114) org.eclipse.jgit.transport.Transport.fetch(Transport.java:904) com.atlassian.bamboo.plugins.git.GitOperationHelper.fetch(GitOperationHelper.java:188) ... 23 more Caused by: java.io.IOException: Cannot move pack to /home/pstefaniak/bamboo/atlassian-bamboo-2.7.3-standalone/home/xml-data/build-dir/_git-repositories-cache/0x-7300b201-1/repository/.git/objects/pack/pack-9debbf5763a2286524c616934e72bf0cb8b71dba.pack org.eclipse.jgit.transport.IndexPack.renameAndOpenPack(IndexPack.java:1163) org.eclipse.jgit.transport.BasePackFetchConnection.receivePack(BasePackFetchConnection.java:674) org.eclipse.jgit.transport.BasePackFetchConnection.doFetch(BasePackFetchConnection.java:285) ... 29 more {code} ---- h3. System Error Details Build test - testmaster : Unable to detect changes (com.atlassian.bamboo.repository.RepositoryException : Cannot fetch 'git://github.com/cixot/test.git', branch 'master' to source directory '/home/pstefaniak/bamboo/atlassian-bamboo-2.7.3-standalone/home/xml-data/build-dir/_git-repositories-cache/0x-7300b201-1/repository'. Unknown repository format ""null""; expected ""0"".) Occurred: 05 Jan 2011, 5:12:03 PM com.atlassian.bamboo.repository.RepositoryException: Cannot fetch 'git://github.com/cixot/test.git', branch 'master' to source directory '/home/pstefaniak/bamboo/atlassian-bamboo-2.7.3-standalone/home/xml-data/build-dir/_git-repositories-cache/0x-7300b201-1/repository'. Unknown repository format ""null""; expected ""0"". {code} com.atlassian.bamboo.plugins.git.GitOperationHelper.fetch(GitOperationHelper.java:193) com.atlassian.bamboo.plugins.git.GitOperationHelper.fetch(GitOperationHelper.java:157) com.atlassian.bamboo.plugins.git.GitRepository.collectChangesSinceLastBuild(GitRepository.java:154) com.atlassian.bamboo.v2.trigger.DefaultChangeDetectionManager.collectChangesSinceLastBuild(DefaultChangeDetectionManager.java:92) com.atlassian.bamboo.v2.trigger.ChangeDetectionListenerAction.process(ChangeDetectionListenerAction.java:75) com.atlassian.bamboo.chains.ChainExecutionManagerImpl.createChainState(ChainExecutionManagerImpl.java:164) com.atlassian.bamboo.chains.ChainExecutionManagerImpl.start(ChainExecutionManagerImpl.java:107) sun.reflect.GeneratedMethodAccessor178.invoke(Unknown Source) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) java.lang.reflect.Method.invoke(Method.java:616) org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:304) org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:198) $Proxy41.start(Unknown Source) com.atlassian.bamboo.plan.PlanExecutionManagerImpl.startWithLockTaken(PlanExecutionManagerImpl.java:174) com.atlassian.bamboo.plan.PlanExecutionManagerImpl.access$100(PlanExecutionManagerImpl.java:39) com.atlassian.bamboo.plan.PlanExecutionManagerImpl$2.call(PlanExecutionManagerImpl.java:155) com.atlassian.bamboo.plan.PlanExecutionManagerImpl.doWithProcessLock(PlanExecutionManagerImpl.java:306) com.atlassian.bamboo.plan.PlanExecutionManagerImpl.start(PlanExecutionManagerImpl.java:148) com.atlassian.bamboo.v2.trigger.ChangeDetectionListener.handleEvent(ChangeDetectionListener.java:50) com.atlassian.bamboo.event.EventListenerRunnable.run(EventListenerRunnable.java:22) java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) com.atlassian.bamboo.build.pipeline.concurrent.NamedThreadFactory$2.run(NamedThreadFactory.java:50) java.lang.Thread.run(Thread.java:636) Caused by: java.io.IOException: Unknown repository format ""null""; expected ""0"". org.eclipse.jgit.storage.file.FileRepository.(FileRepository.java:180) org.eclipse.jgit.storage.file.FileRepository.(FileRepository.java:126) com.atlassian.bamboo.plugins.git.GitOperationHelper.fetch(GitOperationHelper.java:169) ... 23 more {code} h3. System Error Details Build gp - linuskernelhttp3 - Default Job 4 : Error occurred while executing the build for GP-LINUSKERNELHTTP3-JOB1-4 (com.atlassian.bamboo.repository.RepositoryException : null Could not delete file /home/hgrepo/bamboo-agent-home/xml-data/build-dir/GP-LINUSKERNELHTTP3-JOB1/.git/objects/incoming_4443714216792466821.idx) Occurred: 05 Jan 2011, 5:29:19 PM Agent: lucyfer (2) com.atlassian.bamboo.repository.RepositoryException: null Could not delete file /home/hgrepo/bamboo-agent-home/xml-data/build-dir/GP-LINUSKERNELHTTP3-JOB1/.git/objects/incoming_4443714216792466821.idx {code} com.atlassian.bamboo.plugins.git.GitOperationHelper.fetch(GitOperationHelper.java:193) com.atlassian.bamboo.plugins.git.GitOperationHelper.fetchAndCheckout(GitOperationHelper.java:151) com.atlassian.bamboo.plugins.git.GitOperationHelper.fetchAndCheckout(GitOperationHelper.java:142) com.atlassian.bamboo.plugins.git.GitRepository.retrieveSourceCode(GitRepository.java:203) com.atlassian.bamboo.v2.build.task.CheckoutUpdateForBuild.doCall(CheckoutUpdateForBuild.java:136) com.atlassian.bamboo.v2.build.task.CheckoutUpdateForBuild.call(CheckoutUpdateForBuild.java:41) com.atlassian.bamboo.v2.build.agent.DefaultBuildAgent.build(DefaultBuildAgent.java:189) com.atlassian.bamboo.v2.build.agent.BuildAgentControllerImpl.waitAndPerformBuild(BuildAgentControllerImpl.java:90) com.atlassian.bamboo.v2.build.agent.DefaultBuildAgent$1.run(DefaultBuildAgent.java:102) com.atlassian.bamboo.build.pipeline.concurrent.NamedThreadFactory$2.run(NamedThreadFactory.java:50) java.lang.Thread.run(Thread.java:636) Caused by: org.eclipse.jgit.errors.TransportException: Could not delete file /home/hgrepo/bamboo-agent-home/xml-data/build-dir/GP-LINUSKERNELHTTP3-JOB1/.git/objects/incoming_4443714216792466821.idx org.eclipse.jgit.transport.BasePackFetchConnection.doFetch(BasePackFetchConnection.java:292) org.eclipse.jgit.transport.TransportHttp$SmartHttpFetchConnection.doFetch(TransportHttp.java:613) org.eclipse.jgit.transport.BasePackFetchConnection.fetch(BasePackFetchConnection.java:230) org.eclipse.jgit.transport.FetchProcess.fetchObjects(FetchProcess.java:217) org.eclipse.jgit.transport.FetchProcess.executeImp(FetchProcess.java:152) org.eclipse.jgit.transport.FetchProcess.execute(FetchProcess.java:114) org.eclipse.jgit.transport.Transport.fetch(Transport.java:904) com.atlassian.bamboo.plugins.git.GitOperationHelper.fetch(GitOperationHelper.java:188) ... 10 more Caused by: java.io.IOException: Could not delete file /home/hgrepo/bamboo-agent-home/xml-data/build-dir/GP-LINUSKERNELHTTP3-JOB1/.git/objects/incoming_4443714216792466821.idx org.eclipse.jgit.util.FileUtils.delete(FileUtils.java:133) org.eclipse.jgit.util.FileUtils.delete(FileUtils.java:91) org.eclipse.jgit.transport.IndexPack.index(IndexPack.java:473) org.eclipse.jgit.transport.BasePackFetchConnection.receivePack(BasePackFetchConnection.java:673) org.eclipse.jgit.transport.BasePackFetchConnection.doFetch(BasePackFetchConnection.java:285) ... 17 more {code}",2 BAM-7677,"Rather than error out when a git ssh URL is entered without a username, automatically embed it in the URL for the user","See BAM-7665 for background information. Git needs the username to be in the URL for ssh. By implementing BAM-7665, we error out whenever a git ssh URL is entered without a username. I think it would be better if we provided a separate UI textfield for the username and embeded the username into the ssh URL. In this case if the user enters a username into the URL we should error out and ask the user to enter the username into a separate UI field.",1 BAM-7683,"Update Plan Statistics UI","The blue box doesn't fit in with Bamboo's new style. We should update it to look similar to the Test Summary. See attached mockup. We can definitely play with the size of the numbers. For Plans with a lot of builds, the first number might grow too long at the current size. ",1 BAM-7684,"Update Bamboo Header","To look more Atlassian, our header requires a few changes. Since another project is underway to unify headers in general, we don't want to spend much time on this, but a few small changes can have a big impact here: *Change the font:* * Not Bold * Remove the underlines for the shortcut keys (not needed very often anyway) * Change the font size to 13 pixels *Background* * Remove the background image * Use a new logo that works on a plain background (to be provided by Jens)",1 BAM-7689,"Bamboo caches the Dashboard Plan permissions for the first user that accessed Bamboo ","1. Considering that anonymous users can't see the plans in the dashboard; 2. If the first access is done in anonymous mode and then the Admin logs in, the Admin Dashboard will be empty, because the anonymous permission for the dashboard is still cached. All the other screens will show the plans and permissions without problem.",2 BAM-7690,"Bundle the Git Bamboo Repository Plugin with Bamboo 3.0","{quote} We absolutely need to bundle the Git Bamboo Plugin into Bamboo 3.0. We are actually hoping to do the bundling for the milestone 4 of Bamboo 3.0. {quote}",1 BAM-7695,"OAUTH TokenExpiry never starts in Bamboo 3.0","When upgrading to the new Atlassian Plaform, we've changed the expiry scheduler to be triggered by Bamboo start instead of plugin system startup event. This is a good idea, but the plugin was not wired properly to receive the startup event. As the result, expiry never runs on Bamboo 3.0. Priority major since the exposure is limited, but this has to be fixed fast.",3 BAM-7724,"User can see live logs for a jobs on the plan summary screen",NULL,2 BAM-7732,"Webwork library not compatible with JDK 1.5",NULL,2 BAM-7735,"Share Git cache among the server and local agents (if concurrent builds are on)","As in BAM-7635 but for Git: Like in Summary - if concurrent builds are on then each local agent will grab its own copy of cache during code retrieval. Cache should be reused locally for checkouts - conurrent builds or not. This will require changing cache lock strategy to read/write - see [comment|https://atlaseye.atlassian.com/cru/CR-BAM-2388#c39662] ",3 BAM-7771,"Build plan failed to run - it was marked as queued but was not present in the queue","See https://bamboo.extranet.atlassian.com/browse/CONFFUNC5-SMOKE-33/ It has failed to run with error: {noformat}Confluence Trunk Staging and Dumping - Confluence Smoke Tests - Extranet Staging - Smoke Tests > CONFFUNC5-SMOKE-SMOKE-33 : Build CONFFUNC5-SMOKE-SMOKE-33 had to be cancelled: it was marked as queued but was not present in the queue. (19 Jan 2011, 5:47:05 PM) Remove error from the list Clear error from log {noformat}",5 BAM-7812,"Instant message notifications no longer say ""X new test failures"", just ""2/486 tests failed.""","I seem to recall that the Bamboo IM notifications used to tell me how many test failures were new. This seems to have gone missing in recent milestones on BEAC. It's really useful information because it often tells you whether you broke the build or someone else did. ",1 BAM-7814,"Move ""Plan Logs"" to be under the configuration screen","Doesn't make a lot of sense but it's the least bad option. Have a link at the bottom of the View Configuration to the Plan Logs. Have a button on the top left to go back to the View Configuration",1 BAM-7825,"In the stages tab make the Job name link to the Job Configuration (not the Job Summary)",NULL,1 BAM-7833,"Users can't reset passwords if the Global Anonymous Permission is disabled","If the Global Anonymous Permission to *Access* is disabled, the user still have to login in order to Reset his password. Steps to reproduce: 1. Disable the *Access* permission for Anonymous Users at the Admin => Global Permissions 2. Logout and try to reset your password using the *Can't access your account?* link. 3. You will receive an email with a link. 4. Click on the link. Result: You will be redirected to a Login page, not a Reset Password Page. If you login with the correct password the Reset Page is then displayed, but this is not useful when the user forgot his password. ",2 BAM-7840,"Source checkout on local agent should not fail if cache is deleted between change collection & source checkout","This may happen when the user manually deletes the cache directory between change collection & source checkout. Workaround: wait for next build. We may detect such case (MissingObjectException), refill the cache and retry the checkout. We do something similar already when source directory is messed up between checkouts.",1 BAM-7873,"Update atlassian-util-concurrent to 2.0",NULL,1 BAM-7924,"Errors during source checkout not correctly propagated causing plans to pass when they shouldn't","https://bamboo.extranet.atlassian.com/browse/CRUCHG-CHAIN-FUNCFE-865/log All jobs in this build actually failed which repository exceptions (i.e it didn't even get to running). However this error is not being propagated to Bamboo, so depending on which builder you use the plan may or may not fail. Exception That Cause This particular Failure: http://jira.atlassian.com/browse/BAM-7921 Build Logs Shown For Ant (Build Failed): {code} 03-Feb-2011 17:05:21 Build CRUCHG-CHAIN-INT-865 started building on agent bamboo-agent-78.private.atlassian.com (2) 03-Feb-2011 17:05:21 Build always requires a clean checkout 03-Feb-2011 17:05:21 Cleaning build directory '/opt/bamboo-agent/xml-data/build-dir/CRUCHG-CHAIN-INT' 03-Feb-2011 17:05:21 Updating source code to revision: 7557776da2a4bd7b6ef8194f7b2f57e69bcb0e8d 03-Feb-2011 17:05:47 Error occurred while executing the build for CRUCHG-CHAIN-INT-865 : null 03-Feb-2011 17:05:47 Build failed since text 'BUILD SUCCESS' was not found in the last 250 lines of the output. 03-Feb-2011 17:05:47 Running post build plugin on server 'JMeter Aggregator Build Processor Server' 03-Feb-2011 17:05:47 Running post build plugin on server 'Clover Delta Calculator' 03-Feb-2011 17:05:47 Running post build plugin on server 'Build Hanging Detection Configuration' 03-Feb-2011 17:05:47 Running post build plugin on server 'Post Command Server Runner' 03-Feb-2011 17:05:47 Running post build plugin on server 'NCover Results Collector' 03-Feb-2011 17:05:47 Running post build plugin on server 'FindBugs Server Build Processor' 03-Feb-2011 17:05:47 Generating build results summary... 03-Feb-2011 17:05:47 Saving build results to disk... 03-Feb-2011 17:05:47 Indexing build results... 03-Feb-2011 17:05:48 Finished building CRUCHG-CHAIN-INT-865. {code} Build Logs Shown for Script (Build Passed): {code} 03-Feb-2011 17:05:22 Build CRUCHG-CHAIN-FUNCFE-865 started building on agent bamboo-agent-70.private.atlassian.com (2) 03-Feb-2011 17:05:22 Build always requires a clean checkout 03-Feb-2011 17:05:22 Cleaning build directory '/opt/bamboo-agent/xml-data/build-dir/CRUCHG-CHAIN-FUNCFE' 03-Feb-2011 17:05:22 Updating source code to revision: 7557776da2a4bd7b6ef8194f7b2f57e69bcb0e8d 03-Feb-2011 17:06:20 Error occurred while executing the build for CRUCHG-CHAIN-FUNCFE-865 : null 03-Feb-2011 17:06:20 Build successful since return code was 0 03-Feb-2011 17:06:20 Running post build plugin on server 'JMeter Aggregator Build Processor Server' 03-Feb-2011 17:06:20 Running post build plugin on server 'Clover Delta Calculator' 03-Feb-2011 17:06:20 Running post build plugin on server 'Build Hanging Detection Configuration' 03-Feb-2011 17:06:20 Running post build plugin on server 'Post Command Server Runner' 03-Feb-2011 17:06:20 Running post build plugin on server 'NCover Results Collector' 03-Feb-2011 17:06:20 Running post build plugin on server 'FindBugs Server Build Processor' 03-Feb-2011 17:06:20 Generating build results summary... 03-Feb-2011 17:06:20 Saving build results to disk... 03-Feb-2011 17:06:20 Indexing build results... 03-Feb-2011 17:06:20 Finished building CRUCHG-CHAIN-FUNCFE-865. {code}",2 BAM-8015,"AccessLogFilter + Maven Artifact Sharing = too much logging","Essentially every request for a mvn resource gets logged. We should exclude the maven urls from the access log filter and just make sure the plugin logs e.g. actual hits (when the artifact was served).",1 BAM-8059,"Enable button should be change to a run button ","For https://gdansk.bamboo2.atlassian.com 1. I have disabled plan on dashboard (INT-DPL). 2. I Clicked on ""Enable"" to enable plan. 3. Button hasn't changed. Button should change to run button. See attached screenshot.",1 BAM-8070,"Make Bamboo Windows installer work nicer with default permissions"," At the moment the default permissions on Windows 7 really do screw us over since we write atlassian-bamboo.log to running dir & for services, the tmp directory",2 BAM-8072,"User can configure key value pairs as parameters at the Plan level","Currently we only have global parameters. With this story we allow the user to define parameters on the Plan level and expose these to all Jobs within the Plan",5 BAM-8073,"User can override key value pairs when running a manual build","When triggering a build manually, the user will be asked if he wants to overwrite any of the existing parameters for the Plan. ",2 BAM-8078,"Allow a user to kick of a build via REST and provide the parameters as part of the REST call",NULL,2 BAM-8083,"Null repository"," A dummy repository that basically doesn't do anything. ",2 BAM-8089,"Make variables available as environment variables"," So script could use it more easily.",3 BAM-8158,"Upgrade ActiveMQ to 5.4.2",NULL,3 BAM-8213,"New dialog forms revert to initial data on validation error","This might actually be happening in all forms in Bamboo. To reproduce: * go to Stage configuration on a plan * edit a stage * remove the ""name"" but add a description (or just something that will cause a validation error), then submit * notice that validation causes the data you entered to be wiped and the original data to be restored",1 BAM-8216,"Build hung never finish in the UI even after killing agent and all the related process","Hi, we got this build: https://bamboo-extranet.atlassian.com/build/result/viewBuildResults.action?buildKey=JST-NONGAPPS-FFWDRV&buildNumber=176 that was hung. A manual stop didn't work so we killed the process and the agents. In spite of doing that the UI still thinks that is building something, even when the agent (2@atlassian25) was idle and after that building other plans. You can check the thread-dump of the server here: https://extranet.atlassian.com/jira/browse/ADM-12681 The plan was executed again, but the UI still thinks it is building 176. Maybe it is because ""Concurrency builds"" is set to 2. ",3 BAM-8222,"MovePlans does not invalidate the caches","It doesn't invalidate the build definition cace and may not invalidate the dashboard cache either.",1 BAM-8241,"Make ImportExportManager available to plugins","I've been trying to create a cross-product way of doing restores through a REST resource. This would make life much simpler for doing integration tests in that we could put applications into a ""known"" state before a test is run. I tried writing a REST resource to do this for Bamboo, but found that I could not get the [ImportExportManager|http://docs.atlassian.com/atlassian-bamboo/3.0/com/atlassian/bamboo/migration/ImportExportManager.html] injected. Any chance of we can make this available to plugins for uses such as this?",1 BAM-8256,"Maven Artifact Sharing breaks when server is configured to use SSL and Job is running on ec2","Bamboos tunnel on ec2 is at 127.0.0.1 which is not valid for any SSL certificate. {noformat} build 15-Mar-2011 00:22:36 Downloading: https://maven.atlassian.com/repository/internal//opensymphony/xwork/1.2.5-atlassian-1/xwork-1.2.5-atlassian-1.pom build 15-Mar-2011 00:22:37 11K downloaded (xwork-1.2.5-atlassian-1.pom) build 15-Mar-2011 00:22:37 Downloading: https://127.0.0.1:46593/plugins/servlet/maven/subscribe/JST-NIGHTLY-6/JST-NIGHTLY-BUILD//ognl/ognl/2.7.1/ognl-2.7.1.pom build 15-Mar-2011 00:22:37 [WARNING] Unable to get resource 'ognl:ognl:pom:2.7.1' from repository atlassian-bamboo-artifact-sharing (https://127.0.0.1:46593/plugins/servlet/maven/subscribe/JST-NIGHTLY-6/JST-NIGHTLY-BUILD/): Error transferring file: java.security.cert.CertificateException: No subject alternative names matching IP address 127.0.0.1 found build 15-Mar-2011 00:22:37 Downloading: https://maven.atlassian.com/repository/internal//ognl/ognl/2.7.1/ognl-2.7.1.pom build 15-Mar-2011 00:22:37 5K downloaded (ognl-2.7.1.pom) build 15-Mar-2011 00:22:37 Downloading: https://127.0.0.1:46593/plugins/servlet/maven/subscribe/JST-NIGHTLY-6/JST-NIGHTLY-BUILD//jboss/javassist/3.6.ga/javassist-3.6.ga.pom build 15-Mar-2011 00:22:37 [WARNING] Unable to get resource 'jboss:javassist:pom:3.6.ga' from repository atlassian-bamboo-artifact-sharing (https://127.0.0.1:46593/plugins/servlet/maven/subscribe/JST-NIGHTLY-6/JST-NIGHTLY-BUILD/): Error transferring file: java.security.cert.CertificateException: No subject alternative names matching IP address 127.0.0.1 found build 15-Mar-2011 00:22:37 Downloading: https://maven.atlassian.com/repository/internal//jboss/javassist/3.6.ga/javassist-3.6.ga.pom build 15-Mar-2011 00:22:37 1008b downloaded (javassist-3.6.ga.pom) build 15-Mar-2011 00:22:37 Downloading: https://127.0.0.1:46593/plugins/servlet/maven/subscribe/JST-NIGHTLY-6/JST-NIGHTLY-BUILD//org/rifers/rife-continuations/0.0.2/rife-continuations-0.0.2.pom build 15-Mar-2011 00:22:37 [WARNING] Unable to get resource 'org.rifers:rife-continuations:pom:0.0.2' from repository atlassian-bamboo-artifact-sharing (https://127.0.0.1:46593/plugins/servlet/maven/subscribe/JST-NIGHTLY-6/JST-NIGHTLY-BUILD/): Error transferring file: java.security.cert.CertificateException: No subject alternative names matching IP address 127.0.0.1 found {noformat}",2 BAM-8324,"Upgrade to gadgets 3.0.4","To get up to date with the February Common Upgrade Pack: https://extranet.atlassian.com/display/DEV/Common+Module+Upgrade+Pack+-+2011-02 we need to upgrade to Gadgets 3.0.4. Should be easy as the fixes are minor and we are on gadgets 3.0.2.",2 BAM-8325,"Upgrade to Atlassian XWork 1.12","To get up to date with the February Common Upgrade Pack: https://extranet.atlassian.com/display/DEV/Common+Module+Upgrade+Pack+-+2011-02 we need to upgrade to XWork 1.12",1 BAM-8379,"context contains arrays when it expects strings on validation failure","In our task code on validation failure, we re-copy everything that can in on the request back on to the stack for re-rendering (so the values entered by the user remain). The problem is that the actionContext puts everything in an Array, where it usually would just be a string. Whilst some of our front end code accomodates this, some of it doesn't (e.g. select/show/hide stuff) I was originally going to convert everything over to a string when i put it on the stack, but I'm not sure how many assumptions I can make (are they all supposed to be strings, what if the front end really does want an array)",1 BAM-8383,"Creating a task without a executable selected dies badly","When you click save on a maven task at the moment, and you haven't selected an actual builder from the drop down, it dies badly, rather than just returning a nice validation error above the drop down: ""Please select a builder"".",1 BAM-8419,"Finalise Task wording on Plan/Job Creation screens","and also Task editing screens Wording will be available soon",1 BAM-8438,"Create a popup for available variables","A popup to display available global variables should be accessible from the Plan and Job configuration pages. The popup should have 2 tab (Variables). ",2 BAM-8446,"MsTest Conversion",NULL,2 BAM-8447,"Categories for tasks backend",NULL,2 BAM-8448,"Categories for tasks UI",NULL,2 BAM-8454,"Jobs with different Subversion repositories on the same host: ""Failed to checkout source code to revision""","We tried to use the following jobs with different Subversion locations in a plan in Bamboo: - *Main job*: https://svn.atlassian.com/svn/private/atlassian/confluence/branches/confluence-project-3.5-stable - *Plugin trigger job*: https://svn.atlassian.com/svn/public/atlassian/bamboo/plugins/build-trigger-scripts/trunk Notice that the first job uses {{/svn/private/}} and the second uses {{/svn/public/}} -- different paths on the same host. Bamboo fails when running the second job because it attempts to check out the first job's revision on the second job's Subversion repository, which does not work: bq. Failed to checkout source code to revision '148195' ... Here's an example on our internal Bamboo server: * https://bamboo.extranet.atlassian.com/browse/CONFSTAB-MAIN-76 ",2 BAM-8456,"Git Repository locks index.lock on Windows agents","Whenever an error occurs on windows agents during the checkout phase(GitOperationHelper.checkout) the .git/index.lock file handle became locked by the system - disallowing any further operations for that particular plan. Details: [BSP-4370|https://support.atlassian.com/browse/BSP-4370]",3 BAM-8478,"Using the git repository type can not connect to github using ssh keys","When attempting to use a key to log into my github account using my private key i get an authentication error. Specifying the same key with ssh -i i can connect to github fine. Using a username/password is a temporary work around. ",2 BAM-8492,"Release Management Plugin - Release Build PostChainAction (java.lang.NullPointerException)","I've taken the new Jar from here http://jira.atlassian.com/browse/BAM-8064 I still get the same erro System Error Details Build LGXT Test - LGXT Release 9 : PostChainAction (java.lang.NullPointerException : ) Occurrences: 2 First Occurred: 11 Apr 2011, 4:49:14 PM Last Occurred: 11 Apr 2011, 4:55:16 PM java.lang.NullPointerException com.atlassian.bamboo.build.VariableBuilderBeanImpl.getVariablesForSubscriptionsContext(VariableBuilderBeanImpl.java:125) com.atlassian.bamboo.build.VariableBuilderBeanImpl.filterVariablesByName(VariableBuilderBeanImpl.java:61) com.atlassian.bamboo.build.VariableSubstitutionBeanImpl.substituteBambooVariables(VariableSubstitutionBeanImpl.java:57) com.atlassian.bamboo.build.VariableSubstitutionBeanImpl.substituteBambooVariables(VariableSubstitutionBeanImpl.java:42) com.sysbliss.bamboo.plugins.brmp.action.postrunners.TaggerRunner.runTagger(TaggerRunner.java:74) com.atlassian.bamboo.plugins.brmp.action.BRMPChainCompleteAction.execute(BRMPChainCompleteAction.java:61) com.atlassian.bamboo.chains.ChainPluginSupportImpl.chainCompleted(ChainPluginSupportImpl.java:94) com.atlassian.bamboo.chains.ChainExecutionManagerImpl.finaliseChainStateIfChainExecutionHasCompleted(ChainExecutionManagerImpl.java:525) com.atlassian.bamboo.chains.ChainExecutionManagerImpl.access$600(ChainExecutionManagerImpl.java:49) com.atlassian.bamboo.chains.ChainExecutionManagerImpl$1.run(ChainExecutionManagerImpl.java:281) com.atlassian.util.concurrent.ManagedLocks$ManagedLockImpl.withLock(ManagedLocks.java:322) com.atlassian.bamboo.chains.ChainExecutionManagerImpl.execute(ChainExecutionManagerImpl.java:240) com.atlassian.bamboo.chains.ChainExecutionManagerImpl.access$1000(ChainExecutionManagerImpl.java:49) com.atlassian.bamboo.chains.ChainExecutionManagerImpl$2.run(ChainExecutionManagerImpl.java:327) com.atlassian.util.concurrent.ManagedLocks$ManagedLockImpl.withLock(ManagedLocks.java:322) com.atlassian.bamboo.chains.ChainExecutionManagerImpl.handleEvent(ChainExecutionManagerImpl.java:307) sun.reflect.GeneratedMethodAccessor374.invoke(Unknown Source) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) java.lang.reflect.Method.invoke(Method.java:597) org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:304) org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149) org.springframework.orm.hibernate.HibernateInterceptor.invoke(HibernateInterceptor.java:117) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) $Proxy48.handleEvent(Unknown Source) com.atlassian.event.legacy.LegacyListenerHandler$LegacyListenerInvoker.invoke(LegacyListenerHandler.java:55) com.atlassian.event.internal.AsynchronousAbleEventDispatcher$2.run(AsynchronousAbleEventDispatcher.java:60) java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) com.atlassian.bamboo.build.pipeline.concurrent.NamedThreadFactory$2.run(NamedThreadFactory.java:50) java.lang.Thread.run(Thread.java:662) I've a very simple devenv build.",1 BAM-8503,"JDK Label should default to JDK","At the moment it's just the first one",1 BAM-8507,"Fix up the logs pages for Plans & Jobs","This still wasn't fixed in 3.0. Table should be 100%. Get rid of view, link should go to the logs tab in the Job. Maybe even dispaly the last 25 lines in the logs inline with the hide / show twixie",2 BAM-8529,"Bamboo fails to check out git code due to 'Missing object' but command line git clones the repo just fine","While checking out: https://github.com/krosenvold/bgit.git Checkout to revision 67fc88bf41aa2ddea0e50159868764c82bed5bad has failed due to Missing object 3a450411d6868221ae290bc0c17695de2990d5d8. Note this might happen if the repository contains submodules, as Bamboo does not currently support git submodules. Is it a bug? How can I find out if the repo contains submodules?",3 BAM-8542,"Tests that are recorded as error cause the build not to display test results.","See the following failure: http://tardigrade.sydney.atlassian.com:8085/bamboo/browse/BAM-FC-CLN-3947 ",2 BAM-8551,"execution of accesskey=""E"" on a build instance results in ""page not found""","h3. steps # open a build instance # hit ur browsers hotkey for edting -> page not found h3. cause looking @ the generates HTML the fault is obvious: {code:html} Edit Plan {code} h3. suggestion i like the possibility to directly edit the config from a build instance and hence i would not want this to be dropped. after all this is very useful when debugging builds. hence, just fix the link in case of build instances. ",1 BAM-8556,"Maven 2 Auto Dependency parent checkbox not disabled","Maven 2 dependencies determined in the 2.5 bamboo instance still exist, however only the child checkbox is greyed out, not the parent.",2 BAM-8639,"Update Bamboo Plugin SDK default project to simple task","We should include two sample tasks: * Builder Task with Executable UI * Test Collector Things we should showcase: * Executables - TaskRequirementSupport and CapabilityDefaultsHelper * ProcessService * TestCollationService with custom TestReportCollector and TestCollectionResult. Should implement and explain TaskTestResultsSupport. * Task Categories ",3 BAM-8678,"Update Context Sensitive Help for Bamboo 3.1","as per the release process here: https://extranet.atlassian.com/display/BAMBOO/Context+Sensitive+Help I have already updated the help-paths.properties to be docs-031",1 BAM-8707,"Simplify capability message on Tasks","The message currently reads: ""8 agents are capable of building this Job. However, those agents are currently offline or disabled. This Job is capable of building in the Elastic Cloud on 8 images."" This is way to long for this section and distracts with the red color from the actual task at hand. We should shorten this to: ""8 agents and 8 images have the _capabilities_ to run this job"" Link capabilities to the requirements tab. The numbers are for agents (whether online or offline) people can click through to the requirements tab where they can see the more detailed message We should also align the text on the right, see screenshot.",1 BAM-8746,"Some Tasks fail on Windows because they exceed the MAX_PATH limit of 260 chars","You might see something like the following: {noformat} The specified path, file name, or both are too long. The fully qualified file name must be less than 260 characters, and the directory name must be less than 248 characters. {noformat}",2 BAM-8782,"User can specify on stage creation it is manual",NULL,1 BAM-8783,"User can change manual flag for stage",NULL,2 BAM-8784,"REST API should provide manual stages information","* manual flag on stage definition * manual stage in stage result * all data related to manual stage lifecycle Required for proper displaying in navigator",1 BAM-8785,"Build results with incomplete Manual stages should be clearly marked in all views","Stage only Stage result and jobs result - for results * plan configuration navigator * plan navigator * stages configuration page * plan result navigator Mockups to come",2 BAM-8786,"Plan execution should stop at manual stage","# only object that are necessary to execute current lap should be created for execution # results for ALL stages and jobs should be created when chain execution is started # jobs than will be not executed in current lap should have additional status flag (new ExecutionState enum in resultSummary) # chain result should be marked as waiting for continue (the same ExecutionState enum in resultsSummary) # Plan status is SUCCESSFUL if no failures in executed jobs",1 BAM-8787,"User can resume execution of plan stopped on manual stage","# The only stage that could be resumed is the stage where chain executions stopped ## Bamboo should know what stage to execute # New Actions menu item ""Continue"" (plan result and job result) - automatically resumes on manual stage, visible only if execution stopped on manual stage # Play button in Navigator on manual stage Tick",1 BAM-8789,"User can execute manual stages automatically on specific conditions","# Run Parameterized Build dialog should have new tab ## Same UI on the JIRA side (see mockups from the Release Management Spec) # REST API parameters to allow run up to a stage ## Name of the manual stage to automatically run up to and including ## This is automatically run any previous manual stages as well # The same url parameters should be accepted by action and REST API (/) ",2 BAM-8790,"A user can see on Dashboard plans with manual stages waiting for execution","# Only if latest executed plan stopped on manual stage # Only marker - no direct action available to continue",1 BAM-8791,"Plan configuration should be validated before resuming plan execution","Plan should be validated against stored result (with partial job results) Error (friendly :) ) should be presented to the user when: # If stage or job meant to be executed has been removed from plan # If plan structure (stages, jobs) has been changed",2 BAM-8805,"Events for manual stages/rerun stage","* stop on manual stage * result manual stage * restart failed stage",1 BAM-8806,"Plugin points for manual stages/rerun stage","* stop on manual stage * resume manual stage * restart failed stage",2 BAM-8847,"Ability to hit the REST endpoint to trigger a build in Bamboo from the JIRA plugin",NULL,1 BAM-8866,"Bamboo not updating Mercurial sub-repositories when getting source on build server","From SAC: ""We use Mercurial and our project has a sub-repository (in a folder UI\Elegant) which is specified in the .hgsub file. The project is setup correctly, we can get it to any PC, commit, push, pull changes etc.. However, when changes to the sub-repository are made the Bamboo build fails. The hg.exe command appears to work in getting the project to the cache folder, though the sub-repository (UI\Elegant) is missing, but when it then tries to update the working folder (Bamboo\xml-data\build-dir\AIE-DEV-JOB1) it fails saying no working folder is specified for UI\Elegant. How can we resolve this? "" https://support.atlassian.com/browse/BSP-4674",2 BAM-8868,"Build time for statistics should be sum of job times for rerun builds","When manual stage is waiting for execution - it changes build time statistics. Sum of job execution should be counted, not chain stop - chain start times.",1 BAM-8896,"Whilelist Bamboo REST proxy in Bamboo JIRA Plugin","Not done for the moment since we don't know what URLS we want to hit",1 BAM-8899,"Git Repository should check out symbolic links correctly","see: http://forums.atlassian.com/thread.jspa?threadID=54198&tstart=0 {quote} Hey folks, I'm rolling out a new instance of Bamboo 3.1 using a git repository. When I clone the repo using my local git client, symbolic links are checked out correctly, but when Bamboo checks them out the files only contain the name of the files they should be linked to. {quote}",1 BAM-8932,"A user can define application link to Jira application",NULL,2 BAM-8933,"A user can define link between Bamboo project and Jira project",NULL,2 BAM-8935,"Jira issue information should be asynchronously retrieved from Jira on view - ajax",NULL,2 BAM-8943,"REST endpoint to retrieve possible variables to override.",NULL,1 BAM-8944,"Ability to pick future manual stages to run when triggering a previous build.",NULL,2 BAM-8955,"Handle Authentication Errors returned by Proxy","When the JIRA UI polls bamboo it could require the oauth handshake, we need to make sure this works, and flows nicely.",2 BAM-8957,"Strange errors with disappearing OAuth consumers on JBAC when talking to JDOG","So I was trying to make some gadgets work on JDOG. I was getting the ""Login & Approve"" button on JDOG. I clicked it and got redirected to JBAC where I approved access. Once back in JDOG I'd still get the Login & Approve button. I tried to then reduce the JDOG OAuth consumer from JBAC but when I clicked delete I'd get an error popup with something along the lines of 'Failed to remove OAuth consumer. I tried this several times with the same result. Refreshed the page and the consumer was still there. I then visited https://jira.bamboo.atlassian.com/plugins/servlet/oauth/users/access-tokens to look at my access tokens but got this: {noformat} com.atlassian.templaterenderer.RenderingException: java.lang.NullPointerException: consumer com.atlassian.templaterenderer.velocity.one.six.internal.VelocityTemplateRendererImpl.render(VelocityTemplateRendererImpl.java:99) sun.reflect.GeneratedMethodAccessor2870.invoke(Unknown Source) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) java.lang.reflect.Method.invoke(Method.java:597) org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307) org.springframework.osgi.service.importer.support.internal.aop.ServiceInvoker.doInvoke(ServiceInvoker.java:58) org.springframework.osgi.service.importer.support.internal.aop.ServiceInvoker.invoke(ServiceInvoker.java:62) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) org.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131) org.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) org.springframework.osgi.service.util.internal.aop.ServiceTCCLInterceptor.invokeUnprivileged(ServiceTCCLInterceptor.java:56) org.springframework.osgi.service.util.internal.aop.ServiceTCCLInterceptor.invoke(ServiceTCCLInterceptor.java:39) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) org.springframework.osgi.service.importer.support.LocalBundleContextAdvice.invoke(LocalBundleContextAdvice.java:59) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) org.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131) org.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) $Proxy208.render(Unknown Source) com.atlassian.oauth.serviceprovider.internal.servlet.user.AccessTokensServlet.doGet(AccessTokensServlet.java:60) javax.servlet.http.HttpServlet.service(HttpServlet.java:690) javax.servlet.http.HttpServlet.service(HttpServlet.java:803) com.atlassian.plugin.servlet.DelegatingPluginServlet.service(DelegatingPluginServlet.java:42) javax.servlet.http.HttpServlet.service(HttpServlet.java:803) com.atlassian.plugin.servlet.ServletModuleContainerServlet.service(ServletModuleContainerServlet.java:52) javax.servlet.http.HttpServlet.service(HttpServlet.java:803) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46) com.atlassian.plugin.servlet.filter.DelegatingPluginFilter$1.doFilter(DelegatingPluginFilter.java:66) com.atlassian.applinks.core.rest.context.ContextFilter.doFilter(ContextFilter.java:25) com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.doFilter(DelegatingPluginFilter.java:74) com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:42) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:77) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:63) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:118) com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:52) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:77) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:63) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) com.atlassian.bamboo.filter.AccessLogFilter.doFilter(AccessLogFilter.java:66) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265) org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125) org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275) com.atlassian.bamboo.filter.SeraphLoginFilter.doFilter(SeraphLoginFilter.java:74) org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275) org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149) org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98) com.atlassian.bamboo.filter.BambooAcegiProxyFilter.doFilter(BambooAcegiProxyFilter.java:25) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) com.atlassian.bamboo.filter.LicenseFilter.doFilter(LicenseFilter.java:73) com.atlassian.core.filters.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:31) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) com.atlassian.johnson.filters.AbstractJohnsonFilter.doFilter(AbstractJohnsonFilter.java:71) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) com.atlassian.seraph.filter.SecurityFilter.doFilter(SecurityFilter.java:211) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) com.atlassian.seraph.filter.BaseLoginFilter.doFilter(BaseLoginFilter.java:150) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46) com.atlassian.plugin.servlet.filter.DelegatingPluginFilter$1.doFilter(DelegatingPluginFilter.java:66) com.atlassian.oauth.serviceprovider.internal.servlet.OAuthFilter.doFilter(OAuthFilter.java:71) com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.doFilter(DelegatingPluginFilter.java:74) com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:42) com.atlassian.plugin.servlet.filter.DelegatingPluginFilter$1.doFilter(DelegatingPluginFilter.java:66) com.atlassian.security.auth.trustedapps.filter.TrustedApplicationsFilter.doFilter(TrustedApplicationsFilter.java:98) com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.doFilter(DelegatingPluginFilter.java:74) com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:42) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:77) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:63) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) org.springframework.orm.hibernate.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:170) com.atlassian.bamboo.persistence.BambooSessionInViewFilter.doFilterInternal(BambooSessionInViewFilter.java:31) org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:77) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:63) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96) org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210) org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174) org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117) org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108) org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151) org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:200) org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:283) org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:773) org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:703) org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:895) org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685) java.lang.Thread.run(Thread.java:662) Caused by: java.lang.NullPointerException: consumer com.atlassian.oauth.util.Check.notNull(Check.java:37) com.atlassian.oauth.Token$TokenBuilder.consumer(Token.java:178) com.atlassian.oauth.serviceprovider.sal.PluginSettingsServiceProviderTokenStore.get(PluginSettingsServiceProviderTokenStore.java:92) com.atlassian.oauth.serviceprovider.sal.PluginSettingsServiceProviderTokenStore$KeyToToken.apply(PluginSettingsServiceProviderTokenStore.java:232) com.atlassian.oauth.serviceprovider.sal.PluginSettingsServiceProviderTokenStore$KeyToToken.apply(PluginSettingsServiceProviderTokenStore.java:221) com.google.common.collect.Iterators$8.next(Iterators.java:751) org.apache.velocity.runtime.directive.Foreach.render(Foreach.java:346) org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:175) org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72) org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:87) org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:336) org.apache.velocity.Template.merge(Template.java:328) org.apache.velocity.Template.merge(Template.java:235) com.atlassian.templaterenderer.velocity.one.six.internal.VelocityTemplateRendererImpl.render(VelocityTemplateRendererImpl.java:90) ... 113 more {noformat} When I went back to the Oauth consumers page the consumer was gone. I re-added it and now https://jira.bamboo.atlassian.com/plugins/servlet/oauth/users/access-tokens works again. I can also get the gadgets to authenticate. Very weird I know and not the best of bug reports but it happend :).",3 BAM-8969,"If an older version of Bamboo is trying to run a newer version of the data, we should stop the server","If a Bamboo 3.1.1 instance is shutdown and then a 2.6.2 is run pointing to the 3.1.1 Home-Dir, the 2.6.2 will change the bamboo.cfg.xml to an old Build Number. The Build number should be checked and if it is clear that it is higher than the one for the installation, Bamboo should not even start. This can avoid potential changes that version 2.6.2 would make to the 3.1.1 database and avoid data corruption.",1 BAM-8972,"Ability for the Test Collater to aggregate test results","If more than one Task creates test results in a Job, Bamboo will not be able to save all the test results for all the Tasks. Only the last task will have the test results saved and presented on the UI. *Desired behavior:* Any Task can create test results and the final Test Report will include results from all Tasks that created tests.",2 BAM-8976,"Restricted administrators cannot delete, move or create plans","Users that have restricted administrator permissions (ie, Studio customers) are able to see the screens to move and delete plans, but when they try to perform the action, they are prevented from doing so due to method level permission checks on PlanManager. It appears to me that {{ACL_BUILD_ADMIN}} in {{applicationContextAcegiAuthorization}} should be granted to restricted administrators, not just normal administrators.",1 BAM-8985,"Git Repository should work with command 'git log'.","from [BSP-4755|https://support.atlassian.com/browse/BSP-4755] Steps to reproduce: 1) set up a Git plan, for example pointing at ""git://github.com/atlassian/homebrew.git"" 1.1) set up branch != ""master"", i.e. ""atlassian-sdk"" 1.2) create script task containing ""git log"" 2) tick ""clean working directory after each build"" (or ""Force Clean Build"" - doesn't really matter for this issue) 3) run plan (you might need to run it twice to observe the problem) 4a) build will fail with ""fatal: bad default revision 'HEAD'"" 4b) where expected behavior is to see git changesets in the logs of the *successful* build",3 BAM-9014,"Applink type is not recognised if annonymous access is turned off"," We need to white list /rest/applinks/1.0/manifest. Should also check with integration guys what other URLS need to be publicly available",1 BAM-9018,"Creation of trusted apps fails with hibernate exceptions","Hibernate operation: Could not execute JDBC batch update; SQL []; Batch entry 0 insert into TRUSTED_APPS (APP_ID, PUBLIC_KEY, APP_NAME, TIMEOUT, TRUSTED_APPS_ID) values ('jira:15489595', 'MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5wwkHI85p7czkTQCdoDkcA4TKkcF3VC6AHSrXZoMUfIQFE8QRetWipfAob0CMnG+iX0BWn/aPCJkkpHyt7xUNwAsrtHMISdtHovbBWRnE923r6tafzjwnu4sy2O82ogWN0HhSsA/2C15S7IC7rxiFhnpHNrt2UzERgonBbYbYBqvkP/2xz697UwD82Y8Wh7zk3IdPhCiWX6hcHzVLxtzxCj34O+toqLMnHOwW3HDcTue0Qba3nlwZ4fpRwEHZNI1mbDRaOmPRnoAb+jpr9XpO6iM7fDij277P30R6AiJ19oy+YA6z6vkDdVmQYAs7y+qAq0QxtLh4B50lX4oJAp/pwIDAQAB', NULL, '10000', '327682') was aborted. Call getNextException to see the cause.; nested exception is java.sql.BatchUpdateException: Batch entry 0 insert into TRUSTED_APPS (APP_ID, PUBLIC_KEY, APP_NAME, TIMEOUT, TRUSTED_APPS_ID) values ('jira:15489595', 'MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5wwkHI85p7czkTQCdoDkcA4TKkcF3VC6AHSrXZoMUfIQFE8QRetWipfAob0CMnG+iX0BWn/aPCJkkpHyt7xUNwAsrtHMISdtHovbBWRnE923r6tafzjwnu4sy2O82ogWN0HhSsA/2C15S7IC7rxiFhnpHNrt2UzERgonBbYbYBqvkP/2xz697UwD82Y8Wh7zk3IdPhCiWX6hcHzVLxtzxCj34O+toqLMnHOwW3HDcTue0Qba3nlwZ4fpRwEHZNI1mbDRaOmPRnoAb+jpr9XpO6iM7fDij277P30R6AiJ19oy+YA6z6vkDdVmQYAs7y+qAq0QxtLh4B50lX4oJAp/pwIDAQAB', NULL, '10000', '327682') was aborted. Call getNextException to see the cause. ",1 BAM-9029,"Expiry for shared artifacts","For us it seems like the global artifact expiry is not affecting the shared artifacts. Because our jobs are producing shared artifacts that are around 1GB big, we are constantly running out of diskspace on the server. Is there a possibility to outdate the shared artifacts which are stored on the server?",2 BAM-9033,"The contents of atlassian-bundled-plugins.zip are retained in memory","I'm seeing in a heap dump of Bamboo from studio.atlassian.com, that the content of {{atlassian-bundled-plugins.zip}} is retained in memory by the Tomcat {{WebappClassLoader}}. This is a problem that has already been addressed in Confluence (CONF-17511) and JIRA ([JRADEV-6137|https://jdog.atlassian.com/browse/JRADEV-6137]), so a similar solution should be implemented in Bamboo to avoid using the classloader to access the file. This file isn't as large in Bamboo as it is in JIRA and Confluence, but it still is a fairly significant amount of heap space to be wasting, and it is actually considerably bigger on Studio than in a standalone Bamboo (10M in Studio vs. 5.2M normally).",1 BAM-9089,"Release status is not synced via rest status call in JIRA Bamboo plugin","Whats happening: * The OAuth token has expired during a release * Once the user has done the 3LO dance they are returned to the tab panel * Tab Panel queries Bamboo, detects that the build has finished (success or failure), releases the jira version * The frontend code does not update the fact that the version has been released even though the status (released or not) has been sent back via the JSON response",2 BAM-9102,"Bamboo returns a JSON response when I submit the ""Edit Artifact Dependency"" dialog using Enter","Steps to reproduce: # Click Edit on an artifact dependency # Focus the Destination Directory field and change the text # Press Enter # Bamboo briefly shows ""An unknown error has occurred"", and then returns a JSON response (!) See this video: http://screencast.com/t/DHniQgeSp",1 BAM-9114,"Running a Bamboo Remote Agent service on Windows as a user other than System the parameter passed to the java.io.tmpdir fails the build","When the agent runs as the system, the param for java.io.tmpdir defaults to *C:\WINDOWS\TEMP\* and the build works just fine. When I run the agent as a user (trying to get around permissions issues with writing) the param for java.io.tmpdir defaults to *""C:\Documents and Settings\\Local Settings\temp\""* When the build runs, the first task that runs an Ant script I get a message that says: {color:red} BUILD FAILED Target ""and"" does not exist in project """"{color} Even though I see that the param being passed is in quotes so the space in the path should be taken care of, that's the only ""and"" I can find in my log. In the build script ""and"" does not appear anywhere, not even embedded in some other word.",2 BAM-9163,"Change the ""not run"" icon in manual stages",NULL,1 BAM-9210,"agent.error.wrongState is not defined in BambooActionSupport.properties","when removing agent that is building currently",1 BAM-9231,"Race condition can create duplicate plan keys, causing Bamboo to fail to start","Looks like a double-post of a create plan form resulted in duplicate plan key creation: {noformat} bamboo=# select build_id, buildkey from build; build_id | buildkey ----------+---------- 393217 | TRUNK 1507329 | JSTMVN 1507330 | JSTMVN 393218 | JOB1 {noformat} Excerpt from the Bamboo logs at that time: {noformat} @400000004e166cf406b6c1f4 2011-07-07 21:35:22,112 INFO [TP-Processor15] [AccessLogFilter] sysadmin POST https://sdog.jira.com/builds/build/admin/create/createPlan.action 103093kb @400000004e166d0d0c95cb4c 2011-07-07 21:35:47,211 INFO [TP-Processor17] [AccessLogFilter] sysadmin POST https://sdog.jira.com/builds/build/admin/create/createPlan.action 114482kb @400000004e166d1429151cdc 2011-07-07 21:35:54,685 INFO [TP-Processor15] [PlanCreationTemplate] Creating plan with key: JSTDEV-JSTMVN @400000004e166d14301380b4 2011-07-07 21:35:54,803 INFO [TP-Processor15] [PlanCreationTemplate] New build created with key JSTDEV-JSTMVN @400000004e166d1432779bec 2011-07-07 21:35:54,844 INFO [TP-Processor17] [PlanCreationTemplate] Creating plan with key: JSTDEV-JSTMVN @400000004e166d1434823ce4 2011-07-07 21:35:54,852 ERROR [AtlassianEvent::0-BAM::EVENTS:pool-1-thread-6] [ChainExecutionManagerImpl] Could not start executing Plan 'JSTDEV-JSTMVN' as the plan did not have any stages defined @400000004e166d14348244b4 2011-07-07 21:35:54,878 ERROR [TP-Processor17] [FiveOhOh] 500 Exception was thrown. @400000004e166d143482489c org.springframework.dao.IncorrectResultSizeDataAccessException: query did not return a unique result: 2 @400000004e166d143482489c at org.springframework.orm.hibernate.SessionFactoryUtils.convertHibernateAccessException(SessionFactoryUtils.java:590) @400000004e166d143482600c at org.springframework.orm.hibernate.HibernateAccessor.convertHibernateAccessException(HibernateAccessor.java:353) @400000004e166d14348263f4 at org.springframework.orm.hibernate.HibernateTemplate.execute(HibernateTemplate.java:375) @400000004e166d14348267dc at org.springframework.orm.hibernate.HibernateTemplate.execute(HibernateTemplate.java:337) @400000004e166d1434826bc4 at com.atlassian.bamboo.plan.PlanHibernateDao.getPlanByKey(PlanHibernateDao.java:43) @400000004e166d1434826fac at sun.reflect.GeneratedMethodAccessor225.invoke(Unknown Source) @400000004e166d1434826fac at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) @400000004e166d143482871c at java.lang.reflect.Method.invoke(Method.java:597) @400000004e166d1434828b04 at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:304) @400000004e166d1434828b04 at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182) @400000004e166d1434828eec at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149) @400000004e166d14348296bc at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106) @400000004e166d14348296bc at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) @400000004e166d1434829aa4 at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) @400000004e166d1434829e8c at $Proxy7.getPlanByKey(Unknown Source) @400000004e166d1434829e8c at com.atlassian.bamboo.plan.PlanManagerImpl.getPlanByKey(PlanManagerImpl.java:91) @400000004e166d143482a274 at com.atlassian.bamboo.plan.PlanManagerImpl.getPlanByKey(PlanManagerImpl.java:85) {noformat} This completely breaks Bamboo. It can no longer even start up without throwing the {{IncorrectResultSizeDataAccessException}}. Ideally, the uniqueness of this key should be enforced via a database constraint.",2 BAM-9297,"Modify Bamboo and Bamboo agents to first use the JAVA_HOME variable when starting","Some users report that Bamboo starts using the first java command on the PATH, rather than respecting the exported JAVA_HOME varible. This is inconsistent iwth other Atlassian tools, for example, JIRA, which look at the JAVA_HOME variable when starting. We need to test this behaviour for: # Bamboo server itself # Bamboo agents. For more information that caused this issue see: https://jira.atlassian.com/browse/BAM-9284?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=258775#comment-258775",1 BAM-9339,"JBAM Builds Versions tab panel breaks when no issues associated with version","The related builds by date filter when looking at the builds for a specific version causes null pointer exceptions in bamboo when there are no issues with that version. Fix is required on Bamboo side to avoid null pointers, and maybe on jira side to prevent it from making an unecessary call in the first place. {code} 2011-07-22 14:59:23,616 INFO [qtp1872676077-17] [AccessLogFilter] admin POST http://brydie:8085/bamboo/ajax/build/viewBuildResultsByJiraKey.action 25253kb 2011-07-22 14:59:23,620 ERROR [qtp1872676077-17] [FiveOhOh] 500 Exception was thrown. java.lang.NullPointerException com.atlassian.bamboo.plugins.jiraPlugin.actions.ajax.ViewBuildResultsByJiraKey.execute(ViewBuildResultsByJiraKey.java:42) sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) java.lang.reflect.Method.invoke(Method.java:597) {code}",1 BAM-9342,"Maven dependency task cannot handle Maven3 projects","Bamboo embeds Maven 2.1.0 to read project metadata for the Automatic Dependency task. This version of Maven has problems reading POM and metadata files built with Maven 3.0.x. This change cannot be back ported to 3.2.x as changing the Maven version has certain risks attached to it that can only be mitigated by a full release of Bamboo by running through teams quality control process.",5 BAM-9358,"""An unexpected error has occurred"" after clicking a link to a JIRA issue",NULL,1 BAM-9371,"Cannot install plugins onto JBAC using the UPM in Chrome","Firefox works fine, but when I try to install a plugin using Chrome the installer popup appears and then never finishes JBAC is currently using: Atlassian Bamboo version 3.2 build 2600 - 20 Jul 11",1 BAM-9372,"Stop distributing the user management files at /webapp/WEB-INF/classes/","Bamboo 3.2 users the Crowd/LDAP files located at */xml-data/configuration/* However we are still distributing them at */webapp/WEB-INF/classes/*",1 BAM-9384,"Webresources from servlets leak onto the next page","When the UPM UI is viewed, followed by any other UI the UPM resources are also included on the next page. This can be seen quite easily by looking at the html that is output. From a bit of investigation com.atlassian.bamboo.filter.RequestCacheThreadLocalFilter should be run for any request that returns html to clear the webResource cache. It is only shown for .action or /s/* Fragment from web.xml {code:xml} requestCache /s/* REQUEST FORWARD requestCache *.action REQUEST FORWARD requestCache com.atlassian.bamboo.filter.RequestCacheThreadLocalFilter {code} Adding /plugins/servlet/* as a filter mapping would solve the issue I was running into (the same script being included multiple times)",2 BAM-9387,"Bamboo does not start on OpenJDK 7","Captcha depends on SUN packages. {noformat} 2011-08-01 11:06:01,314 INFO [main] [BrokerService] ActiveMQ JMS Message Broker (bamboo, ID:barnard.local-62860-1312160747729-0:1) stopped 2011-08-01 11:06:01,316 INFO [main] [ConfigurableLocalSessionFactoryBean] Closing Hibernate SessionFactory 2011-08-01 11:06:01,320 ERROR [main] [ContextLoader] Context initialization failed org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'imageCaptchaService' defined in class path resource [applicationContextCaptcha.xml]: Cannot resolve reference to bean 'captchaEngine' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'captchaEngine' defined in class path resource [applicationContextCaptcha.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [com.atlassian.bamboo.captcha.AtlassianGimpyEngine]: Constructor threw exception; nested exception is java.lang.NoClassDefFoundError: com/sun/image/codec/jpeg/ImageFormatException Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'captchaEngine' defined in class path resource [applicationContextCaptcha.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [com.atlassian.bamboo.captcha.AtlassianGimpyEngine]: Constructor threw exception; nested exception is java.lang.NoClassDefFoundError: com/sun/image/codec/jpeg/ImageFormatException Caused by: org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [com.atlassian.bamboo.captcha.AtlassianGimpyEngine]: Constructor threw exception; nested exception is java.lang.NoClassDefFoundError: com/sun/image/codec/jpeg/ImageFormatException Caused by: java.lang.NoClassDefFoundError: com/sun/image/codec/jpeg/ImageFormatException java.lang.Class.forName0(Native Method) java.lang.Class.forName(Class.java:186) com.octo.captcha.image.gimpy.GimpyFactory.class$(GimpyFactory.java:30) com.octo.captcha.image.gimpy.GimpyFactory.(GimpyFactory.java:30) com.atlassian.bamboo.captcha.AtlassianGimpyEngine.buildInitialFactories(AtlassianGimpyEngine.java:59) com.octo.captcha.engine.image.ListImageCaptchaEngine.(ListImageCaptchaEngine.java:24) com.atlassian.bamboo.captcha.AtlassianGimpyEngine.(AtlassianGimpyEngine.java:28) sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57) sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) java.lang.reflect.Constructor.newInstance(Constructor.java:525) org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:85) org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:61) org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:752) org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:717) org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:386) org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:249) org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:155) org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:246) org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:160) org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:267) org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:110) org.springframework.beans.factory.support.ConstructorResolver.resolveConstructorArguments(ConstructorResolver.java:389) org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:120) org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:795) org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:713) org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:386) org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:249) org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:155) org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:246) org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:160) org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:291) org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:352) org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:245) org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:188) org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:49) com.atlassian.spring.container.ContainerContextLoaderListener.contextInitialized(ContainerContextLoaderListener.java:32) org.eclipse.jetty.server.handler.ContextHandler.startContext(ContextHandler.java:633) org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:228) org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1160) org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:576) org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:492) org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:55) org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:93) org.eclipse.jetty.server.Server.doStart(Server.java:243) org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:55) com.atlassian.bamboo.server.Server.main(Server.java:77) Caused by: java.lang.ClassNotFoundException: com.sun.image.codec.jpeg.ImageFormatException java.net.URLClassLoader$1.run(URLClassLoader.java:366) java.net.URLClassLoader$1.run(URLClassLoader.java:355) java.security.AccessController.doPrivileged(Native Method) java.net.URLClassLoader.findClass(URLClassLoader.java:354) java.lang.ClassLoader.loadClass(ClassLoader.java:423) sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) java.lang.ClassLoader.loadClass(ClassLoader.java:356) ... 47 more 2011-08-01 11:06:01,326 WARN [main] [log] Failed startup of context WebAppContext@2ba42999@2ba42999/bamboo,file:/Users/jdumay/code/bamboo/components/bamboo-web-app/src/main/webapp/,/Users/jdumay/code/bamboo/components/bamboo-web-app/src/main/webapp org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'imageCaptchaService' defined in class path resource [applicationContextCaptcha.xml]: Cannot resolve reference to bean 'captchaEngine' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'captchaEngine' defined in class path resource [applicationContextCaptcha.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [com.atlassian.bamboo.captcha.AtlassianGimpyEngine]: Constructor threw exception; nested exception is java.lang.NoClassDefFoundError: com/sun/image/codec/jpeg/ImageFormatException Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'captchaEngine' defined in class path resource [applicationContextCaptcha.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [com.atlassian.bamboo.captcha.AtlassianGimpyEngine]: Constructor threw exception; nested exception is java.lang.NoClassDefFoundError: com/sun/image/codec/jpeg/ImageFormatException Caused by: org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [com.atlassian.bamboo.captcha.AtlassianGimpyEngine]: Constructor threw exception; nested exception is java.lang.NoClassDefFoundError: com/sun/image/codec/jpeg/ImageFormatException Caused by: java.lang.NoClassDefFoundError: com/sun/image/codec/jpeg/ImageFormatException java.lang.Class.forName0(Native Method) java.lang.Class.forName(Class.java:186) com.octo.captcha.image.gimpy.GimpyFactory.class$(GimpyFactory.java:30) com.octo.captcha.image.gimpy.GimpyFactory.(GimpyFactory.java:30) com.atlassian.bamboo.captcha.AtlassianGimpyEngine.buildInitialFactories(AtlassianGimpyEngine.java:59) com.octo.captcha.engine.image.ListImageCaptchaEngine.(ListImageCaptchaEngine.java:24) com.atlassian.bamboo.captcha.AtlassianGimpyEngine.(AtlassianGimpyEngine.java:28) sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57) sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) java.lang.reflect.Constructor.newInstance(Constructor.java:525) org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:85) org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:61) org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:752) org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:717) org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:386) org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:249) org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:155) org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:246) org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:160) org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:267) org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:110) org.springframework.beans.factory.support.ConstructorResolver.resolveConstructorArguments(ConstructorResolver.java:389) org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:120) org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:795) org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:713) org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:386) org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:249) org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:155) org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:246) org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:160) org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:291) org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:352) org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:245) org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:188) org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:49) com.atlassian.spring.container.ContainerContextLoaderListener.contextInitialized(ContainerContextLoaderListener.java:32) org.eclipse.jetty.server.handler.ContextHandler.startContext(ContextHandler.java:633) org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:228) org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1160) org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:576) org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:492) org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:55) org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:93) org.eclipse.jetty.server.Server.doStart(Server.java:243) org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:55) com.atlassian.bamboo.server.Server.main(Server.java:77) Caused by: java.lang.ClassNotFoundException: com.sun.image.codec.jpeg.ImageFormatException java.net.URLClassLoader$1.run(URLClassLoader.java:366) java.net.URLClassLoader$1.run(URLClassLoader.java:355) java.security.AccessController.doPrivileged(Native Method) java.net.URLClassLoader.findClass(URLClassLoader.java:354) java.lang.ClassLoader.loadClass(ClassLoader.java:423) sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) java.lang.ClassLoader.loadClass(ClassLoader.java:356) ... 47 more 2011-08-01 11:06:01,343 INFO [main] [log] Started SelectChannelConnector@0.0.0.0:9087 **************************************************************** * * * You can see Bamboo by visiting http://localhost:9087/bamboo * * **************************************************************** {noformat}",5 BAM-9390,"Prevent failure of the 2511 upgrade task","{code} 2011-07-30 11:54:53,085 INFO [1-UpgradeTaskBackgroundThread:pool-7-thread-1] [AbstractUpgradeManager] --------------------------------------------------------------------------- 2011-07-30 11:54:53,085 INFO [1-UpgradeTaskBackgroundThread:pool-7-thread-1] [AbstractUpgradeManager] Running upgrade task 2511 : Upgrade JIRA server configuration to UAL config 2011-07-30 11:54:53,085 INFO [1-UpgradeTaskBackgroundThread:pool-7-thread-1] [AbstractUpgradeManager] --------------------------------------------------------------------------- 2011-07-30 11:54:54,164 ERROR [1-UpgradeTaskBackgroundThread:pool-7-thread-1] [AbstractUpgradeManager] java.lang.IllegalArgumentException: Application with server ID 3c74886c-6074-30a4-a22d-dcc12346ba68 is already configured java.lang.IllegalArgumentException: Application with server ID 3c74886c-6074-30a4-a22d-dcc12346ba68 is already configured at com.atlassian.applinks.core.DefaultApplicationLinkService.addApplicationLink(DefaultApplicationLinkService.java:201) at com.atlassian.applinks.core.DefaultApplicationLinkService.createApplicationLink(DefaultApplicationLinkService.java:638) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at com.atlassian.applinks.host.OsgiServiceProxyFactory$DynamicServiceInvocationHandler.invoke(OsgiServiceProxyFactory.java:111) at $Proxy32.createApplicationLink(Unknown Source) at com.atlassian.bamboo.applinks.JiraApplinksServiceImpl.createJiraApplinkWithBasicAuthentication(JiraApplinksServiceImpl.java:77) at com.atlassian.bamboo.upgrade.tasks.UpgradeTask2511UpgradeJiraServerConfig.doUpgrade(UpgradeTask2511UpgradeJiraServerConfig.java:65) at com.atlassian.bamboo.upgrade.tasks.AbstractInHibernateTransactionUpgradeTask$1.doInHibernateTransaction(AbstractInHibernateTransactionUpgradeTask.java:40) at com.atlassian.bamboo.persistence.BambooConnectionTemplate$1$1.doInHibernate(BambooConnectionTemplate.java:51) at org.springframework.orm.hibernate.HibernateTemplate.execute(HibernateTemplate.java:370) at com.atlassian.bamboo.persistence.BambooConnectionTemplate$1.doInTransactionWithoutResult(BambooConnectionTemplate.java:44) at org.springframework.transaction.support.TransactionCallbackWithoutResult.doInTransaction(TransactionCallbackWithoutResult.java:33) at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:127) at com.atlassian.bamboo.persistence.BambooConnectionTemplate.execute(BambooConnectionTemplate.java:39) at com.atlassian.bamboo.upgrade.tasks.AbstractInHibernateTransactionUpgradeTask.doUpgrade(AbstractInHibernateTransactionUpgradeTask.java:36) at com.atlassian.bamboo.upgrade.AbstractUpgradeManager.runUpgradeTask(AbstractUpgradeManager.java:175) at com.atlassian.bamboo.upgrade.UpgradeManagerImpl.doUpgrade(UpgradeManagerImpl.java:72) at com.atlassian.bamboo.upgrade.UpgradeLauncher$1.call(UpgradeLauncher.java:115) at com.atlassian.bamboo.upgrade.UpgradeLauncher$1.call(UpgradeLauncher.java:112) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at com.atlassian.bamboo.build.pipeline.concurrent.NamedThreadFactory$2.run(NamedThreadFactory.java:50) at java.lang.Thread.run(Thread.java:662) 2011-07-30 11:54:54,165 INFO [1-UpgradeTaskBackgroundThread:pool-7-thread-1] [AbstractUpgradeManager] Completed upgrade task 2511 with errors. 2011-07-30 11:54:54,166 FATAL [main] [UpgradeLauncher] Upgrade task error: Upgrade task for build 2511 failed with exception: Application with server ID 3c74886c-6074-30a4-a22d-dcc12346ba68 is already configured {code} Currently, we know that the recommendation from [this KB Article|http://confluence.atlassian.com/display/BAMKB/Bamboo+3.2+Upgrade+Fails+on+UAL+Upgrade+Task] can fix the problem.",2 BAM-9420,"BRMP incompatible with Bamboo 3.2","Following error is recorded when loading the BRMP plugin (Version 2.0.4 or 2.0.1) in Bamboo 3.2: {code} 2011-08-01 11:49:35,400 ERROR [qtp744758938-11] [DefaultPluginManager] Exception when retrieving plugin module brmpPlanConfiguration, will disable plugin com.atlassian.bamboo.plugins.bamboo-release-management-plugin org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'com.atlassian.bamboo.plugins.brmp.config.ReleaseManagementConfigurator': Instantiation of bean failed; nested exception is java.lang.NoClassDefFoundError: com/atlassian/bamboo/jira/jiraserver/JiraServerManager Caused by: java.lang.NoClassDefFoundError: com/atlassian/bamboo/jira/jiraserver/JiraServerManager at java.lang.Class.getDeclaredMethods0(Native Method) at java.lang.Class.privateGetDeclaredMethods(Class.java:2427) at java.lang.Class.privateGetPublicMethods(Class.java:2547) ..... ..... Caused by: java.lang.ClassNotFoundException: com.atlassian.bamboo.jira.jiraserver.JiraServerManager at java.net.URLClassLoader$1.run(URLClassLoader.java:202) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:190){code} ",3 BAM-9459,"Configuring OAuth Consumers document is out of date","In Bamboo 3.2, in order to setup an OAuth consumer you need to first trust 2 applications, and then you'll able to add an OAuth consumer. This document is out of date: http://confluence.atlassian.com/display/BAMBOO/Configuring+OAuth+Consumers It says on Step 3: _In the left-hand menu, under the title 'Gadgets', click the 'OAuth Consumers' link. The 'OAuth Administration' page will be displayed, showing a list of configured OAuth Consumers (if any exist)._ There is no such option under the Gadgets section, only ""Available Gadgets"", and that page has no OAuth links either.",1 BAM-9485,"Release feature in JIRA and Bamboo with trusted application not working properly","When User configure trusted application to communicate between JIRA and Bamboo. The feature release version will not work properly. The JIRA will not show the following in the UI !bamboojira.png|thumbnail! This problem does not happen when using basic authentication in application link. As a workaround user can try with basic authentication.jira",5 BAM-9511,"Mercurial Repository should correctly filter changesets since last build (even if there was more than 100 changesets)","http://tardigrade.sydney.atlassian.com:8085/bamboo/browse/BAM-EXT-4049 on bamboo-hg repository, lastVcsRevisionKey = 1c969a8270b7b6b70ff7f855a31fde22d3abae0c (Marcin Gardias code change) currentRevisionKey = 06998bc525a291de042309b8972e5d743d491d8b (Krystian's merge) between those two revisions Bamboo has found 106 code changes. Due to hard limit (100 changeset parsed for the build, no more) the Mercurial Repository falsely filters out the not-relevant changesets to current branch: bq. The Mercurial Plugin might incorrectly report the changesets triggering the build *if* there was more than 100 (HgRepository.CHANGESET_LIMIT) changes between the last build. The Mercurial Plugin will just have not enough information to traverse the changeset graph properly and will in defense report all changesets between, even those non-related to the built branch. Code responsible is near here: [HgCommandProcessor.filterOutUnreachableChangesets|https://atlaseye.atlassian.com/browse/bamboo-hg/components/bamboo-plugins/bamboo-plugin-mercurial/src/main/java/com/atlassian/bamboo/plugins/hg/HgCommandProcessor.java?r=d8b981d129d0#to384] I'm raising this issue so we can have a look at in in better detail.",2 BAM-9518,"Error summary does not match actual error log when rerunning","The Error Summary shows a build failure, but when I click through the build was actually successful. Looks like the job was retried but the old error summary still shows. ",1 BAM-9556,"JBAM - Socket time outs after 10 seconds","When talking to tardigrade from a JIRA Standalone instance I keep getting socket time out exceptions after 10 seconds. This is happening a lot. Not sure if the core problem is Tardigrade fro taking too long or the Plugin should be waiting longer than that for a response. The error message is not that friendly either. ",1 BAM-9597,"On restart non default project -> Bamboo servers links aren't used","If you have two links to Bamboo and you have a project that points to the non-default App Link, this will not be respected on a restart. You need to go to the Bamboo config screen and resave the configuration for it work again",2 BAM-9656,"Handle empty destination directories correctly for artifacts when using Oracle","Currently, the Destination directory option in Artifact Dependency can be left as empty. This does not work when using Oracle. Producing artifacts works well, but when a job from a later stage tries to use the artifacts and error occurs. As Oracle cannot handle storing empty strings, the directory is stored as NULL instead. It looks like Bamboo fails to deal with NULLs for a destination directory when retrieving and using the value: {code} java.lang.NullPointerException at java.io.File.(File.java:305) at com.atlassian.bamboo.build.artifact.LocalArtifactManager.retrieve(LocalArtifactManager.java:74) at com.atlassian.bamboo.build.pipeline.tasks.PrepareBuildTask.prepareArtifacts(PrepareBuildTask.java:100) at com.atlassian.bamboo.build.pipeline.tasks.PrepareBuildTask.call(PrepareBuildTask.java:50) {code} The problem happens during execution of the second stage, even though no actual build action is being performed. The bamboo-home/artifacts directory is present, and the artifact is created correctly. If the directory the artifact should be referenced from in stage 2 is changed, another nullpointerexception happens: {code} 2011-08-29 17:14:30,361 ERROR [qtp470279362-11] [FiveOhOh] 500 Exception was thrown. java.lang.NullPointerException at com.atlassian.bamboo.ww2.actions.build.admin.config.ConfigureArtifactSubscription.isSubscriptionUnique(ConfigureArtifactSubscription.java:158) at com.atlassian.bamboo.ww2.actions.build.admin.config.ConfigureArtifactSubscription.validateSubscription(ConfigureArtifactSubscription.java:147) {code} ",1 BAM-9674,"When retrying a release with the release management plugin, default plan variables displayed are not used in the build","We have a bamboo plan for our ""release"" which runs the maven-release-plugin to actually release our software. We define the plan with two plan variables: ""thisVersion"" and ""nextVersion"". Steps to reproduce: # Go to a JIRA version for the project we want to release, go to the ""release"" tab, and click to release this JIRA version using the bamboo release plugin # select ""release with new build"" and choose the correct bamboo plan (the release plan with the custom variables) # Click the link to type a value for the variable ""thisVersion"" and enter a value of 1.1.0 # Click the link to type a value for the variable ""nextVersion"" and enter a value of 1.2.0.M1-SNAPSHOT # Click Release \\ The plan will fire. If the plan fails, then it is displayed as failing in JIRA and there is a button to ""retry"" \\ # Click Retry and the same release plugin popup will be displayed with the previously selected values already filled out except for these problems: * *while there are two rows for each of the two plan variables we previously input, the variable name in the dropdown is the same for each*. It lists both variable names as ""nextVersion"", even though we originally selected the drop downs as ""thisVersion"" for the first, and ""nextVersion"" for the second. ** Note that the correct values, however, are still present in the text boxes. Thus when you see the screen (and I forgot to get a screenshot) you see in the first row a select box with ""nextVersion"" but with a value of 1.1.0. And the second row has (again) ""nextVersion"" in the drop down and the text box value of 1.2.0.M1-SNAPSHOT. Thus, it persisted the text box values correctly but not the drop down selections correctly. * If you only change the value of the first drop down -- i.e. change the first drop down from ""nextVersion"" to ""thisVersion"" (which is how we originally filled it out) and don't touch the second drop down box at all -- then it will _only_ set the ""thisVersion"" plan variable (the drop down that we physically clicked and changed). It will _not_ submit the ""nextVersion"" variable value to the plan, despite appearing exactly as it did when we originally filled out the form. This of course made my plan fail a second time as the maven-release plugin needs the ""nextVersion"" value, and since I don't have a default maven fails because the next version is """" (empty string). I went back to the Jira Version -> release page and ""retried"" a third time. Again I was presented with a form that had both drop downs displayed as ""nextVersion"". I clicked the first row drop down and changed it to to the correct ""thisVersion"" variable. Then I clicked the second row (currently ""nextVersion""), deliberately changed it to ""thisVersion"" and then clicked again to change it back to ""nextVersion"". I left the text box values alone -- as they were already correct. I submitted this and it worked perfectly. Thus, by clicking the second row dropdown and changing it and changing it back is a valid workaround. This seems pretty minor as there is an easy workaround and it seems to only be a problem whenever a release build fails, which is probably rare.",2 BAM-9680,"Oauth Access Token and Plugin Manager option is broken when Bamboo integrate with LDAP with the cache attribute is set to false","Currently, if Bamboo integrated with LDAP using the atlassian-user.xml with the LDAP repository cache is set to false example shown below: {code} {code} With the cache is turn off, when user click on the *Oauth Access Token* and *Plugin Manage* option will throw the following exception and user will be direct to the login page: {code} 2011-09-02 18:04:56,842 ERROR [qtp33513127-17] [LDAPUserManagerReadOnly] Error retrieving user: 'zed2' from LDAP. com.atlassian.user.impl.RepositoryException: javax.naming.NoInitialContextException: Cannot instantiate class: com.sun.jndi.ldap.LdapCtxFactory [Root exception is java.lang.ClassNotFoundException: com.sun.jndi.ldap.LdapCtxFactory not found from bundle [com.atlassian.oauth.atlassian-oauth-service-provider-plugin]] com.atlassian.user.impl.ldap.repository.DefaultLdapContextFactory.getLDAPContext(DefaultLdapContextFactory.java:91) com.atlassian.user.impl.ldap.search.DefaultLDAPUserAdaptor.search(DefaultLDAPUserAdaptor.java:70) com.atlassian.user.impl.ldap.search.DefaultLDAPUserAdaptor.search(DefaultLDAPUserAdaptor.java:54) com.atlassian.user.impl.ldap.LDAPUserManagerReadOnly.getUser(LDAPUserManagerReadOnly.java:70) com.atlassian.user.impl.delegation.DelegatingListUserManager.getUser(DelegatingListUserManager.java:71) sun.reflect.GeneratedMethodAccessor177.invoke(Unknown Source) sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) java.lang.reflect.Method.invoke(Unknown Source) com.atlassian.crowd.integration.atlassianuser.DynamicDelegationAccessor$DelegatingInvocationHandler.invoke(DynamicDelegationAccessor.java:115) $Proxy16.getUser(Unknown Source) bucket.user.DefaultUserAccessor.getUser(DefaultUserAccessor.java:147) com.atlassian.bamboo.user.BambooUserManagerImpl.getUser(BambooUserManagerImpl.java:103) sun.reflect.GeneratedMethodAccessor178.invoke(Unknown Source) sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) java.lang.reflect.Method.invoke(Unknown Source) org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:304) org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149) org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) $Proxy25.getUser(Unknown Source) com.atlassian.bamboo.user.authentication.BambooAuthenticator.getUser(BambooAuthenticator.java:48) com.atlassian.seraph.auth.DefaultAuthenticator.refreshPrincipalObtainedFromSession(DefaultAuthenticator.java:365) com.atlassian.seraph.auth.DefaultAuthenticator.getUserFromSession(DefaultAuthenticator.java:404) com.atlassian.seraph.auth.DefaultAuthenticator.getUser(DefaultAuthenticator.java:318) com.atlassian.seraph.auth.AbstractAuthenticator.getUser(AbstractAuthenticator.java:45) com.atlassian.seraph.auth.AbstractAuthenticator.getRemoteUser(AbstractAuthenticator.java:33) com.atlassian.sal.bamboo.user.BambooSalUserManager.getRemoteUsername(BambooSalUserManager.java:69) sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) java.lang.reflect.Method.invoke(Unknown Source) org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307) org.springframework.osgi.service.importer.support.internal.aop.ServiceInvoker.doInvoke(ServiceInvoker.java:58) org.springframework.osgi.service.importer.support.internal.aop.ServiceInvoker.invoke(ServiceInvoker.java:62) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) org.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131) org.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) org.springframework.osgi.service.util.internal.aop.ServiceTCCLInterceptor.invokeUnprivileged(ServiceTCCLInterceptor.java:56) org.springframework.osgi.service.util.internal.aop.ServiceTCCLInterceptor.invoke(ServiceTCCLInterceptor.java:39) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) org.springframework.osgi.service.importer.support.LocalBundleContextAdvice.invoke(LocalBundleContextAdvice.java:59) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) org.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131) org.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) $Proxy239.getRemoteUsername(Unknown Source) com.atlassian.oauth.serviceprovider.internal.servlet.user.AccessTokensServlet.doGet(AccessTokensServlet.java:49) javax.servlet.http.HttpServlet.service(HttpServlet.java:707) javax.servlet.http.HttpServlet.service(HttpServlet.java:820) com.atlassian.plugin.servlet.DelegatingPluginServlet.service(DelegatingPluginServlet.java:42) javax.servlet.http.HttpServlet.service(HttpServlet.java:820) com.atlassian.plugin.servlet.ServletModuleContainerServlet.service(ServletModuleContainerServlet.java:52) javax.servlet.http.HttpServlet.service(HttpServlet.java:820) org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:534) org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1351) com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46) com.atlassian.plugin.servlet.filter.DelegatingPluginFilter$1.doFilter(DelegatingPluginFilter.java:66) com.atlassian.applinks.core.rest.context.ContextFilter.doFilter(ContextFilter.java:25) com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.doFilter(DelegatingPluginFilter.java:74) com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:42) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:77) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:63) org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1322) com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:118) com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:52) org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1322) com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:77) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:63) org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1322) com.atlassian.bamboo.filter.AccessLogFilter.doFilter(AccessLogFilter.java:66) org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1322) org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265) org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125) org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275) com.atlassian.bamboo.filter.SeraphLoginFilter.doFilter(SeraphLoginFilter.java:74) org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275) org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149) org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98) com.atlassian.bamboo.filter.BambooAcegiProxyFilter.doFilter(BambooAcegiProxyFilter.java:25) org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1322) com.atlassian.bamboo.filter.LicenseFilter.doFilter(LicenseFilter.java:73) com.atlassian.core.filters.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:31) org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1322) com.atlassian.johnson.filters.AbstractJohnsonFilter.doFilter(AbstractJohnsonFilter.java:71) org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1322) com.atlassian.seraph.filter.SecurityFilter.doFilter(SecurityFilter.java:211) org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1322) com.atlassian.seraph.filter.BaseLoginFilter.doFilter(BaseLoginFilter.java:150) org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1322) com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46) com.atlassian.plugin.servlet.filter.DelegatingPluginFilter$1.doFilter(DelegatingPluginFilter.java:66) com.atlassian.oauth.serviceprovider.internal.servlet.OAuthFilter.doFilter(OAuthFilter.java:71) com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.doFilter(DelegatingPluginFilter.java:74) com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:42) com.atlassian.plugin.servlet.filter.DelegatingPluginFilter$1.doFilter(DelegatingPluginFilter.java:66) com.atlassian.security.auth.trustedapps.filter.TrustedApplicationsFilter.doFilter(TrustedApplicationsFilter.java:98) com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.doFilter(DelegatingPluginFilter.java:74) com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:42) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:77) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:63) org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1322) org.springframework.orm.hibernate.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:170) com.atlassian.bamboo.persistence.BambooSessionInViewFilter.doFilterInternal(BambooSessionInViewFilter.java:31) org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75) org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1322) com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:77) com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:63) org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1322) org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96) org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75) org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1322) org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:473) org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119) org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:516) org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:226) org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:921) org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:403) org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:184) org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:856) org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117) org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:114) org.eclipse.jetty.server.Server.handle(Server.java:352) org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:596) org.eclipse.jetty.server.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:1052) org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:590) org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:212) org.eclipse.jetty.server.HttpConnection.handle(HttpConnection.java:426) org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:510) org.eclipse.jetty.io.nio.SelectChannelEndPoint.access$000(SelectChannelEndPoint.java:34) org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:40) org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:450) java.lang.Thread.run(Unknown Source) Caused by: javax.naming.NoInitialContextException: Cannot instantiate class: com.sun.jndi.ldap.LdapCtxFactory [Root exception is java.lang.ClassNotFoundException: com.sun.jndi.ldap.LdapCtxFactory not found from bundle [com.atlassian.oauth.atlassian-oauth-service-provider-plugin]] javax.naming.spi.NamingManager.getInitialContext(Unknown Source) javax.naming.InitialContext.getDefaultInitCtx(Unknown Source) javax.naming.InitialContext.init(Unknown Source) javax.naming.InitialContext.(Unknown Source) javax.naming.directory.InitialDirContext.(Unknown Source) com.atlassian.user.impl.ldap.repository.DefaultLdapContextFactory.getLDAPContext(DefaultLdapContextFactory.java:87) ... 137 more Caused by: java.lang.ClassNotFoundException: com.sun.jndi.ldap.LdapCtxFactory not found from bundle [com.atlassian.oauth.atlassian-oauth-service-provider-plugin] org.springframework.osgi.util.BundleDelegatingClassLoader.findClass(BundleDelegatingClassLoader.java:103) org.springframework.osgi.util.BundleDelegatingClassLoader.loadClass(BundleDelegatingClassLoader.java:156) java.lang.ClassLoader.loadClass(Unknown Source) java.lang.Class.forName0(Native Method) java.lang.Class.forName(Unknown Source) com.sun.naming.internal.VersionHelper12.loadClass(Unknown Source) ... 143 more Caused by: java.lang.ClassNotFoundException: com.sun.jndi.ldap.LdapCtxFactory org.apache.felix.framework.ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:772) org.apache.felix.framework.ModuleImpl.access$200(ModuleImpl.java:73) org.apache.felix.framework.ModuleImpl$ModuleClassLoader.loadClass(ModuleImpl.java:1690) java.lang.ClassLoader.loadClass(Unknown Source) org.apache.felix.framework.ModuleImpl.getClassByDelegation(ModuleImpl.java:634) org.apache.felix.framework.Felix.loadBundleClass(Felix.java:1594) org.apache.felix.framework.BundleImpl.loadClass(BundleImpl.java:887) org.springframework.osgi.util.BundleDelegatingClassLoader.findClass(BundleDelegatingClassLoader.java:99) ... 148 more {code} The current workaround is to set the LDAP repository cache=""true"" as shown below: {code} {code} The problem only happens with LDAP user only",3 BAM-9687,"Possible race condition for build label addition","A couple of days ago we started getting error messages back from many of our builds along the lines of the following: {noformat} System Error Details xxx - 6. yyy - Default Job 10 : Build Labeller custom build post complete action failed to run (java.lang.RuntimeException : Cannot add label '15_0_05_0917' to build results 'xxxxx-yyy-JOB1-10') Occurred: 02 Sep 2011, 6:02:53 AM java.lang.RuntimeException: Cannot add label '15_0_05_0917' to build results 'xxx-yyy-JOB1-10' com.atlassian.bamboo.labels.LabelManagerImpl.addLabel(LabelManagerImpl.java:92) sun.reflect.GeneratedMethodAccessor1147.invoke(Unknown Source) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) java.lang.reflect.Method.invoke(Method.java:597) org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:304) org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149) org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) $Proxy42.addLabel(Unknown Source) sun.reflect.GeneratedMethodAccessor1147.invoke(Unknown Source) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) java.lang.reflect.Method.invoke(Method.java:597) org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:304) org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149) com.atlassian.bamboo.security.acegi.intercept.aopalliance.AuthorityOverrideMethodSecurityInterceptor.invoke(AuthorityOverrideMethodSecurityInterceptor.java:30) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) $Proxy42.addLabel(Unknown Source) com.atlassian.bamboo.plugins.labeller.BuildLabeller.labelBuildResult(BuildLabeller.java:304) com.atlassian.bamboo.plugins.labeller.BuildLabeller.labelBuildResult(BuildLabeller.java:291) com.atlassian.bamboo.plugins.labeller.BuildLabeller.call(BuildLabeller.java:85) sun.reflect.GeneratedMethodAccessor712.invoke(Unknown Source) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) java.lang.reflect.Method.invoke(Method.java:597) org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:304) org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149) org.springframework.orm.hibernate.HibernateInterceptor.invoke(HibernateInterceptor.java:117) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) $Proxy362.call(Unknown Source) com.atlassian.bamboo.v2.build.events.PostBuildCompletedEventListener$1.run(PostBuildCompletedEventListener.java:71) com.atlassian.bamboo.variable.CustomVariableContextRunnerImpl.execute(CustomVariableContextRunnerImpl.java:25) com.atlassian.bamboo.v2.build.events.PostBuildCompletedEventListener.performAction(PostBuildCompletedEventListener.java:52) com.atlassian.bamboo.v2.build.events.PostBuildCompletedEventListener.handleEvent(PostBuildCompletedEventListener.java:41) com.atlassian.event.legacy.LegacyListenerHandler$LegacyListenerInvoker.invoke(LegacyListenerHandler.java:55) com.atlassian.event.internal.AsynchronousAbleEventDispatcher$2.run(AsynchronousAbleEventDispatcher.java:60) java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) com.atlassian.bamboo.build.pipeline.concurrent.NamedThreadFactory$2.run(NamedThreadFactory.java:50) java.lang.Thread.run(Thread.java:662) Caused by: org.springframework.dao.IncorrectResultSizeDataAccessException: query did not return a unique result: 2 org.springframework.orm.hibernate.SessionFactoryUtils.convertHibernateAccessException(SessionFactoryUtils.java:590) org.springframework.orm.hibernate.HibernateAccessor.convertHibernateAccessException(HibernateAccessor.java:353) org.springframework.orm.hibernate.HibernateTemplate.execute(HibernateTemplate.java:375) org.springframework.orm.hibernate.HibernateTemplate.execute(HibernateTemplate.java:337) com.atlassian.bamboo.labels.LabelHibernateDao.findLabelByNameAndNamespace(LabelHibernateDao.java:35) sun.reflect.GeneratedMethodAccessor1269.invoke(Unknown Source) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) java.lang.reflect.Method.invoke(Method.java:597) org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:304) org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149) org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) $Proxy13.findLabelByNameAndNamespace(Unknown Source) com.atlassian.bamboo.labels.LabelManagerImpl.addLabel(LabelManagerImpl.java:392) com.atlassian.bamboo.labels.LabelManagerImpl$1.call(LabelManagerImpl.java:80) com.atlassian.bamboo.labels.LabelManagerImpl$1.call(LabelManagerImpl.java:75) com.atlassian.bamboo.labels.LabelManagerImpl.withWriteLock(LabelManagerImpl.java:207) com.atlassian.bamboo.labels.LabelManagerImpl.addLabel(LabelManagerImpl.java:74) ... 43 more {noformat} This happened for two separate and widely-used labels. It was pretty obvious from the hibernate exception that Bamboo had created duplicate labels in the DB. We ended up renaming the duplicate label and telling any builds that referenced it to use the original label. The relevant database contents prior to the fix were as follows: {noformat} mysql> select * from LABEL where NAME=""14_0_36_21""; +----------+------------+-----------+---------------------+---------------------+ | LABEL_ID | NAME | NAMESPACE | CREATED_DATE | UPDATED_DATE | +----------+------------+-----------+---------------------+---------------------+ | 55410738 | 14_0_36_21 | label | 2011-09-02 05:08:56 | 2011-09-02 05:08:56 | | 55410739 | 14_0_36_21 | label | 2011-09-02 05:08:56 | 2011-09-02 05:08:56 | +----------+------------+-----------+---------------------+---------------------+ 2 rows in set (0.00 sec) mysql> select * from BUILDRESULTSUMMARY_LABEL where LABEL_ID=""55410738""; +----------+----------+-----------------------+----------+------------+-----------+---------------------+---------------------+ | ID | LABEL_ID | BUILDRESULTSUMMARY_ID | BUILD_ID | PROJECT_ID | USER_NAME | CREATED_DATE | UPDATED_DATE | +----------+----------+-----------------------+----------+------------+-----------+---------------------+---------------------+ | 55345686 | 55410738 | 55054288 | 44367885 | 43155458 | NULL | 2011-09-02 05:08:56 | 2011-09-02 05:08:56 | +----------+----------+-----------------------+----------+------------+-----------+---------------------+---------------------+ 1 row in set (0.00 sec) mysql> select * from BUILDRESULTSUMMARY_LABEL where LABEL_ID=""55410739""; +----------+----------+-----------------------+----------+------------+-----------+---------------------+---------------------+ | ID | LABEL_ID | BUILDRESULTSUMMARY_ID | BUILD_ID | PROJECT_ID | USER_NAME | CREATED_DATE | UPDATED_DATE | +----------+----------+-----------------------+----------+------------+-----------+---------------------+---------------------+ | 55345687 | 55410739 | 55054290 | 51183804 | 43155458 | NULL | 2011-09-02 05:08:56 | 2011-09-02 05:08:56 | +----------+----------+-----------------------+----------+------------+-----------+---------------------+---------------------+ 1 row in set (0.00 sec) mysql> select * from BUILDRESULTSUMMARY where BUILDRESULTSUMMARY_ID=""55054288""; +-----------------------+---------------------+---------------------+----------------------+--------------+-------------+-----------------------+-------------------+---------------------+----------------------+----------+-------------+--------------------------------------------------------------------------+--------------+-------------+----------------+---------------------+---------------------+--------------------+--------------------+------------------+-------------------+---------------------+------------------+---------------------+----------------+------------+------------------+----------------------+-----------------------+--------------+ | BUILDRESULTSUMMARY_ID | CREATED_DATE | UPDATED_DATE | BUILD_KEY | BUILD_NUMBER | BUILD_STATE | SUCCESSFUL_TEST_COUNT | FAILED_TEST_COUNT | BUILD_DATE | BUILD_COMPLETED_DATE | DURATION | TIME_TO_FIX | TRIGGER_REASON | REVISION_KEY | DELTA_STATE | BUILD_AGENT_ID | VCS_UPDATE_TIME | QUEUE_TIME | FAILURE_TEST_COUNT | SUCCESS_TEST_COUNT | TOTAL_TEST_COUNT | BROKEN_TEST_COUNT | EXISTING_TEST_COUNT | FIXED_TEST_COUNT | TOTAL_TEST_DURATION | STAGERESULT_ID | BUILD_TYPE | LIFE_CYCLE_STATE | BUILD_CANCELLED_DATE | SKIPPED_COMMITS_COUNT | CHAIN_RESULT | +-----------------------+---------------------+---------------------+----------------------+--------------+-------------+-----------------------+-------------------+---------------------+----------------------+----------+-------------+--------------------------------------------------------------------------+--------------+-------------+----------------+---------------------+---------------------+--------------------+--------------------+------------------+-------------------+---------------------+------------------+---------------------+----------------+------------+------------------+----------------------+-----------------------+--------------+ | 55054288 | 2011-09-02 05:01:09 | 2011-09-02 05:08:55 | yyy-JOB1 | 3149 | Successful | NULL | NULL | 2011-09-02 05:02:22 | 2011-09-02 05:03:30 | 68367 | NULL | com.atlassian.bamboo.plugin.system.triggerReason:DependencyTriggerReason | 17035 | NONE | 41353237 | 2011-09-02 05:01:09 | 2011-09-02 05:01:09 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 55085118 | BUILD | Finished | NULL | 0 | 55054287 | +-----------------------+---------------------+---------------------+----------------------+--------------+-------------+-----------------------+-------------------+---------------------+----------------------+----------+-------------+--------------------------------------------------------------------------+--------------+-------------+----------------+---------------------+---------------------+--------------------+--------------------+------------------+-------------------+---------------------+------------------+---------------------+----------------+------------+------------------+----------------------+-----------------------+--------------+ 1 row in set (0.00 sec) mysql> select * from BUILDRESULTSUMMARY where BUILDRESULTSUMMARY_ID=""55054290""; +-----------------------+---------------------+---------------------+--------------------------+--------------+-------------+-----------------------+-------------------+---------------------+----------------------+----------+-------------+--------------------------------------------------------------------------+--------------+-------------+----------------+---------------------+---------------------+--------------------+--------------------+------------------+-------------------+---------------------+------------------+---------------------+----------------+------------+------------------+----------------------+-----------------------+--------------+ | BUILDRESULTSUMMARY_ID | CREATED_DATE | UPDATED_DATE | BUILD_KEY | BUILD_NUMBER | BUILD_STATE | SUCCESSFUL_TEST_COUNT | FAILED_TEST_COUNT | BUILD_DATE | BUILD_COMPLETED_DATE | DURATION | TIME_TO_FIX | TRIGGER_REASON | REVISION_KEY | DELTA_STATE | BUILD_AGENT_ID | VCS_UPDATE_TIME | QUEUE_TIME | FAILURE_TEST_COUNT | SUCCESS_TEST_COUNT | TOTAL_TEST_COUNT | BROKEN_TEST_COUNT | EXISTING_TEST_COUNT | FIXED_TEST_COUNT | TOTAL_TEST_DURATION | STAGERESULT_ID | BUILD_TYPE | LIFE_CYCLE_STATE | BUILD_CANCELLED_DATE | SKIPPED_COMMITS_COUNT | CHAIN_RESULT | +-----------------------+---------------------+---------------------+--------------------------+--------------+-------------+-----------------------+-------------------+---------------------+----------------------+----------+-------------+--------------------------------------------------------------------------+--------------+-------------+----------------+---------------------+---------------------+--------------------+--------------------+------------------+-------------------+---------------------+------------------+---------------------+----------------+------------+------------------+----------------------+-----------------------+--------------+ | 55054290 | 2011-09-02 05:02:17 | 2011-09-02 05:08:55 | xxx-JOB1 | 667 | Successful | NULL | NULL | 2011-09-02 05:03:40 | 2011-09-02 05:05:58 | 137913 | NULL | com.atlassian.bamboo.plugin.system.triggerReason:DependencyTriggerReason | 17035 | NONE | 33128455 | 2011-09-02 05:02:18 | 2011-09-02 05:02:17 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 55085119 | BUILD | Finished | NULL | 0 | 55054289 | +-----------------------+---------------------+---------------------+--------------------------+--------------+-------------+-----------------------+-------------------+---------------------+----------------------+----------+-------------+--------------------------------------------------------------------------+--------------+-------------+----------------+---------------------+---------------------+--------------------+--------------------+------------------+-------------------+---------------------+------------------+---------------------+----------------+------------+------------------+----------------------+-----------------------+--------------+ 1 row in set (0.01 sec) mysql> select * from BUILD where BUILD_ID=""44367885""; +----------+---------------------+---------------------+----------------------+----------+-------------+--------------+--------------------+---------------------+-------------------+-------------------------+---------------------+------------+------------------+-----------------+------------+-------------+----------+ | BUILD_ID | CREATED_DATE | UPDATED_DATE | FULL_KEY | BUILDKEY | TITLE | REVISION_KEY | FIRST_BUILD_NUMBER | LATEST_BUILD_NUMBER | NEXT_BUILD_NUMBER | SUSPENDED_FROM_BUILDING | MARKED_FOR_DELETION | PROJECT_ID | NOTIFICATION_SET | REQUIREMENT_SET | BUILD_TYPE | DESCRIPTION | STAGE_ID | +----------+---------------------+---------------------+----------------------+----------+-------------+--------------+--------------------+---------------------+-------------------+-------------------------+---------------------+------------+------------------+-----------------+------------+-------------+----------+ | 44367885 | 2011-07-03 06:10:37 | 2011-09-02 13:01:18 | yyy-JOB1 | JOB1 | Default Job | 17073 | 1 | 3157 | 3158 | | | 43155458 | 44466189 | 44400653 | JOB | | 44335117 | +----------+---------------------+---------------------+----------------------+----------+-------------+--------------+--------------------+---------------------+-------------------+-------------------------+---------------------+------------+------------------+-----------------+------------+-------------+----------+ 1 row in set (0.00 sec) mysql> select * from BUILD where BUILD_ID=""51183804""; +----------+---------------------+---------------------+--------------------------+----------+-------------+--------------+--------------------+---------------------+-------------------+-------------------------+---------------------+------------+------------------+-----------------+------------+-------------+----------+ | BUILD_ID | CREATED_DATE | UPDATED_DATE | FULL_KEY | BUILDKEY | TITLE | REVISION_KEY | FIRST_BUILD_NUMBER | LATEST_BUILD_NUMBER | NEXT_BUILD_NUMBER | SUSPENDED_FROM_BUILDING | MARKED_FOR_DELETION | PROJECT_ID | NOTIFICATION_SET | REQUIREMENT_SET | BUILD_TYPE | DESCRIPTION | STAGE_ID | +----------+---------------------+---------------------+--------------------------+----------+-------------+--------------+--------------------+---------------------+-------------------+-------------------------+---------------------+------------+------------------+-----------------+------------+-------------+----------+ | 51183804 | 2011-08-05 02:01:37 | 2011-09-02 13:01:19 | xxx-JOB1 | JOB1 | Default Job | 17073 | 330 | 675 | 676 | | | 43155458 | 51249340 | 51216523 | JOB | | 51150929 | +----------+---------------------+---------------------+--------------------------+----------+-------------+--------------+--------------------+---------------------+-------------------+-------------------------+---------------------+------------+------------------+-----------------+------------+-------------+----------+ 1 row in set (0.00 sec) {noformat} We hit a very similar issue with a plan creation race condition (BAM-9231) recently. This appears to be caused by a separate race condition affecting the creation of labels.",2 BAM-9692,"Test (and fix is required) agent and server wrapper with openjdk7",NULL,2 BAM-9750,"Update checkout task definition on repository update and clone",NULL,2 BAM-9758,"Add server pause button to UPM decorator","We need to add the server pause button to the UPM decorator and a warning that if you do not pause the server and upgrade a plugin, builds may fail.",2 BAM-9856,"My Bamboo looks weird when more than one commit is involved in a build :-)","It links build only to the latest user commit. There's a bug in getResultSummariesByChangeSetId method query that returns result summaries only if the changeset is the latest changeset.",1 BAM-9868,"Bamboo should use default application link to retrieve issues +from jira 4.2.x+ when no project entity link is set up for a plan.","Steps to reproduce: 1) grab {color:red}jira 4.2{color} (we can't reproduce problem on jira 4.3+) 2) grab bamboo 3.2.2 3) set up an application link from bamboo to jira, use outgoing ""basic access"" 4) set up a test project with a test issue on jira instance 5) set up a test project with a test plan on bamboo instance 5.1) force that plan to detect changes on a repository that will contain commit with jira-issue comment 5.2) for example: {noformat} mkdir test ; cd test hg init ; echo ""aaa"" >> aaa.txt ; hg add aaa.txt ; hg commit --user ""user"" -m ""initial"" echo ""aaa"" >> aaa.txt ; hg commit --user ""user"" -m ""BAM-9867 message message"" # repeat above line when you need to trigger bamboo build {noformat} 6) go to build result page of the plan, build should have contain commits with ""BAM-9867"" comments. (replace ""BAM-9867"" with your jira instance test issue) 7.1) when you click on ""BAM-9867"" you will get ""unexpected error has occured"" 7.2) while you should be redirected to the jira page 8.1) on the JIRA issues panel you should have see your issue, with it's icon, and with link to your jira instance 8.2) instead you will see something like ""Can't retrieve issues"" or similar error, I don't remember. 9) obviosly ""Issues"" tab is borked as well. ",2 BAM-9941,"ActiveMQ JMS data file no longer found causing builds not able to launch","{noformat:title=BEAC server log JMS summary snipppet} 2011-10-09 18:34:29,222 ERROR [BrokerService[bamboo] Task] [Queue] Failed to page in more queue messages java.lang.RuntimeException: java.lang.RuntimeException: java.io.IOException: Could not locate data file /opt/j2ee/domains/bamboo.atlassian.com/confluence/webapps/atlassian-bamboo/data/current/jms-store/bamboo/KahaDB/db-1782.log at org.apache.activemq.broker.region.cursors.AbstractStoreCursor.reset(AbstractStoreCursor.java:113) at org.apache.activemq.broker.region.cursors.StoreQueueCursor.reset(StoreQueueCursor.java:157) at org.apache.activemq.broker.region.Queue.doPageIn(Queue.java:1677) at org.apache.activemq.broker.region.Queue.pageInMessages(Queue.java:1897) at org.apache.activemq.broker.region.Queue.iterate(Queue.java:1424) at org.apache.activemq.thread.PooledTaskRunner.runTask(PooledTaskRunner.java:122) at org.apache.activemq.thread.PooledTaskRunner$1.run(PooledTaskRunner.java:43) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:662) Caused by: java.lang.RuntimeException: java.io.IOException: Could not locate data file /opt/j2ee/domains/bamboo.atlassian.com/confluence/webapps/atlassian-bamboo/data/current/jms-store/bamboo/KahaDB/db-1782.log at org.apache.activemq.broker.region.cursors.AbstractStoreCursor.fillBatch(AbstractStoreCursor.java:265) at org.apache.activemq.broker.region.cursors.AbstractStoreCursor.reset(AbstractStoreCursor.java:110) ... 9 more Caused by: java.io.IOException: Could not locate data file /opt/j2ee/domains/bamboo.atlassian.com/confluence/webapps/atlassian-bamboo/data/current/jms-store/bamboo/KahaDB/db-1782.log at org.apache.kahadb.journal.Journal.getDataFile(Journal.java:345) at org.apache.kahadb.journal.Journal.read(Journal.java:592) at org.apache.activemq.store.kahadb.MessageDatabase.load(MessageDatabase.java:786) at org.apache.activemq.store.kahadb.KahaDBStore.loadMessage(KahaDBStore.java:956) at org.apache.activemq.store.kahadb.KahaDBStore$KahaDBMessageStore$5.execute(KahaDBStore.java:494) at org.apache.kahadb.page.Transaction.execute(Transaction.java:728) at org.apache.activemq.store.kahadb.KahaDBStore$KahaDBMessageStore.recoverNextMessages(KahaDBStore.java:485) at org.apache.activemq.store.ProxyMessageStore.recoverNextMessages(ProxyMessageStore.java:88) at org.apache.activemq.broker.region.cursors.QueueStorePrefetch.doFillBatch(QueueStorePrefetch.java:97) at org.apache.activemq.broker.region.cursors.AbstractStoreCursor.fillBatch(AbstractStoreCursor.java:262) ... 10 more 2011-10-09 18:34:29,351 ERROR [BrokerService[bamboo] Task] [Journal] Looking for key 1782 but not found in fileMap: {1783=db-1783.log number = 1783 , length = 33554836, 1786=db-1786.log number = 1786 , length = 34109378, 1787=db-1787.log number = 1787 , length = 33556132, 1280=db-1280.log number = 1280 , length = 33556132, 1784=db-1784.log number = 1784 , length = 33554712, 1790=db-1790.log number = 1790 , length = 33606358, 1791=db-1791.log number = 1791 , length = 35664711, 1788=db-1788.log number = 1788 , length = 33581527, 1789=db-1789.log number = 1789 , length = 33557879, 1806=db-1806.log number = 1806 , length = 33592825, 1807=db-1807.log number = 1807 , length = 16003513, 1804=db-1804.log number = 1804 , length = 33635071, 1805=db-1805.log number = 1805 , length = 33554607, 1802=db-1802.log number = 1802 , length = 33580009, 1803=db-1803.log number = 1803 , length = 33554674, 1800=db-1800.log number = 1800 , length = 33567294, 1801=db-1801.log number = 1801 , length = 33819685, 1798=db-1798.log number = 1798 , length = 33971508, 1279=db-1279.log number = 1279 , length = 33554625, 1799=db-1799.log number = 1799 , length = 33630766, 1796=db-1796.log number = 1796 , length = 33651278, 1797=db-1797.log number = 1797 , length = 45623364, 1794=db-1794.log number = 1794 , length = 33666339, 1795=db-1795.log number = 1795 , length = 34512258, 1792=db-1792.log number = 1792 , length = 35143715, 1793=db-1793.log number = 1793 , length = 33776959} {noformat} {noformat:title=remote agents unable to send heartbeats} 2011-10-10 09:55:43,655 INFO [QuartzScheduler_Worker-9] [AgentHeartBeatJob] Not sending a new heartbeat since an old one is still being sent, last successful transmission time was 13 seconds ago, dropping the current heartbeat... 2011-10-10 10:05:43,655 INFO [QuartzScheduler_Worker-6] [AgentHeartBeatJob] Not sending a new heartbeat since an old one is still being sent, last successful transmission time was 7 seconds ago, dropping the current heartbeat.. {noformat} Likely caused by these ActiveMQ Issues: https://issues.apache.org/jira/browse/AMQ-3310 or: https://issues.apache.org/jira/browse/AMQ-3470 Reported internally in: https://extranet.atlassian.com/jira/browse/BUILDENG-649 https://extranet.atlassian.com/jira/browse/BUILDENG-651 The JMS spam caused the server logs to roll over so I was unable to capture the beginning of the problem. Confirmed server side that {{db-1782.log}} in the JMS repo was not present",2 BAM-9957,"Scheduled backup fails randomly while expiration is running at the same time.","As reported in https://support.atlassian.com/browse/BSP-5570 We should provide a check: - backup should wait for running expiration to finish - expiration should wait for running backup to finish",3 BAM-9976,"Bamboo AMPS setup should hit the updateDefaultsLocalCapability link after import","Its an absolute pain when developing amps plugins because everytime bamboo starts up it doesn't have and jdk's or executables set up. If it could click the updateDefaultsLocalCapability action after import, all this stuff would get pulled in from your local environment.",2 BAM-10038,"POMs from 3.3.2 Source code released to customers is still using ""3.3-SNAPSHOT""","POMs from 3.3.2 Source code released to customers is still using ""3.3-SNAPSHOT"".",1 BAM-10054,"Streams 5 aggregation for Studio","Chai knows more about this than I do. Ill get him to comment here.",1 BAM-10057,"Icons in Currently Building list are cut off",NULL,1 BAM-10058,"Test summary should show how many tests have been Quarentined (if any)",NULL,1 BAM-10059,"Different table for Quarantined test results on Result Summary",NULL,2 BAM-10060,"Quarantine table on Tests tab should have column to show which user quarantined the test",NULL,2 BAM-10061,"Button for enabling and disabling a test in Quarantine on the Result summary",NULL,1 BAM-10062,"Make test Quarantine work for all Tasks that have support for Tests",NULL,1 BAM-10063,"Styling for new combined Plan Status and History Navigator",NULL,3 BAM-10064,"Improved email templates","Merge in email work from ShipIt. Test across common email clients (using [http://litmus.com] would make this a lot quicker). Polish the designs. Screenshots of the new (already done) emails: !https://img.skitch.com/20111028-ca1jwycmp9ph2aytuwi2jwiigm.jpg! !https://img.skitch.com/20111028-8fg75bbkucqw618pt7qu9qtndx.jpg!",2 BAM-10089,"Improvements to EBS mounting","Includes support for Windows.",5 BAM-10090,"Indexing problem in table USER_COMMIT because of column COMMIT_REVISION text type","This error happens because the column COMMIT_REVISION in the table USER_COMMIT is set to TEXT, {code} 2011-10-24 12:06:05,071 ERROR [main] [SchemaUpdate] Unsuccessful: create index commit_rev_idx on USER_COMMIT (COMMIT_REVISION) 2011-10-24 12:06:05,071 ERROR [main] [SchemaUpdate] BLOB/TEXT column 'COMMIT_REVISION' used in key specification without a key length {code} There is a limitation on indexing [TEXT type fields|http://stackoverflow.com/questions/1827063/mysql-error-key-specification-without-a-key-length]. As [this post|http://forums.mysql.com/read.php?98,37000,37052] states, we can have VARCHAR type with maximum 65,532 bytes after MySQL 5.0.3. We should change the column type from TEXT to VARCHAR.",2 BAM-10092,"Bamboo 3.3 does not respect @RequiresRestart ","I tried bumping UPM to support Bamboo 3.3 from 3.1, and we got some failing tests with regards to the tests of the @RequiresRestart. Everything worked in Bamboo 3.1, but there's something wrong in Bamboo 3.3. Note that this only happens when I'm installing a new plugin with a module that requires restart. But it works as expected when ""upgrading"" a plugin (i.e., @RequiresRestart is honored)",3 BAM-10094,"Newer Bamboo versions are not shipping the svnkit for the jsvn script.","Bamboo 3.3.X versions are not being shipped with all the svnkit necessary for the jsvn app. Currently, only svnkit-cli-1.2.1.5297.jar is available at /scripts/lib. However, svnkit-1.2.1.5297.jar is also necessary. Since the svnkit lib is missing, the following exception is reported when running jsvn: {code} Exception in thread ""main"" java.lang.NoClassDefFoundError: org/tmatesoft/svn/core/SVNException org.tmatesoft.svn.cli.SVN.main(SVN.java:22) Caused by: java.lang.ClassNotFoundException: org.tmatesoft.svn.core.SVNException java.net.URLClassLoader$1.run(URLClassLoader.java:202) java.security.AccessController.doPrivileged(Native Method) java.net.URLClassLoader.findClass(URLClassLoader.java:190) java.lang.ClassLoader.loadClass(ClassLoader.java:306) sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) java.lang.ClassLoader.loadClass(ClassLoader.java:247) ... 1 more {code}",1 BAM-10095,"An administrator should be able to enable or disable Agent Authentication",NULL,2 BAM-10096,"An administrator must be able to approve an agent when it connects for the first time",NULL,3 BAM-10097,"An administrator should be able to provide a wild card mask to validate an agents IP address",NULL,1 BAM-10100,"An administrator should be given the appropriate directions in the Agent log to approve the agent if it is not approved",NULL,1 BAM-10101,"An administrator should be provided a way to approve all connected agents","* Should have a confirm screen so the admin can review the agents about to be approved",1 BAM-10104,"Repository Isolation not available via the UI in Bamboo 3.3","Followed documentation to configure repository isolation: http://confluence.atlassian.com/display/BAMBOO/Configuring+Repository+Isolation+for+Maven+Executables but it doesn't seem to be present for Maven 2/3 builder",1 BAM-10105,"Can't access artifacts due to permission error",NULL,2 BAM-10106,"An administrator should be able to auto accept connected agents that are connected when the agent auth is enabled",NULL,1 BAM-10107,"An administrator should be able to revoke approved keys",NULL,1 BAM-10108,"Merge and add Functional test for Agent Authentication",NULL,2 BAM-10171,"HelpPathResolver shouldn't throw an NPE when called with a null argument","During BAM-10121, I noticed: HelpPathResolverTest#helpPathResolverAcceptsNullKey fails with an NPE. To reproduce: * In CtkIntegrationTest, remove 'excludes' * Execute it. When this issue is resolved, you need to remove the exclusion from the Ctk test.",1 BAM-10178,"Validate and properly used repository name on Plan create wizard",NULL,1 BAM-10202,"Failed build email should include build errors iff only one Job failed and no tests failed","We should show the ""Build Errors"" iff only one Job failed, like the UI At the moment one has to click through to determine why the build failed.",1 BAM-10254,"CSS images do not load after base url changes",NULL,2 BAM-10344,"User can override Plan Branch Build Strategy",NULL,2 BAM-10354,"Update breadcrumbs ",NULL,2 BAM-10355,"Tabbed content re-design",NULL,4 BAM-10356,"New Plan Navigator","Stages and Job list only ",1 BAM-10357,"New Navigation Sidebar Layout","New layout for the sidebar ",2 BAM-10358,"New Branch List Component","Needs to work on: * Plan Summary * Plan Configuration (sidebar) * Branch Selector Drop-down ",3 BAM-10359,"Non-Tabbed content re-design",NULL,2 BAM-10360,"New Plan Statistics component",NULL,1 BAM-10361,"Update Status Ribbon for new UI",NULL,1 BAM-10362,"Global Admin Re-Design","Chrome and navigation bar changes ",4 BAM-10426,"Event Listeners",NULL,2 BAM-10427,"Build Process plugin points",NULL,2 BAM-10429,"SAL Plugin","Should branches be considered a ""Project""",1 BAM-10430,"Random config changes to master dont cause branch to blow up",NULL,3 BAM-10438,"Functional test TestReportingTest tests are not being run and must be updated for the new source repository code","As above, TestReportingTest is not being run in the CI tests. It still uses all the old source repo code so must be updated before it is re-included.",2 BAM-10503,"Remote triggering for branches","Triggering the Master plan should also trigger the relevent child plans",1 BAM-10577,"Bamboo page constantly refreshes","Note: this actually affects {{3.4-rc2}} on CBAC. https://confluence-bamboo.atlassian.com/browse/CONFREL-CONFRELSTABLESTUDIO-22 It only kept refreshing the page while the build was scheduled to run and had no log output.",1 BAM-10613,"Validation for when the default repository is changed on a Plan with Plan Branches","What happens to the branches when the repository changes to a repository that does not contain the same branches or does not support Plan Branches at all? We need PM input for this.",2 BAM-10651,"Html email show as text after gmail rewrites email","In any circumstance where gmail actually rewrites the email content e.g. to distribute to group members. It will rewrite the mulipart parts in an incorrect order, resulting in the html part being first instead of last. We have tracked this down to a superfluous part which atlassian-mail adds to the top of the emails. When removed the emails get rewriten correctly. ",2 BAM-10656,"NPE in bamboo sandbox plugin","java.lang.NullPointerException com.atlassian.sandbox.bamboo.SandboxContext.isEnabled(SandboxContext.java:151) com.atlassian.sandbox.bamboo.actions.SandboxPreChainAction.execute(SandboxPreChainAction.java:21) com.atlassian.bamboo.chains.ChainPluginSupportImpl$1.run(ChainPluginSupportImpl.java:83) com.atlassian.bamboo.variable.CustomVariableContextRunnerImpl.execute(CustomVariableContextRunnerImpl.java:27) com.atlassian.bamboo.chains.ChainPluginSupportImpl.chainStarted(ChainPluginSupportImpl.java:71) com.atlassian.bamboo.chains.ChainExecutionManagerImpl.start(ChainExecutionManagerImpl.java:133) sun.reflect.GeneratedMethodAccessor264.invoke(Unknown Source) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) java.lang.reflect.Method.invoke(Method.java:597) org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:304) org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149) org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) $Proxy73.start(Unknown Source) sun.reflect.GeneratedMethodAccessor264.invoke(Unknown Source) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) java.lang.reflect.Method.invoke(Method.java:597) org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:304) org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:198) $Proxy74.start(Unknown Source) com.atlassian.bamboo.plan.PlanExecutionManagerImpl.startWithLockTaken(PlanExecutionManagerImpl.java:249) com.atlassian.bamboo.plan.PlanExecutionManagerImpl.access$100(PlanExecutionManagerImpl.java:40) com.atlassian.bamboo.plan.PlanExecutionManagerImpl$1.call(PlanExecutionManagerImpl.java:236) com.atlassian.bamboo.plan.PlanExecutionManagerImpl$1.call(PlanExecutionManagerImpl.java:230) com.atlassian.util.concurrent.ManagedLocks$ManagedLockImpl.withLock(ManagedLocks.java:324) com.atlassian.bamboo.plan.PlanExecutionLockServiceImpl.lock(PlanExecutionLockServiceImpl.java:68) com.atlassian.bamboo.plan.PlanExecutionManagerImpl.doWithProcessLock(PlanExecutionManagerImpl.java:360) com.atlassian.bamboo.plan.PlanExecutionManagerImpl.start(PlanExecutionManagerImpl.java:229) com.atlassian.bamboo.v2.trigger.ChangeDetectionListener.handleEvent(ChangeDetectionListener.java:47) sun.reflect.GeneratedMethodAccessor231.invoke(Unknown Source) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) java.lang.reflect.Method.invoke(Method.java:597) com.atlassian.event.internal.SingleParameterMethodListenerInvoker.invoke(SingleParameterMethodListenerInvoker.java:36) com.atlassian.event.internal.AsynchronousAbleEventDispatcher$2.run(AsynchronousAbleEventDispatcher.java:60) java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) com.atlassian.bamboo.build.pipeline.concurrent.NamedThreadFactory$2.run(NamedThreadFactory.java:50) java.lang.Thread.run(Thread.java:680)",1 BAM-10677,"Bamboo executes all ""tries"", even if no new code is commited during the Quiet Period in Subversion","If no new commits are done during the Quite Period, Bamboo should not run one more try. However, even if no code is committed, Bamboo is always waiting the maximum number of tries: {code} 2012-01-19 19:54:29,054 INFO [qtp1761506447-530] [AccessLogFilter] 127.0.0.1 GET http://nastro-azzuro:8085/updateAndBuild.action?buildKey=MSFAADMIN-MAX 88578kb 2012-01-19 19:54:29,180 INFO [AtlassianEvent::0-BAM::EVENTS:pool-1-thread-2] [SvnRepository] Collecting changes for 'PROJ-MAX' on path 'https://svn.atlassian.com/svn/private/atlassian/bambootest/trunk/successBuild' from version 169163 to 169163 2012-01-19 19:54:29,191 INFO [AtlassianEvent::0-BAM::EVENTS:pool-1-thread-2] [DefaultChangeDetectionManager] Found one change for Plan 'PROJ-MAX', waiting 30 seconds to see if there are any more... (4 retries remaining) 2012-01-19 19:54:59,218 INFO [AtlassianEvent::0-BAM::EVENTS:pool-1-thread-2] [SvnRepository] Collecting changes for 'PROJ-MAX' on path 'https://svn.atlassian.com/svn/private/atlassian/bambootest/trunk/successBuild' from version 169163 to 169163 2012-01-19 19:54:59,231 INFO [AtlassianEvent::0-BAM::EVENTS:pool-1-thread-2] [DefaultChangeDetectionManager] Found one change for Plan 'PROJ-MAX', waiting 30 seconds to see if there are any more... (3 retries remaining) 2012-01-19 19:55:29,259 INFO [AtlassianEvent::0-BAM::EVENTS:pool-1-thread-2] [SvnRepository] Collecting changes for 'PROJ-MAX' on path 'https://svn.atlassian.com/svn/private/atlassian/bambootest/trunk/successBuild' from version 169163 to 169163 2012-01-19 19:55:29,272 INFO [AtlassianEvent::0-BAM::EVENTS:pool-1-thread-2] [DefaultChangeDetectionManager] Found one change for Plan 'PROJ-MAX', waiting 30 seconds to see if there are any more... (2 retries remaining) 2012-01-19 19:55:59,299 INFO [AtlassianEvent::0-BAM::EVENTS:pool-1-thread-2] [SvnRepository] Collecting changes for 'PROJ-MAX' on path 'https://svn.atlassian.com/svn/private/atlassian/bambootest/trunk/successBuild' from version 169163 to 169163 2012-01-19 19:55:59,313 INFO [AtlassianEvent::0-BAM::EVENTS:pool-1-thread-2] [DefaultChangeDetectionManager] Found one change for Plan 'PROJ-MAX', waiting 30 seconds to see if there are any more... (one retry remaining) 2012-01-19 19:56:29,342 INFO [AtlassianEvent::0-BAM::EVENTS:pool-1-thread-2] [SvnRepository] Collecting changes for 'PROJ-MAX' on path 'https://svn.atlassian.com/svn/private/atlassian/bambootest/trunk/successBuild' from version 169163 to 169163 2012-01-19 19:56:29,352 INFO [AtlassianEvent::0-BAM::EVENTS:pool-1-thread-2] [ChangeDetectionListenerAction] Change detection found 5 changes {code}",2 BAM-10693,"Allow Bamboo to ignore commits with certain commit messages","This is a useful feature, but it's infrastructure to allow us to ignore merge commits by Bamboo.",3 BAM-10706,"Official Support OpenJDK 1.7",NULL,2 BAM-10804,"Dependencies for Plan Branches","Branches will trigger off dependencies of the child plan, iff the child plan has a branch name that exactly matches the branch. Configuration for this will be enabled in the Plan level's Branch configuration",3 BAM-10841,"Tab label is wrong for Build Summary",NULL,1 BAM-10870,"Detect Branches should show dialog where user can pick branches to create",NULL,5 BAM-10882,"Branch variables page should have the key be a select list with optgroups for global vs plan",!https://extranet.atlassian.com/download/attachments/1964972659/branch_variables_add.png?version=1&modificationDate=1329107925466!,2 BAM-10890,"NPE in Branch detection when timeout occurs","{noformat} 2012-02-14 10:05:31,489 WARN [StreamsCompletionService::thread-110] [ActivityProviderConnectionMonitorImpl$ActivityMonitorJob] Could not reach provider Your Company JIRA; it will be omitted from the stream. The connection will be retried in 5 minutes 2012-02-14 10:07:16,931 ERROR [1-BranchDetectionBackgroundThread:pool-4-thread-2] [BranchDetectionServiceImpl] Repository error while detecting branches for plan RAILS-RAILS. https://github.com/rails/rails.git: cannot open git-upload-pack com.atlassian.bamboo.repository.RepositoryException: https://github.com/rails/rails.git: cannot open git-upload-pack com.atlassian.bamboo.plugins.git.GitOperationHelper.getOpenBranches(GitOperationHelper.java:284) com.atlassian.bamboo.plugins.git.GitRepository.getOpenBranches(GitRepository.java:385) com.atlassian.bamboo.repository.RepositoryCachingFacade$1.load(RepositoryCachingFacade.java:31) com.atlassian.bamboo.repository.RepositoryCachingFacade$1.load(RepositoryCachingFacade.java:26) com.google.common.cache.CustomConcurrentHashMap$ComputingValueReference.compute(CustomConcurrentHashMap.java:3426) com.google.common.cache.CustomConcurrentHashMap$Segment.compute(CustomConcurrentHashMap.java:2322) com.google.common.cache.CustomConcurrentHashMap$Segment.getOrCompute(CustomConcurrentHashMap.java:2291) com.google.common.cache.CustomConcurrentHashMap.getOrCompute(CustomConcurrentHashMap.java:3802) com.google.common.cache.ComputingCache.get(ComputingCache.java:46) com.atlassian.bamboo.repository.RepositoryCachingFacade.getOpenBranches(RepositoryCachingFacade.java:49) com.atlassian.bamboo.plan.branch.BranchDetectionServiceImpl.getOpenBranches(BranchDetectionServiceImpl.java:328) com.atlassian.bamboo.plan.branch.BranchDetectionServiceImpl.createNewBranchesForChainNoLock(BranchDetectionServiceImpl.java:252) com.atlassian.bamboo.plan.branch.BranchDetectionServiceImpl.access$200(BranchDetectionServiceImpl.java:50) com.atlassian.bamboo.plan.branch.BranchDetectionServiceImpl$BranchDetector.run(BranchDetectionServiceImpl.java:168) com.atlassian.bamboo.build.pipeline.concurrent.NamedThreadFactory$2.run(NamedThreadFactory.java:50) java.lang.Thread.run(Thread.java:680) Caused by: org.shaded.eclipse.jgit.errors.TransportException: https://github.com/rails/rails.git: cannot open git-upload-pack org.shaded.eclipse.jgit.transport.TransportHttp.connect(TransportHttp.java:466) org.shaded.eclipse.jgit.transport.TransportHttp.openFetch(TransportHttp.java:276) com.atlassian.bamboo.plugins.git.GitOperationHelper.getOpenBranches(GitOperationHelper.java:266) ... 15 more Caused by: java.net.SocketTimeoutException: Read timed out java.net.SocketInputStream.socketRead0(Native Method) java.net.SocketInputStream.read(SocketInputStream.java:129) com.sun.net.ssl.internal.ssl.InputRecord.readFully(InputRecord.java:293) com.sun.net.ssl.internal.ssl.InputRecord.readV3Record(InputRecord.java:405) com.sun.net.ssl.internal.ssl.InputRecord.read(InputRecord.java:360) com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:830) com.sun.net.ssl.internal.ssl.SSLSocketImpl.readDataRecord(SSLSocketImpl.java:787) com.sun.net.ssl.internal.ssl.AppInputStream.read(AppInputStream.java:75) java.io.BufferedInputStream.fill(BufferedInputStream.java:218) java.io.BufferedInputStream.read1(BufferedInputStream.java:258) java.io.BufferedInputStream.read(BufferedInputStream.java:317) sun.net.www.http.HttpClient.parseHTTPHeader(HttpClient.java:695) sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:640) sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1195) java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:379) sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:318) org.shaded.eclipse.jgit.util.HttpSupport.response(HttpSupport.java:167) org.shaded.eclipse.jgit.transport.TransportHttp.connect(TransportHttp.java:429) ... 17 more 2012-02-14 10:07:16,931 ERROR [1-BranchDetectionBackgroundThread:pool-4-thread-3] [BranchDetectionServiceImpl] Repository error while detecting branches for plan JOYENT-NODE. https://github.com/joyent/node.git: cannot open git-upload-pack com.atlassian.bamboo.repository.RepositoryException: https://github.com/joyent/node.git: cannot open git-upload-pack com.atlassian.bamboo.plugins.git.GitOperationHelper.getOpenBranches(GitOperationHelper.java:284) com.atlassian.bamboo.plugins.git.GitRepository.getOpenBranches(GitRepository.java:385) com.atlassian.bamboo.repository.RepositoryCachingFacade$1.load(RepositoryCachingFacade.java:31) com.atlassian.bamboo.repository.RepositoryCachingFacade$1.load(RepositoryCachingFacade.java:26) com.google.common.cache.CustomConcurrentHashMap$ComputingValueReference.compute(CustomConcurrentHashMap.java:3426) com.google.common.cache.CustomConcurrentHashMap$Segment.compute(CustomConcurrentHashMap.java:2322) com.google.common.cache.CustomConcurrentHashMap$Segment.getOrCompute(CustomConcurrentHashMap.java:2291) com.google.common.cache.CustomConcurrentHashMap.getOrCompute(CustomConcurrentHashMap.java:3802) com.google.common.cache.ComputingCache.get(ComputingCache.java:46) com.atlassian.bamboo.repository.RepositoryCachingFacade.getOpenBranches(RepositoryCachingFacade.java:49) com.atlassian.bamboo.plan.branch.BranchDetectionServiceImpl.getOpenBranches(BranchDetectionServiceImpl.java:328) com.atlassian.bamboo.plan.branch.BranchDetectionServiceImpl.createNewBranchesForChainNoLock(BranchDetectionServiceImpl.java:252) com.atlassian.bamboo.plan.branch.BranchDetectionServiceImpl.access$200(BranchDetectionServiceImpl.java:50) com.atlassian.bamboo.plan.branch.BranchDetectionServiceImpl$BranchDetector.run(BranchDetectionServiceImpl.java:168) com.atlassian.bamboo.build.pipeline.concurrent.NamedThreadFactory$2.run(NamedThreadFactory.java:50) java.lang.Thread.run(Thread.java:680) Caused by: org.shaded.eclipse.jgit.errors.TransportException: https://github.com/joyent/node.git: cannot open git-upload-pack org.shaded.eclipse.jgit.transport.TransportHttp.connect(TransportHttp.java:466) org.shaded.eclipse.jgit.transport.TransportHttp.openFetch(TransportHttp.java:276) com.atlassian.bamboo.plugins.git.GitOperationHelper.getOpenBranches(GitOperationHelper.java:266) ... 15 more Caused by: java.net.SocketTimeoutException: Read timed out java.net.SocketInputStream.socketRead0(Native Method) java.net.SocketInputStream.read(SocketInputStream.java:129) com.sun.net.ssl.internal.ssl.InputRecord.readFully(InputRecord.java:293) com.sun.net.ssl.internal.ssl.InputRecord.readV3Record(InputRecord.java:405) com.sun.net.ssl.internal.ssl.InputRecord.read(InputRecord.java:360) com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:830) com.sun.net.ssl.internal.ssl.SSLSocketImpl.readDataRecord(SSLSocketImpl.java:787) com.sun.net.ssl.internal.ssl.AppInputStream.read(AppInputStream.java:75) java.io.BufferedInputStream.fill(BufferedInputStream.java:218) java.io.BufferedInputStream.read1(BufferedInputStream.java:258) java.io.BufferedInputStream.read(BufferedInputStream.java:317) sun.net.www.http.HttpClient.parseHTTPHeader(HttpClient.java:695) sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:640) sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1195) java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:379) sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:318) org.shaded.eclipse.jgit.util.HttpSupport.response(HttpSupport.java:167) org.shaded.eclipse.jgit.transport.TransportHttp.connect(TransportHttp.java:429) ... 17 more 2012-02-14 10:07:16,933 INFO [1-BranchDetectionBackgroundThread:pool-4-thread-3] [BranchDetectionServiceImpl] [BRANCH_DETECTION] No branches for plan JOYENT-NODE found in VCS 2012-02-14 10:07:16,932 INFO [1-BranchDetectionBackgroundThread:pool-4-thread-2] [BranchDetectionServiceImpl] [BRANCH_DETECTION] No branches for plan RAILS-RAILS found in VCS 2012-02-14 10:07:16,937 ERROR [1-BranchDetectionBackgroundThread:pool-4-thread-3] [NamedThreadFactory] Uncaught exception in thread 1-BranchDetectionBackgroundThread:pool-4-thread-3 java.lang.NullPointerException com.google.common.base.Preconditions.checkNotNull(Preconditions.java:187) com.google.common.collect.Lists.newArrayList(Lists.java:117) com.atlassian.bamboo.plan.branch.BranchDetectionServiceImpl.newBranches(BranchDetectionServiceImpl.java:339) com.atlassian.bamboo.plan.branch.BranchDetectionServiceImpl.createNewBranchesForChainNoLock(BranchDetectionServiceImpl.java:283) com.atlassian.bamboo.plan.branch.BranchDetectionServiceImpl.access$200(BranchDetectionServiceImpl.java:50) com.atlassian.bamboo.plan.branch.BranchDetectionServiceImpl$BranchDetector.run(BranchDetectionServiceImpl.java:168) com.atlassian.bamboo.build.pipeline.concurrent.NamedThreadFactory$2.run(NamedThreadFactory.java:50) java.lang.Thread.run(Thread.java:680) 2012-02-14 10:07:16,939 ERROR [1-BranchDetectionBackgroundThread:pool-4-thread-2] [NamedThreadFactory] Uncaught exception in thread 1-BranchDetectionBackgroundThread:pool-4-thread-2 java.lang.NullPointerException com.google.common.base.Preconditions.checkNotNull(Preconditions.java:187) com.google.common.collect.Lists.newArrayList(Lists.java:117) com.atlassian.bamboo.plan.branch.BranchDetectionServiceImpl.newBranches(BranchDetectionServiceImpl.java:339) com.atlassian.bamboo.plan.branch.BranchDetectionServiceImpl.createNewBranchesForChainNoLock(BranchDetectionServiceImpl.java:283) com.atlassian.bamboo.plan.branch.BranchDetectionServiceImpl.access$200(BranchDetectionServiceImpl.java:50) com.atlassian.bamboo.plan.branch.BranchDetectionServiceImpl$BranchDetector.run(BranchDetectionServiceImpl.java:168) com.atlassian.bamboo.build.pipeline.concurrent.NamedThreadFactory$2.run(NamedThreadFactory.java:50) java.lang.Thread.run(Thread.java:680) ^C2012-02-14 10:07:52,905 INFO [ActiveMQ ShutdownHook] [BrokerService] ActiveMQ Message Broker (bamboo, ID:shackle.sydney.atlassian.com-57424-1329086386684-0:1) is shutting down 2012-02-14 10:07:53,688 INFO [ActiveMQ ShutdownHook] [TransportConnector] Connector tcp://shackle.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000 Stopped 2012-02-14 10:07:53,696 INFO [ActiveMQ ShutdownHook] [TransportConnector] Connector vm://bamboo Stopped 2012-02-14 10:07:53,705 INFO [ActiveMQ ShutdownHook] [PListStore] PListStore:/Users/jdumay/bamboo-home/jms-store/bamboo/tmp_storage stopped 2012-02-14 10:07:53,705 INFO [ActiveMQ ShutdownHook] [KahaDBStore] Stopping async queue tasks 2012-02-14 10:07:53,705 INFO [ActiveMQ ShutdownHook] [KahaDBStore] Stopping async topic tasks 2012-02-14 10:07:53,705 INFO [ActiveMQ ShutdownHook] [KahaDBStore] Stopped KahaDB 2012-02-14 10:07:54,016 INFO [ActiveMQ ShutdownHook] [BrokerService] ActiveMQ JMS Message Broker (bamboo, ID:shackle.sydney.atlassian.com-57424-1329086386684-0:1) stopped {noformat}",1 BAM-10903,"Include SSH example in shipped jetty.xml","Currently, user is unable to startup Bamboo server with jetty.xml due to the default setting being ship with Bamboo installation: {code} {code} Where the above tag should be: {code} {code} It will be great if we could change the above tag in the installation distribution before distribute to user. Lastly, it would be great if the default jetty.xml comes with SSL configuration as mentioned in the following documentation: * http://confluence.atlassian.com/display/BAMBOO/Running+Bamboo+over+HTTPS ",1 BAM-10937,"Shallow clones should be disabled when integration is enabled","Merging won't work with shallow clones. We need to make sure that user is notified, agrees to disable it, cannot enable etc. Just disabling the shallow clones ""should work"", but needs to be tested.",3 BAM-10940,"User reported as code updater not consistent in Bamboo e-mail notifications","Jared didn't change the code in Bonfire / for this BON BON BON build on JBAC. https://jira.bamboo.atlassian.com/browse/BON-BON-BON2DAC-409",2 BAM-10945,"Author and Committer have to be made configurable (at least for Git)","Otherwise merges and commits won't work.",2 BAM-10980,"Prettier handling of integration errors","The attached example is a short error, so it's almost readable. When we have merge conflicts, it's much worse.",2 BAM-10997,"Validate that Task plugins without a view template do not make the Task unusable","We are no longer displaying the 'view' template for a Task. Check that its possible to create a Task without a view template (e.g. we do not validate that you need a 'view' template).",1 BAM-11068,"Make first commit search asynchronous.",NULL,3 BAM-11096,"Bamboo Git Plugin (native mode) shouldn't hang when using ssh protocol on windows.","Steps to reproduce: 1) grab a windows machine 2) install there minimal git: [http://code.google.com/p/msysgit/] 3) grab Bamboo 3.4.3 (I think this error will still occur on newer versions too) 4) set up a Plan that uses Git as repository and uses ssh:// protocol, for example: 4.1) url = ssh://git@github.com/atlassian/bamboo-git-plugin.git (use SSH keyfile as ""authentication type"" - set up your github account accordingly) 5) use the windows machine from point (1) as a remote agent, connect to bamboo 6) in bamboo administration - set up the remote agent to use Git capability (so it will use native-git checkout instead of jgit checkout) 7) run the plan 8a) observed behavior is that the build hangs at code checkout (possibly to localhost proxy-SSH fingerprint host key checking) 8b) while expected behavior is that the build will... build. from: [BSP-6565|https://support.atlassian.com/browse/BSP-6565] and: [https://answers.atlassian.com/questions/39371/ssh-port-on-git-repository-polling]",3 BAM-11107,"Show X out of Y branches on Branch Creation dialog",NULL,1 BAM-11108,"Disable buttons when creating branch.",NULL,1 BAM-11116,"Integration Strategy UI is broken for longer field names",NULL,1 BAM-11117,"Rename Integration Strategy to Merge Strategy",NULL,1 BAM-11118,"Merge Strategy ""default"" should be labeled default",NULL,1 BAM-11128,"Git revision not shown for plan","Bamboo fails to show the Git revision: !bamboo rev.png! This is on 4.0-m2 build 2903",2 BAM-11129,"When a plan uses 2 repositories and you clone the plan and change one repository the other will often error out","See https://jira.bamboo.atlassian.com/browse/J50SHIPIT-ODAT-8 or https://jira.bamboo.atlassian.com/browse/J50SHIPIT-DTU-6 as an example of the error.",2 BAM-11132,"""Run"" menu in configuration confusing","You can't tell if its going to run your branch or your plan. I have clicked on it incorrectly a couple of times now",1 BAM-11170,"mvn:deploy a final version of all EC2 images on prod account before release",NULL,1 BAM-11188,"HipChat build notifications",NULL,3 BAM-11191,"Created issue should be linked in Bamboo","Issue created should show up in the ""Related Issues"" of a result.",2 BAM-11195,"Import/Export for ActiveObjects","* time box this to 2 days * This is apparently straight forward to hookup according to Sam and Adrian * Backs up rows to xml ",3 BAM-11250,"Improve AMI customisation process and documentation ","We need to run through the entire customisation process for both Linux and Windows and update the documentation to reflect the process. If we can write any scripts (and host them on bitbucket) that can improve EC2 customisation, we should do this. Currently its difficult to find out what version of bamboo-elastic-image you need - is it safe to always use the latest? How can the customer find this out? Please try the process out using the Ubuntu LTS to see if we can shake out any problems we do not see on CENTOS/Fedora",3 BAM-11285,"Make all committers automatically responsible when build fails","Make all committers to a failing build responsible for the failure",1 BAM-11287,"User can claim all responsibility for a build failure",NULL,1 BAM-11599,"JIRA login screen displayed in dialog looks weird","I've created a reciprocal application link, clicked configure and got this.",2 BAM-11600,"Rewrite JIRA issue details retrieval to use REST api not RSS.","[roots|https://atlaseye.atlassian.com/cru/CR-BAM-4183#CFR-219552] Currently we use RSS to retrieve details of an issue (their status, icon, etc) - the details visibile on Issue summary tab/panel. It just seems wrong, so we should rewrite it to use REST properly.",3 BAM-11601,"Bamboo artifacts don't get collected if they are located into directories","{code} I created a file called ""as.zip"" located in directory ""a"" which is located in directory ""test"". I used ""test/a"" as Location, and I used ""*.zip"" as Copy Pattern - the same way as it is described in [this document|http://confluence.atlassian.com/display/BAMBOO40/Configuring+a+job%27s+build+artifacts]. {code} However, the artifact didn't get published.",1 BAM-11602,"Bamboo sometimes kills processes not belonging to it on Windows",NULL,5 BAM-11603,"Database deadlock in MySQL","From http://tardigrade.sydney.atlassian.com:8085/bamboo/browse/BDT-MYSQL-578/artifact/JOB1/Bamboo-Log/output.log But it could be related to what BEAC and JBACV sees occasionaly as well {code} 2012-05-06 15:39:19,181 INFO [AtlassianEvent::0-BAM::EVENTS:pool-2-thread-13] [ChainExecutionManagerImpl] Plan RAN119295352-MAIN1192953520-3: Random Project119295352 - Plan119295352 - branch_no_1 has finished executing 2012-05-06 15:39:19,221 INFO [11-BAM::Test Agent 1::Agent:pool-18-thread-1] [CvsRepositoryManager] Getting list of commits for Tue Jan 31 15:39:07 UTC 2012 2012-05-06 15:39:19,296 INFO [http-9087-Processor18] [CvsRepositoryManager] Getting list of commits for Sun Nov 27 15:39:02 UTC 2011 2012-05-06 15:39:19,468 WARN [AtlassianEvent::0-BAM::EVENTS:pool-2-thread-13] [JDBCExceptionReporter] SQL Error: 1213, SQLState: 40001 2012-05-06 15:39:19,468 ERROR [AtlassianEvent::0-BAM::EVENTS:pool-2-thread-13] [JDBCExceptionReporter] Deadlock found when trying to get lock; try restarting transaction 2012-05-06 15:39:19,483 WARN [AtlassianEvent::0-BAM::EVENTS:pool-2-thread-13] [JDBCExceptionReporter] SQL Error: 1213, SQLState: 40001 2012-05-06 15:39:19,483 ERROR [AtlassianEvent::0-BAM::EVENTS:pool-2-thread-13] [JDBCExceptionReporter] Deadlock found when trying to get lock; try restarting transaction 2012-05-06 15:39:19,484 ERROR [AtlassianEvent::0-BAM::EVENTS:pool-2-thread-13] [SessionImpl] Could not synchronize database state with session 2012-05-06 15:39:19,588 INFO [AtlassianEvent::0-BAM::EVENTS:pool-2-thread-13] [BrokenBuildPostProcessor] RAN119295352-MAIN1192953520-3 was rerun and still failed. Tracking entry not updated. Rerun builds not currently supported 2012-05-06 15:39:19,605 INFO [http-9087-Processor14] [AccessLogFilter] admin GET http://localhost:9087/bamboo/start.action 239259kb 2012-05-06 15:39:19,619 INFO [http-9087-Processor14] [AccessLogFilter] admin GET http://localhost:9087/bamboo/legacyDashboard.action 238856kb 2012-05-06 15:39:19,752 INFO [11-BAM::Test Agent 1::Agent:pool-18-thread-1] [CvsRepositoryManager] Getting list of commits for Thu Jan 26 15:39:07 UTC 2012 2012-05-06 15:39:20,038 INFO [http-9087-Processor18] [CvsRepositoryManager] Getting list of commits for Tue Nov 22 15:39:02 UTC 2011 2012-05-06 15:39:20,113 INFO [AtlassianEvent::0-BAM::EVENTS:pool-2-thread-13] [DashboardCacheListener] event: com.atlassian.bamboo.event.ChainCompletedEvent[source=com.atlassian.bamboo.chains.ChainExecutionManagerImpl@1d5ba63] plan=RAN119295352-MAIN1192953520 2012-05-06 15:39:20,198 INFO [AtlassianEvent::0-BAM::EVENTS:pool-2-thread-13] [DashboardCachingManagerImpl] Plan cache updated for 1 plans in 0:00:00.018 2012-05-06 15:39:20,204 INFO [AtlassianEvent::0-BAM::EVENTS:pool-2-thread-14] [DependencyChainListener] Dependant builds not checked since plan is not a master plan 2012-05-06 15:39:20,206 ERROR [AtlassianEvent::0-BAM::EVENTS:pool-2-thread-13] [NamedThreadFactory] Uncaught exception in thread AtlassianEvent::0-BAM::EVENTS:pool-2-thread-13 org.springframework.dao.ConcurrencyFailureException: Hibernate operation: Could not execute JDBC batch update; SQL []; Deadlock found when trying to get lock; try restarting transaction; nested exception is java.sql.BatchUpdateException: Deadlock found when trying to get lock; try restarting transaction Caused by: java.sql.BatchUpdateException: Deadlock found when trying to get lock; try restarting transaction com.mysql.jdbc.PreparedStatement.executeBatchSerially(PreparedStatement.java:1998) com.mysql.jdbc.PreparedStatement.executeBatch(PreparedStatement.java:1443) com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeBatch(NewProxyPreparedStatement.java:1723) net.sf.hibernate.impl.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:54) net.sf.hibernate.impl.BatcherImpl.executeBatch(BatcherImpl.java:128) net.sf.hibernate.impl.SessionImpl.executeAll(SessionImpl.java:2436) net.sf.hibernate.impl.SessionImpl.execute(SessionImpl.java:2391) net.sf.hibernate.impl.SessionImpl.autoFlushIfRequired(SessionImpl.java:1819) net.sf.hibernate.impl.SessionImpl.find(SessionImpl.java:3650) net.sf.hibernate.impl.CriteriaImpl.list(CriteriaImpl.java:238) net.sf.hibernate.impl.CriteriaImpl.uniqueResult(CriteriaImpl.java:385) com.atlassian.bamboo.resultsummary.BuildResultsSummaryHibernateDao$29.doInHibernate(BuildResultsSummaryHibernateDao.java:1082) org.springframework.orm.hibernate.HibernateTemplate.execute(HibernateTemplate.java:370) org.springframework.orm.hibernate.HibernateTemplate.execute(HibernateTemplate.java:337) com.atlassian.bamboo.resultsummary.BuildResultsSummaryHibernateDao.findFirstResultAfter(BuildResultsSummaryHibernateDao.java:1078) sun.reflect.GeneratedMethodAccessor983.invoke(Unknown Source) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) java.lang.reflect.Method.invoke(Method.java:597) org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:304) org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149) org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) $Proxy41.findFirstResultAfter(Unknown Source) com.atlassian.bamboo.resultsummary.BuildResultsSummaryManagerImpl.findFirstResultAfter(BuildResultsSummaryManagerImpl.java:1120) sun.reflect.GeneratedMethodAccessor982.invoke(Unknown Source) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) java.lang.reflect.Method.invoke(Method.java:597) org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:304) org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149) com.atlassian.bamboo.security.acegi.intercept.aopalliance.AuthorityOverrideMethodSecurityInterceptor.invoke(AuthorityOverrideMethodSecurityInterceptor.java:29) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) $Proxy43.findFirstResultAfter(Unknown Source) com.atlassian.bamboo.plan.PlanStatePersisterImpl.checkAndUpdateDeltaStatesOfFollowingBuild(PlanStatePersisterImpl.java:232) com.atlassian.bamboo.plan.PlanStatePersisterImpl.persistChainState(PlanStatePersisterImpl.java:172) sun.reflect.GeneratedMethodAccessor981.invoke(Unknown Source) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) java.lang.reflect.Method.invoke(Method.java:597) org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:304) org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149) org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) com.atlassian.bamboo.author.AuthorCreatorServiceInterceptor.invoke(AuthorCreatorServiceInterceptor.java:45) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) $Proxy55.persistChainState(Unknown Source) com.atlassian.bamboo.plan.PlanStatePersisterServiceImpl$3.run(PlanStatePersisterServiceImpl.java:62) com.atlassian.util.concurrent.ManagedLocks$ManagedLockImpl.withLock(ManagedLocks.java:333) com.atlassian.bamboo.plan.PlanStatePersisterServiceImpl.persistChainState(PlanStatePersisterServiceImpl.java:58) com.atlassian.bamboo.chains.ChainExecutionManagerImpl.finaliseChainStateIfChainExecutionHasCompleted(ChainExecutionManagerImpl.java:894) com.atlassian.bamboo.chains.ChainExecutionManagerImpl.access$400(ChainExecutionManagerImpl.java:88) com.atlassian.bamboo.chains.ChainExecutionManagerImpl$1.run(ChainExecutionManagerImpl.java:443) com.atlassian.util.concurrent.ManagedLocks$ManagedLockImpl.withLock(ManagedLocks.java:333) com.atlassian.bamboo.chains.ChainExecutionManagerImpl.execute(ChainExecutionManagerImpl.java:361) com.atlassian.bamboo.chains.ChainExecutionManagerImpl.access$1300(ChainExecutionManagerImpl.java:88) com.atlassian.bamboo.chains.ChainExecutionManagerImpl$2.run(ChainExecutionManagerImpl.java:491) com.atlassian.util.concurrent.ManagedLocks$ManagedLockImpl.withLock(ManagedLocks.java:333) com.atlassian.bamboo.chains.ChainExecutionManagerImpl.handleEvent(ChainExecutionManagerImpl.java:471) sun.reflect.GeneratedMethodAccessor688.invoke(Unknown Source) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) java.lang.reflect.Method.invoke(Method.java:597) org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:304) org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149) org.springframework.orm.hibernate.HibernateInterceptor.invoke(HibernateInterceptor.java:117) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) $Proxy82.handleEvent(Unknown Source) sun.reflect.GeneratedMethodAccessor688.invoke(Unknown Source) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) java.lang.reflect.Method.invoke(Method.java:597) org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:304) org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149) org.springframework.orm.hibernate.HibernateInterceptor.invoke(HibernateInterceptor.java:117) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) $Proxy83.handleEvent(Unknown Source) com.atlassian.event.legacy.LegacyListenerHandler$LegacyListenerInvoker.invoke(LegacyListenerHandler.java:55) com.atlassian.bamboo.event.spi.EventInvokerRunnable.run(EventInvokerRunnable.java:23) java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) com.atlassian.bamboo.build.pipeline.concurrent.NamedThreadFactory$2.run(NamedThreadFactory.java:50) java.lang.Thread.run(Thread.java:662) {code}",5 BAM-11604,"ViewAgent action slow when there's a lot of data","ViewAgent action slow when there's a lot of data (either in ""Offline Remote Agents"" or in ""Elastic Agent History""). Most probably missing DB index. ",3 BAM-11607,"Create reciprocal link from JIRA to Bamboo when manually linking result to issue","* Creating a manual link is done from the issues tab * Instead of ""Created from"" use ""Linked from""",1 BAM-11608,"Create reciprocal link from JIRA to Bamboo when manually linking result to issue","* Creating a manual link is done from the issues tab * Instead of ""Created from"" use ""Linked from""",1 BAM-11609,"Some reponsibility not being shown on the Wallboard","http://tardigrade.sydney.atlassian.com:8085/bamboo/browse/BDT-PGQSL-573 has Przemek as responsible but the Wallboard doesn't show him. Needs to investigate.",2 BAM-11624,"Show X lines of logs on the error log summary if no error log summary has been set",NULL,1 BAM-11626,"Notification when responsibility is manually changed","* Add notification for when the responsibility changes * only fire when humans make the change (not when Bamboo assigns responsibility) * Name ""Change in Responsibilities"" * Should have the failure colouring and status * Check the IM text * Remove the notifications enabled/disabled for Responsibilities out of the admin and the build admin. You have been made responsible for this build X has been made responsible for this build / X has been made not responsible for this build",2 BAM-11627,"Add Linked JIRA Issue should be shown in dialog","* Add to Actions menu * Under Create Issue * Group Create and Link issue together * remove the ability to set a type",1 BAM-11628,"Add Linked JIRA Issue should be shown in dialog","* Add to Actions menu * Under Create Issue * Group Create and Link issue together * remove the ability to set a type",1 BAM-11629,"Keyboard shortcut for create issue","Pressing C then I on a result summary should show the create issue for build dialog",1 BAM-11630,"Make HipChat plugin work for change in responsibilities notification type","And possibly make it more extensible in general so we dont have to edit the plugin for every notification type? i.e could it just use the IM content? - Maybe if we only send html IMs",1 BAM-11631,"Going directly to Bamboo's configureGlobalPermissions.action erases all permissions","Create a user and give them access to use restricted admin in Bamboo. As that user go directly to the path: /builds/build/admin/configureGlobalPermissions.action If you refresh the page or go to the view page, you won't have any permissions to do that because they will have been erased. Effect: Data loss (in the form of who can do what), DoS (people can't use Bamboo), support costs (fixing it will be a PITA for our supporters). This was first picked up in OnDemand, but I think it is a bamboo + webwork problem. Tim Moore was able to reproduce this on a bamboo 4 standalone instance.",2 BAM-11632,"Null environment variable values prevent builds from running","{noformat} com.atlassian.bamboo.task.TaskException: Failed to execute task at com.atlassian.bamboo.plugins.maven.task.Maven3BuildTask.execute(Maven3BuildTask.java:110) at com.atlassian.bamboo.task.TaskExecutorImpl.executeTasks(TaskExecutorImpl.java:180) at com.atlassian.bamboo.task.TaskExecutorImpl.execute(TaskExecutorImpl.java:88) at com.atlassian.bamboo.build.pipeline.tasks.ExecuteBuildTask.call(ExecuteBuildTask.java:84) at sun.reflect.GeneratedMethodAccessor510.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:304) at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149) at org.springframework.orm.hibernate.HibernateInterceptor.invoke(HibernateInterceptor.java:117) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) at $Proxy563.call(Unknown Source) at com.atlassian.bamboo.v2.build.agent.DefaultBuildAgent.build(DefaultBuildAgent.java:202) at com.atlassian.bamboo.v2.build.agent.BuildAgentControllerImpl.waitAndPerformBuild(BuildAgentControllerImpl.java:103) at com.atlassian.bamboo.v2.build.agent.DefaultBuildAgent$1.run(DefaultBuildAgent.java:109) at com.atlassian.bamboo.build.pipeline.concurrent.NamedThreadFactory$2.run(NamedThreadFactory.java:50) at java.lang.Thread.run(Thread.java:662) Caused by: java.lang.NullPointerException at java.lang.ProcessEnvironment.validateValue(ProcessEnvironment.java:102) at java.lang.ProcessEnvironment.access$400(ProcessEnvironment.java:44) at java.lang.ProcessEnvironment$Value.valueOf(ProcessEnvironment.java:185) at java.lang.ProcessEnvironment$StringEnvironment.put(ProcessEnvironment.java:224) at java.lang.ProcessEnvironment$StringEnvironment.put(ProcessEnvironment.java:203) at java.util.AbstractMap.putAll(AbstractMap.java:256) at com.atlassian.utils.process.ExternalProcess.createProcess(ExternalProcess.java:237) at com.atlassian.utils.process.ExternalProcess.start(ExternalProcess.java:283) at com.atlassian.utils.process.ExternalProcess.execute(ExternalProcess.java:408) at com.atlassian.bamboo.process.ProcessServiceImpl.executeProcess(ProcessServiceImpl.java:176) at sun.reflect.GeneratedMethodAccessor951.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at com.atlassian.plugin.osgi.hostcomponents.impl.DefaultComponentRegistrar$ContextClassLoaderSettingInvocationHandler.invoke(DefaultComponentRegistrar.java:129) at $Proxy141.executeProcess(Unknown Source) at sun.reflect.GeneratedMethodAccessor951.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at com.atlassian.plugin.osgi.bridge.external.HostComponentFactoryBean$DynamicServiceInvocationHandler.invoke(HostComponentFactoryBean.java:154) at $Proxy141.executeProcess(Unknown Source) at com.atlassian.bamboo.plugins.maven.task.Maven3BuildTask.execute(Maven3BuildTask.java:75) ... 18 more {noformat} We should probably change nulls to empty strings in ProcessUtils whenever ProcessBuilder.environment().put/putAll() is called.",1 BAM-11938,"Exception on My Bamboo -> My Broken Plans","Seen on Tardigrade {code} Error in action: com.atlassian.bamboo.brokenbuildtracker.ui.ViewResponsibilitiesForUser@20674f89 Expression fn.hasPlanPermission('BUILD', build) is undefined on line 89, column 10 in fragments/plan/displayBuildPlansList.ftl. The problematic instruction: ---------- ==> if fn.hasPlanPermission('BUILD', build) [on line 89, column 5 in fragments/plan/displayBuildPlansList.ftl] in user-directive displayPlanListOperations [on line 77, column 13 in fragments/plan/displayBuildPlansList.ftl] in user-directive planList.displayBuildPlansList [on line 4, column 5 in panels/myResponsibilities.ftl] ---------- Java backtrace for programmers: ---------- freemarker.core.InvalidReferenceException: Expression fn.hasPlanPermission('BUILD', build) is undefined on line 89, column 10 in fragments/plan/displayBuildPlansList.ftl. at freemarker.core.TemplateObject.assertNonNull(TemplateObject.java:124) at freemarker.core.Expression.isTrue(Expression.java:145) at freemarker.core.ConditionalBlock.accept(ConditionalBlock.java:77) at freemarker.core.Environment.visit(Environment.java:210) at freemarker.core.MixedContent.accept(MixedContent.java:92) at freemarker.core.Environment.visit(Environment.java:210) at freemarker.core.Macro$Context.runMacro(Macro.java:183) at freemarker.core.Environment.visit(Environment.java:603) at freemarker.core.UnifiedCall.accept(UnifiedCall.java:118) at freemarker.core.Environment.visit(Environment.java:210) at freemarker.core.MixedContent.accept(MixedContent.java:92) at freemarker.core.Environment.visit(Environment.java:210) at freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:167) at freemarker.core.Environment.visit(Environment.java:417) at freemarke {code}",1 BAM-11939,"Mismatch between 'merged' status of XML and BuildDefinition","Causes 'build definition snapshot' problem - the build definition is no longer taken from the master chain.",3 BAM-11950,"Combine ""Automatic Detection"" and ""Automatic removal"" into a single ""Automatically manage branches"" feature","* Implement mockup (see attached) ** For Subversion, the branches root section should still be at the top of the screen! * heading ""Automatic Branch Detection"" change to ""Automatically Manage branches"" ** Description ""Bamboo will automatically manage the creation of new branches when Bamboo detects a new branch in your version control system and the removal of the branch from Bambooo after a specified period of inactivity. Detection of new branches runs every 5 minutes."" ** ""Enabled checkbox"" becomes ""Automatically manage branches"" * Remove after ""Enabled"" checkbox is removed and remove after becomes part of the same section as ""Automatically manage branches"" * Remove after description ""Branches will be automatically removed after a specified period if no commits to the VCS branch have been made. You can exclude individual Branches on their Branch Details pages. Branches will not be removed from your Version Control System and cleanup runs daily at 3am."" * Create an upgrade task to disable automatic removal if the automatically manage branches checkbox is disabled. ** Since enabling automatic creation and automatic removal will be combined, it wont be possible to enable, disable or change the automatic removal value * Move ""Notifications"" section to the very bottom of the page * If the expiry is zero, do not expire branches ",2 BAM-11952,"Create Branch error handling looks broken","\The spinner will continue to spin, and the error message sits weird.",1 BAM-11956,"Get more tasks link on task browser is broken","* File a bug with AMKT (ecosystem.atlassian.net) for the broken link * Directly to category https://marketplace.atlassian.com/plugins/app/bamboo/popular?category=Bamboo+Tasks",1 BAM-12037,"A user can manually link any branch to any issue.","* Handle situations where the manual linking was wrong or didn't work * Link the branch to an issue if there is not one already set * Remove the issue that is linked to the branch * Should be only be able to link to ONE issue * Field should go on Branch details ",2 BAM-12285,"Improve the UX of the custom build dialog","!https://extranet.atlassian.com/download/attachments/2013305598/run-with-revision.png?modificationDate=1343797439081&effects=border-simple,blur-border! * An empty text input should mean that we will use the latest revision. * In this dialog we should re-use the same Variables widget that we use to override variables in the Branch config and NOT the one from JBAM. * the inline overriding of Stages: We already have this in the current dialog (hidden in a tab) - all we are doing is moving all of the operations onto a single screen. * What do we want to do if there's a long list of stages? Anything? Just scroll? Maybe switch the order of the fields around? -> For the moment, we should just scroll. * You can only specify revisions for the default repository (for the moment) ",2 BAM-12286,"Pass the revision to build via REST","Ask James what he had exactly on mind. Was it about ""queue"" resource to accept additional parameter like ""customRevision""? I envisioned that this (or similar) issue will be done as a part of BDEV-1082 anyway... ",1 BAM-12287,"Ensure that once off builds are clearly differentiated from normal builds"," !https://extranet.atlassian.com/download/attachments/2013305598/buildtypes-result-summary.png?version=1&modificationDate=1346118879586&effects=border-simple,blur-border! !https://extranet.atlassian.com/download/attachments/2013305598/buildtypes-result-list.png?version=1&modificationDate=1346119274450&effects=border-simple,blur-border! !https://extranet.atlassian.com/download/attachments/2013305598/buildtypes-summary.png?version=1&modificationDate=1346118918062&effects=border-simple,blur-border!",2 BAM-12288,"Bundle Heroku plugin into Bamboo","* We need a plan to test the plugin on our Bamboo server (it has tests) * Bundle into download and OnDemand",2 BAM-12384,"Allow ""re-running this build"" without triggering dependant child-plans.","!https://extranet.atlassian.com/download/attachments/2013305598/rerun-this-build-menu.png?version=2&modificationDate=1343795054858&effects=border-simple,blur-border! * User may only want to re-run the single plan without triggering dependant builds. * When you click re-run this build a dialog should popup * Checkbox to disable the dependencies ** ""Disable building dependencies""",2 BAM-12388,"Doc pages that need updating","https://developer.atlassian.com/display/REST/_Version+Compatibility+for+REST+Plugin https://developer.atlassian.com/display/SAL/_Version+Compatibility+for+Shared+Access+Layer",1 BAM-14118,"Add the MSTest Agent to stock Windows Elastic Image","The MS Test command line utility is very useful for running Microsoft Framework Unit Test. By utilizing the MS Test Agent installer, you do not have to fully install Visual Studio on the elastic image. This can allow folks to utilize MS Test on the Elastic Images without having to customize and AMI. [MS Test Agent 2010|http://www.microsoft.com/en-us/download/details.aspx?id=1334] [MS Test Agent 2012|http://www.microsoft.com/en-us/download/details.aspx?id=38186] Notes and comments from the support team are located here: [https://support.atlassian.com/browse/JST-70692]",3