It's not the same without you

Join the community to find out what other Atlassian users are discussing, debating and creating.

Atlassian Community Hero Image Collage

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

0 votes
Answer accepted

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.

BTW updated to 3.4.5 and still the same error.

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

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
Community showcase
Posted in Portfolio for Jira

Program managers, we need your help! We want to learn about how you plan work for a team of teams

Hi community members, My name is Erika and I’m a product manager at Atlassian. We’re currently investigating how teams are planning work at the program level. We understand that every team in a tea...

85 views 0 4
Join discussion

Community Events

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

Find an event

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

Unfortunately there are no Community Events near you at the moment.

Host an event

You're one step closer to meeting fellow Atlassian users at your local event. Learn more about Community Events

Events near you