Details
-
Bug
-
Resolution: Fixed
-
Low
-
2.6.1
-
None
-
None
Description
When two commits in a single repository are made concurrently and both receive an identical timestamp from the SCM, FishEye will be able to index past the changeset.
FishEye Fails with the following:
2011-07-04 09:29:45,118 ERROR [InitialPinger1 TorontoRD] fisheye.app BaseRepositoryScanner-handleSlurpException - Problem processing revisions from repo TorontoRD due to class java.lang.IllegalArgumentException - Cannot create a position that is between two identical positions java.lang.IllegalArgumentException: Cannot create a position that is between two identical positions at com.cenqua.fisheye.rep.Position.createBetween(Position.java:157) at com.cenqua.fisheye.rep.impl.CommonChangeSetDAO.createPositionForDate(CommonChangeSetDAO.java:493) at com.cenqua.fisheye.rep.impl.CommonChangeSetDAO.determinePosition(CommonChangeSetDAO.java:384) at com.cenqua.fisheye.rep.impl.CommonChangeSetDAO.storeAttributes(CommonChangeSetDAO.java:370) at com.cenqua.fisheye.svn.db.SvnChangeSetDAO.storeAttributes(SvnChangeSetDAO.java:39) at com.cenqua.fisheye.svn.db.SvnChangeSetDAO.storeAttributes(SvnChangeSetDAO.java:19) at com.cenqua.fisheye.rep.impl.CommonChangeSetDAO.storeWithoutLimits(CommonChangeSetDAO.java:271) at com.cenqua.fisheye.rep.impl.CommonChangeSetDAO.store(CommonChangeSetDAO.java:258) at com.cenqua.fisheye.svn.DiffChangeSetProcessor.processChangeSet(DiffChangeSetProcessor.java:370) at com.cenqua.fisheye.svn.DiffChangeSetProcessor.createChangeSet(DiffChangeSetProcessor.java:304) at com.cenqua.fisheye.svn.SvnRepositoryScanner.slurpRevisionBlock(SvnRepositoryScanner.java:431) at com.cenqua.fisheye.rep.RepositoryScanner.processRevisions(RepositoryScanner.java:153) at com.cenqua.fisheye.rep.BaseRepositoryScanner.slurpRepository(BaseRepositoryScanner.java:301) at com.cenqua.fisheye.rep.BaseRepositoryScanner.doSlurpTransaction(BaseRepositoryScanner.java:268) at com.cenqua.fisheye.rep.BaseRepositoryScanner.ping(BaseRepositoryScanner.java:201) at com.cenqua.fisheye.rep.BaseRepositoryEngine.doSlurp(BaseRepositoryEngine.java:90) at com.cenqua.fisheye.rep.RepositoryEngine.slurp(RepositoryEngine.java:390) at com.cenqua.fisheye.rep.ping.OneOffPingRequest.doRequest(OneOffPingRequest.java:25) at com.cenqua.fisheye.rep.ping.PingRequest.process(PingRequest.java:66) at com.cenqua.fisheye.rep.RepositoryHandle.processPingRequests(RepositoryHandle.java:132) at com.cenqua.fisheye.rep.RepositoryHandle.queuePingRequest(RepositoryHandle.java:122) at com.cenqua.fisheye.rep.ping.PingRequest.run(PingRequest.java:33) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:662) 2011-07-04 09:29:45,123 ERROR [InitialPinger1 TorontoRD] fisheye.app BaseRepositoryScanner-handleSlurpException - Repository scanner paused.
One work-around for this currently is to modify the timestamp in the SCM of one of the changesets.