Crucible: Invalid source when adding commit

Running Fisheye 3.4.4 with BitBucket Git repo on Linux.

CR3.4.4 FE3.4.4 (20140520040848 2014-05-20)

We have suddenly started getting multiple Java exceptions when trying add some specific commits on a feature branch. Mind this is NOT all commits on the feature branch just a specific few. There is no pattern that I can see.

One user did manage to get a commit added to a review after repeatedly clicking close and trying again.

When adding a commit using the Add Content-> Browse Changesets

Error on screen:

No revision was added or removed. Invalid source. CAS-Java-Libs does not equal cas-java-libs

fisheye.out:

Caused by: com.cenqua.crucible.revision.source.SourceException: Invalid source. CAS-Java-Libs does not equal cas-java-libs
        at com.cenqua.crucible.revision.source.Source.validateRevisionSource(Source.java:403)
        at com.cenqua.crucible.revision.source.RepositorySource.getInsertIndex(RepositorySource.java:378)
        at com.cenqua.crucible.util.ReviewCreationHelper.addRevision(ReviewCreationHelper.java:524)
        at com.cenqua.crucible.util.ReviewCreationHelper.access$600(ReviewCreationHelper.java:44)
        at com.cenqua.crucible.util.ReviewCreationHelper$4.loopCleanup(ReviewCreationHelper.java:942)
        at com.cenqua.crucible.util.ReviewCreationHelper$RevisionsCalculatorOperator.doLoop(ReviewCreationHelper.java:732)
        at com.cenqua.crucible.util.ReviewCreationHelper$AddRevisionsCalculator.calculate(ReviewCreationHelper.java:664)
        at com.cenqua.crucible.util.ReviewCreationHelper.addRevisions(ReviewCreationHelper.java:874)
        at com.atlassian.crucible.actions.create.CreateReviewFromChangesetAjaxAction.addChangeSetToReview(CreateReviewFromChangesetAjaxAction.java:552)
        at com.atlassian.crucible.actions.create.CreateReviewFromChangesetAjaxAction.filterAndAddChangeSetToReview(CreateReviewFromChangesetAjaxAction.java:539)
        at com.atlassian.crucible.actions.create.CreateReviewFromChangesetAjaxAction.createNewReview(CreateReviewFromChangesetAjaxAction.java:420)
        at com.atlassian.crucible.actions.create.CreateReviewFromChangesetAjaxAction.execute(CreateReviewFromChangesetAjaxAction.java:630)
        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.opensymphony.xwork.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:358)
        at com.opensymphony.xwork.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:218)
        at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:192)
        at com.cenqua.crucible.interceptors.ReviewInterceptor.intercept(ReviewInterceptor.java:52)
        at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
        at com.cenqua.crucible.interceptors.CruciblePermissionInterceptor.intercept(CruciblePermissionInterceptor.java:53)
        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.cenqua.crucible.interceptors.HasCrucibleInterceptor.intercept(HasCrucibleInterceptor.java:27)
        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.fisheye.xwork.SimpleConversionErrorInterceptor.intercept(SimpleConversionErrorInterceptor.java:64)
        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.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.atlassian.xwork.interceptors.XsrfTokenInterceptor.intercept(XsrfTokenInterceptor.java:100)
        at com.cenqua.fisheye.web.util.XsrfCheckInterceptor.intercept(XsrfCheckInterceptor.java:20)
        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.DefaultActionProxy.execute(DefaultActionProxy.java:116)
        at com.opensymphony.webwork.dispatcher.DispatcherUtils.serviceAction(DispatcherUtils.java:274)
        ... 148 more

Any help would gratefully be received.

Thanks

Alex

3 answers

1 accepted

This widget could not be displayed.

FYI for anyone that has similar issues this is how I fixed the problem (with the help of Atlassian Support).

It would appear the issue was some kind of corrupt data in the database.

First step MAY not be required BUT is required in the Fisheye documentation:

  1. Set the server level character set to UTF8 (database level is not sufficient).
  2. Use the Fisheye administrator tool to migrate the existing database into a new one (can be same server)
    1. Create an empty new database with UTF8 collation etc (see Fisheye docs)
    2. Administration
    3. Database
    4. Edit
    5. Enter new database name
    6. "Save & Migrate"

my.cnf:

[mysqld]
character-set-server=utf8

Hope this helps someone.

This widget could not be displayed.

BTW updated to 3.4.5 and still the same error.

CR3.4.5 FE3.4.5 (20140701133253 2014-07-01)

This widget could not be displayed.

Hi Alex,

From the error message it seems like it could be a case-issue

Invalid source. CAS-Java-Libs does not equal cas-java-libs

Has the directory cas-java-libs changed to CAS-Java-Libs? (or v.v.)

I am not sure this could be the problem but it looks suspicious.

Cheers,

// Svante

No nothing has changed on the Git repo side or even on the Fisheye config side.

Literally two commits in a row and one will work but the one after throws the error, the third then also passes.

Screenshot

This is weird, indeed!

I suggest you raise a support ticket at Atlassian and have their support engineers take a look at your logs. Make sure you attach a fresh support zip in your request.

Rgrds,

// Svante

Thanks will do, I just wanted to check if anyone else in community had seen this before raising a ticket :)

Suggest an answer

Log in or Sign up to answer
Atlassian Summit 2018

Meet the community IRL

Atlassian Summit is an excellent opportunity for in-person support, training, and networking.

Learn more
Community showcase
Posted yesterday in New to Jira

Are you planning to trial, or are currently trialling Jira Software? - We want to talk to you!

Hello! I'm Rayen, a product manager at Atlassian. My team and I are working hard to improve the trial experience for Jira Software Cloud. We are interested in   talking to 20 people planning t...

63 views 1 0
Join discussion

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you