Roll Back In-Cloud version

Is it possible to roll back the version of the in cloud server for us to the previous version?  The exception thrown when setting the assignee to "unassigned" with the latest version is really causing a serious problem for our company.
8 comments
Comment actions Permalink
Hello Steve,

May I kindly ask you to provide me with the exception you got and with the steps to reproduce the issue?

Thank you.
0
Comment actions Permalink
Hi Andrey,
For any issue in our youtrack instance, if we change the assignee to "unassigned" we get an exception report form.

Here is the form information:

Environment details

host: ip-10-172-89-169.us-west-1.compute.internal
base url: http://mcneel.myjetbrains.com/youtrack
version: 5.0.2
build: 7374 [29-Aug-2013 15:58]
java.version: 1.6.0_33
java.vendor: Sun Microsystems Inc.
java.vm.specification.version: 1.0
java.vm.specification.vendor: Sun Microsystems Inc.
java.vm.specification.name: Java Virtual Machine Specification
java.vm.version: 20.8-b03
java.vm.vendor: Sun Microsystems Inc.
java.vm.name: Java HotSpot(TM) Server VM
java.specification.version: 1.6
java.specification.vendor: Sun Microsystems Inc.
java.specification.name: Java Platform API Specification
java.class.version: 50.0
os.name: Linux
os.arch: i386
os.version: 2.6.21.7-2.ec2.v1.2.fc8xen
Max memory: 2 GB (2722955264 bytes)
Free memory: 395 MB (414377512 bytes)
Total memory: 2 GB (2722955264 bytes)
Available processors: 2
Thrown at: Thursday, September 5, 2013 9:21:50 PM MSK


Here are the details...

java.lang.IllegalArgumentException: Can't write to entity from historical transaction snapshot!
java.lang.IllegalArgumentException: Can't write to entity from historical transaction snapshot!
 at jetbrains.exodus.database.ReadOnlyPersistentEntity.assertWritable(ReadOnlyPersistentEntity.java:24)
 at jetbrains.exodus.database.PersistentEntity.addLink(PersistentEntity.java:281)
 at com.jetbrains.teamsys.dnq.database.TransientSessionImpl.addLinkInternal(TransientSessionImpl.java:1335)
 at com.jetbrains.teamsys.dnq.database.TransientSessionImpl.access$900(TransientSessionImpl.java:26)
 at com.jetbrains.teamsys.dnq.database.TransientSessionImpl$24.run(TransientSessionImpl.java:1446)
 at com.jetbrains.teamsys.dnq.database.TransientSessionImpl.addChangeAndRun(TransientSessionImpl.java:1630)
 at com.jetbrains.teamsys.dnq.database.TransientSessionImpl.createManyToMany(TransientSessionImpl.java:1442)
 at com.jetbrains.teamsys.dnq.database.TransientEntityImpl.createManyToMany(TransientEntityImpl.java:465)
 at com.jetbrains.teamsys.dnq.association.UndirectedAssociationSemantics.createManyToMany(UndirectedAssociationSemantics.java:112)
 at jetbrains.charisma.customfields.complex.user.MultiUserFieldType$2.visit(MultiUserFieldType.java:55)
 at jetbrains.charisma.customfields.complex.user.MultiUserFieldType$2.visit(MultiUserFieldType.java:52)
 at jetbrains.mps.internal.collections.runtime.IVisitor.invoke(IVisitor.java:14)
 at jetbrains.mps.internal.collections.runtime.IterableUtils.visitAll(IterableUtils.java:17)
 at jetbrains.mps.internal.collections.runtime.Sequence.visitAll(Sequence.java:85)
 at jetbrains.charisma.customfields.complex.user.MultiUserFieldType.setValue(MultiUserFieldType.java:52)
 at jetbrains.charisma.customfields.complex.user.MultiUserFieldType.setValue(MultiUserFieldType.java:28)
 at jetbrains.charisma.persistence.customfields.CustomFieldPrototypeImpl.setValue(CustomFieldPrototypeImpl.java:188)
 at jetbrains.youtrack.workflow.wrappers.CustomReferenceFieldValueResolver.set(CustomReferenceFieldValueResolver.java:87)
 at jetbrains.youtrack.workflow.wrappers.MutableIterableWrapper.applyChanges(MutableIterableWrapper.java:106)
 at jetbrains.youtrack.workflow.model.EventContext.applyIterableChanges(EventContext.java:53)
 at jetbrains.youtrack.workflow.model.StatelessRule$1.invoke(StatelessRule.java:98)
 at jetbrains.youtrack.workflow.model.RhinoRuleLoader.runInContext(RhinoRuleLoader.java:83)
 at jetbrains.youtrack.workflow.model.StatelessRule.handleBeforeFlush(StatelessRule.java:84)
 at jetbrains.youtrack.workflow.ext.WorkflowIssueListener.beforeFlush(WorkflowIssueListener.java:137)
 at com.jetbrains.teamsys.dnq.database.TransientSessionImpl$4.visit(TransientSessionImpl.java:1053)
 at com.jetbrains.teamsys.dnq.database.TransientEntityStoreImpl.forAllListeners(TransientEntityStoreImpl.java:315)
 at com.jetbrains.teamsys.dnq.database.TransientSessionImpl.notifyBeforeFlushListeners(TransientSessionImpl.java:1050)
 at com.jetbrains.teamsys.dnq.database.TransientSessionImpl.beforeFlush(TransientSessionImpl.java:945)
 at com.jetbrains.teamsys.dnq.database.TransientSessionImpl.flushChanges(TransientSessionImpl.java:728)
 at com.jetbrains.teamsys.dnq.database.TransientSessionImpl.flush(TransientSessionImpl.java:156)
 at jetbrains.mps.webr.runtime.templateComponent.TemplateActionController.handleEventImpl(TemplateActionController.java:141)
 at jetbrains.mps.webr.runtime.templateComponent.TemplateActionController.handleEvent(TemplateActionController.java:115)
 at jetbrains.mps.webr.runtime.requestProcessor.EventRequestProcessor.processRequest(EventRequestProcessor.java:75)
 at jetbrains.mps.webr.runtime.servlet.MainServlet.processRequest(MainServlet.java:228)
 at jetbrains.mps.webr.runtime.servlet.MainServlet.doGet(MainServlet.java:114)
 at jetbrains.mps.webr.runtime.servlet.MainServlet.doPost(MainServlet.java:192)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:754)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
 at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:648)
 at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1336)
 at jetbrains.mps.webr.runtime.filter.QueryParameterFilter.doFilter(QueryParameterFilter.java:25)
 at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1307)
 at org.eclipse.jetty.continuation.ContinuationFilter.doFilter(ContinuationFilter.java:137)
 at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1307)
 at org.eclipse.jetty.servlets.UserAgentFilter.doFilter(UserAgentFilter.java:82)
 at org.eclipse.jetty.servlets.GzipFilter.doFilter(GzipFilter.java:242)
 at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1307)
 at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:453)
 at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)
 at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:559)
 at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)
 at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1072)
 at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:382)
 at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)
 at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1006)
 at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)
 at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:224)
 at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
 at org.eclipse.jetty.server.Server.handle(Server.java:365)
 at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:485)
 at org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:937)
 at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:998)
 at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:856)
 at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:240)
 at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)
 at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:627)
 at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:51)
 at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)
 at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)
 at java.lang.Thread.run(Thread.java:662)
0
Comment actions Permalink
This is severely impacting our processes right now. It would be great to (a) get this fixed today or (b) roll us back to the previous version today.

How does this affect us?

Our processes for moving issues from development to the testing team means switching the State from "open" or "submitted" to "Needs Testing". In addition, the assignee changes from the developer to "Unassigned". Each member of our testing staff searches for issues that need testing that are either assigned to them, or unassigned. Now, they don't see some of the ones that need testing because they remain assigned to a developer - the wrong person to be doing the testing.

Our subversion commit hooks automatically call YouTrack to advance the issue to the next step - this is broken.

And, we can't manually work around this because manual assignment to "Unassigned" throws an error.

Our management team is frustrated because they can't determine the current state of issues, and the testing team can't figure out what they're supposed to do.

I realize we could train people to act differently - but by the time we change everybody's habits, you'll probably get this fixed, and we'll have to train them all again.


Can you please roll us back to 5.0.1 ASAP?
0
Comment actions Permalink
Hello Steve, Brian,

Thank you for details.
We found the cause of the issue, and currently investigate it. It's related to http://youtrack.jetbrains.com/issue/JT-21654 .
Fix'll be included in our nearest update. I'll let you know about the progress.

Downgrade is not the cure in this case, because according to our assumptions it woun't fix the issue.

Thank you.
0
Comment actions Permalink
OK, thank you for your active engagement of this issue - we appreciate it very much!
0
Comment actions Permalink
While we are rolling out the fix, I'd like to point out that this issue can also be workarounded by disabling your "record-assignee" workflow (if this is an acceptable workaround).
0
Comment actions Permalink
Yes, that does help - thanks!
0
Comment actions Permalink
Thanks, it is better than having the system not work at all. We would like to get this functionality back (our workflow of recording who worked in each issue), but this is much more useful than it was last week.
Thanks
0

Please sign in to leave a comment.