Jazz Forum Welcome to the Jazz Community Forum Connect and collaborate with IBM Engineering experts and users

collision detected on asset being updated

 The following exception was thrown when updating asset via API:

This is one asset among ~1000 other assets being updated and it's the only one triggering this exception.  There is nothing special about this asset.

Can someone shed some light on the meaning and how to avoid it?

Thanks, 

****************************************************
15 Nov 2012 12:13:03 ERROR [com.ibm.ram.client.RAMSession] - 6 Is latest asset revision of asset - collision detected on asset being updated.
com.ibm.ram.internal.client.RAMServiceException: 6 Is latest asset revision of asset - collision detected on asset being updated.[409]
at com.ibm.ram.internal.client.RAMClient.uploadAsset(RAMClient.java:1511)
at com.ibm.ram.client.RAMSession.putAsset(RAMSession.java:3150)
at com.ibm.ram.client.RAMSession.access$2(RAMSession.java:2931)
at com.ibm.ram.client.RAMSession$1.run(RAMSession.java:2691)
at java.lang.Thread.run(Unknown Source)
15 Nov 2012 12:13:03 ERROR [com.ibm.ram.client.RAMSession] - The asset ARGETOL[1.0] was not updated.

0 votes



2 answers

Permanent link
There are two possibilities.

1) There was an actual collision. This would occur if you download the asset, updated on the client server, and then sent it to the host, but someone else updated the asset between the time you downloaded and when you sent it to the host. In that case get the asset again and make your updates and try again.

2) There is a problem with Web Servers. The default configuration of the web server has post msgs as timing out after two minutes if there is no response, and then immediately it posts the request again. When this occurs on a browser submit of a large asset it can be updated again, while it is still being updated the first time. This causes a permanent collision. You can tell this occurred for an asset if you try to just browse the asset details on the web and you get an error about collision. The workaround to prevent this is to tell the web server to not timeout on a post. Once an asset goes bad like this it requires a DBA to update a field in the database.


0 votes


Permanent link

If the asset is updated and then you try to perform additonal operations on the asset you should refresh it first, otherwise this exepction can be thrown.

Try

someAsset.Resfresh()


prior to performing additional operations on the asset.

0 votes

Your answer

Register or log in to post your answer.

Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.

Search context
Follow this question

By Email: 

Once you sign in you will be able to subscribe for any updates here.

By RSS:

Answers
Answers and Comments
Question details

Question asked: Nov 15 '12, 12:45 p.m.

Question was seen: 5,202 times

Last updated: Aug 18 '13, 9:44 p.m.

Confirmation Cancel Confirm