Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

TFS Repository Update Leak

Deleted user January 7, 2014

I seems when you updates you repositories to a new location, it still keep hitting on old locations. Can we have a fix for this as it keep hitting the server for many unused URL every 180 seconds.

Below is the log

2014-01-06 16:23:50,168 WARN [4-BAM::PlanExec:pool-7-thread-4] [TfsRepository] Caught an exception: 
com.microsoft.tfs.core.exceptions.TECoreException: TF10122: The path '$/Portfolio Implementation/Versions/${prod.version.major}/${prod.version}/Pretrade' contains a '$' at the beginning of a path component. Remove the '$' and try again.
                at com.microsoft.tfs.core.exceptions.mappers.TECoreExceptionMapper.map(TECoreExceptionMapper.java:99)
                at com.microsoft.tfs.core.exceptions.mappers.VersionControlExceptionMapper.map(VersionControlExceptionMapper.java:48)
                at com.microsoft.tfs.core.clients.versioncontrol.internal.WebServiceLayer.queryHistory(WebServiceLayer.java:1661)
                at com.microsoft.tfs.core.clients.versioncontrol.internal.WebServiceLayerLocalWorkspaces.queryHistory(WebServiceLayerLocalWorkspaces.java:1358)
                at com.microsoft.tfs.core.clients.versioncontrol.VersionControlClient.queryHistory(VersionControlClient.java:4578)
                at com.stellarity.bamboo.repository.TfsRepository.collectChangesSinceLastBuild(TfsRepository.java:169)
                at com.atlassian.bamboo.v2.trigger.DefaultChangeDetectionManager.collectionChangesWithRetry(DefaultChangeDetectionManager.java:466)
                at com.atlassian.bamboo.v2.trigger.DefaultChangeDetectionManager.collectChangesSinceLastBuildInternal(DefaultChangeDetectionManager.java:331)
                at com.atlassian.bamboo.v2.trigger.DefaultChangeDetectionManager.collectChangesSinceRevisions(DefaultChangeDetectionManager.java:259)
                at com.atlassian.bamboo.v2.trigger.DefaultChangeDetectionManager.collectChangesSinceRevisions(DefaultChangeDetectionManager.java:154)
                at com.atlassian.bamboo.v2.trigger.DefaultChangeDetectionManager.collectChangesSinceLastBuildIfTriggered(DefaultChangeDetectionManager.java:116)
                at com.atlassian.bamboo.v2.trigger.ChangeDetectionListenerAction.testIfBuildShouldStart(ChangeDetectionListenerAction.java:111)
                at com.atlassian.bamboo.plan.PlanExecutionManagerImpl$3.call(PlanExecutionManagerImpl.java:461)
                at com.atlassian.bamboo.plan.PlanExecutionManagerImpl$3.call(PlanExecutionManagerImpl.java:446)
                at com.atlassian.util.concurrent.ManagedLocks$ManagedLockImpl.withLock(ManagedLocks.java:312)
                at com.atlassian.bamboo.plan.PlanExecutionLockServiceImpl.lock(PlanExecutionLockServiceImpl.java:78)
                at com.atlassian.bamboo.plan.PlanExecutionManagerImpl.doWithProcessLock(PlanExecutionManagerImpl.java:715)
                at com.atlassian.bamboo.plan.PlanExecutionManagerImpl.startConditionalBuild(PlanExecutionManagerImpl.java:445)
                at com.atlassian.bamboo.plan.PlanExecutionManagerImpl.start(PlanExecutionManagerImpl.java:514)
                at com.atlassian.bamboo.plan.PlanExecutionManagerImpl.start(PlanExecutionManagerImpl.java:531)
                at com.atlassian.bamboo.plan.NonBlockingPlanExecutionServiceImpl$3.call(NonBlockingPlanExecutionServiceImpl.java:131)
                at com.atlassian.bamboo.plan.NonBlockingPlanExecutionServiceImpl$3.call(NonBlockingPlanExecutionServiceImpl.java:119)
                at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
                at java.util.concurrent.FutureTask.run(Unknown Source)
                at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
                at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
                at com.atlassian.bamboo.build.pipeline.concurrent.NamedThreadFactory$2.run(NamedThreadFactory.java:52)
                at java.lang.Thread.run(Unknown Source)
Caused by: com.microsoft.tfs.core.ws.runtime.exceptions.SOAPFault: TF10122: The path '$/Portfolio Implementation/Versions/${prod.version.major}/${prod.version}/Pretrade' contains a '$' at the beginning of a path component. Remove the '$' and try again.
                at com.microsoft.tfs.core.ws.runtime.client.SOAP12Service.examineResponseDOMForFault(SOAP12Service.java:132)
                at com.microsoft.tfs.core.ws.runtime.client.SOAPService.examineBodyForFault(SOAPService.java:1105)
                at com.microsoft.tfs.core.ws.runtime.client.SOAPService.executeSOAPRequestInternal(SOAPService.java:732)
                at com.microsoft.tfs.core.ws.runtime.client.SOAPService.executeSOAPRequest(SOAPService.java:473)
                at ms.tfs.versioncontrol.clientservices._03._RepositorySoap12Service.queryHistory(_RepositorySoap12Service.java:1502)
                at com.microsoft.tfs.core.clients.versioncontrol.internal.WebServiceLayer.queryHistory(WebServiceLayer.java:1645)
                ... 25 more

5 answers

0 votes
Deleted user January 8, 2014

Sure. Will let you know.

0 votes
Deleted user January 8, 2014

On a side note : Is bamboo.repository.branch.name global variable getting populated ?

Sergey Podobry _Stellarity Software_
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
January 9, 2014

No. In TFS a branch name is a part of the source path. And currently there is no automatic branch detection in TFS Repository so this variable is not set. Are you interested in this feature?

Deleted user January 9, 2014

We would like to have that feature. The simpler our configuration become the better it is.

We adopted to code promotion branching strategy and have bamboo projects for Development, Integration and Production, each having more than dozens of plans.

When we build we want to know which branch code is checked out ( out of dev, int, prod ) to add in artifact name or manifest. Right now we are achiving this by passing a Sytem variable to gradle build for each plans. But then it is lot of copy paste.

In TFS, we have something similar 
Project
    Development
    Integration
    Production

Sergey Podobry _Stellarity Software_
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
January 12, 2014

I see. I'll implement setting ${bamboo.repository.branch.name} variable in the next release (will be ready on the next week).

Sergey Podobry _Stellarity Software_
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
January 21, 2014

Implemented in version 1.1.2 and 1.0.11. Please, try it.

0 votes
Deleted user January 7, 2014

Yeah I understand what you are talking. There is no such URL in any current plans.

It was there before. Something went wrong and it did not replace the URL but appended it.

0 votes
Deleted user January 7, 2014

Here is how you can reproduce the issue :

1.) Set up a plan with TFS repository URL say URL1 (could be junk/temporary/typo) polling every 180 seconds

2.) Edit your plan and modify the repo URL to say URL2

Check the TFS Repository Log it will still be polling URL1.

Sergey Podobry _Stellarity Software_
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
January 8, 2014

Gaurav, I cannot reproduce the issue using these steps. Could you change the addon log level to ALL and see which plan uses the wrong path (on the admin page select system->log settings->com.stellarity.bamboo.repository.TfsRepository->ALL->save)? And then take a look at the plan's repo (and update its settings).

0 votes
Sergey Podobry _Stellarity Software_
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
January 7, 2014

Hi Gaurav,

Are you sure you have updated all repos? Could you recheck it.

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events