Axel Uhl
d1abac0c8d
resolved the deep maneuver analysis recursion by setting strict time bounds for start/end of maneuver in case of recursions
2014-05-16 00:57:01 +02:00
Axel Uhl
efe9fb6295
avoid NPE in getLeaderboardEntryDTO in case competitor has no tracked race associated
2014-05-15 23:56:01 +02:00
Axel Uhl
f2e1735562
Merge branch 'master' into bug1950
2014-05-15 23:33:14 +02:00
Axel Uhl
3c86721f2d
(temporarily) replacing the ConcurrentWeakHashMaps in LockUtil by ConcurrentHashMaps again to see if it fixes bug 1921
2014-05-15 23:31:28 +02:00
Axel Uhl
1aa9e091e3
removed redundant synchronization on getCurrentThreadsPropagationCounts() in LockUtil.unlockAfterWrite
2014-05-15 22:19:19 +02:00
Axel Uhl
fe0fcb4b83
Merge branch 'master' into bug1950
2014-05-15 21:19:14 +02:00
Axel Uhl
52ea7b1e57
working on bug 1954: first of all, reducing the number of constructor invocatoins for NaturalComparator
2014-05-15 16:25:25 +02:00
Axel Uhl
ea73edf91c
Merge remote-tracking branch 'server/master'
2014-05-15 15:26:44 +02:00
Axel Uhl
2018364a55
keep de-serialization compatible with earlier versions by creating the lock object if it doesn't exist in readObject
2014-05-15 15:24:53 +02:00
Axel Uhl
de4b2fb13e
Merge branch 'master' into bug1950
2014-05-15 13:17:03 +02:00
Axel Uhl
4e3769e527
added test and fix for nationality setting and null handling on Competitor / Team
2014-05-15 11:44:27 +02:00
Axel Uhl
5349f5459e
fixed NPE in TeamImpl.getNationality() in case there was no nationality set yet
2014-05-15 11:34:21 +02:00
Axel Uhl
2b2094e14a
Merge branch 'master' into bug1950
2014-05-15 11:22:14 +02:00
Axel Uhl
0abe9c4a41
added a test case that without the fix of 98707dfc9b fails
2014-05-15 10:58:46 +02:00
Axel Uhl
98707dfc9b
determine boat class from race ID in SwissTiming replay adapter; fixes a bug introduced by a refactoring that tries to get the boat class from Manage2Sail
2014-05-15 10:52:26 +02:00
Axel Uhl
0de90765a3
avoid NPE in leaderboard DTO calculation in case competitor track is not found (e.g., untracked competitor)
2014-05-15 10:31:22 +02:00
Axel Uhl
beed4ed4ea
use recursion if mark passing and tack and/or jibe are recognized in one group of unidirectional changes; see bug 1950 comment 3
2014-05-15 10:26:30 +02:00
Axel Uhl
46df62fb30
Merge branch 'master' into bug1950
2014-05-15 09:49:03 +02:00
Axel Uhl
6d9cfbd637
fixed an unlocking statement (had accidentally used unlockAfterRead after a lockForWrite)
2014-05-15 09:44:40 +02:00
Axel Uhl
102caa8f76
replaced ConcurrentSkipListSet by Collections.newSetFromMap(new ConcurrentHashMap()) which doesn't require comparability
2014-05-15 07:37:21 +02:00
Axel Uhl
4dac3e571b
seems to fix bug 1950 by not calling it a penalty if a mark passing was between the tack and the jibe
2014-05-15 00:44:56 +02:00
Axel Uhl
9e6c41aa53
added a failing test case for bug 1950: the Alinghi penalty that is none because a mark passing is between jibe and tack
2014-05-15 00:38:14 +02:00
Axel Uhl
aff7ecef7a
added missing concurrency protection to regattasByName by using a lock
2014-05-15 00:04:54 +02:00
Axel Uhl
ab960a0c9d
Merge remote-tracking branch 'server/master'
2014-05-14 23:52:14 +02:00
Axel Uhl
56b61bfc21
added test for re-entrance of write locks with in-between read lock
2014-05-14 23:50:39 +02:00
Axel Uhl
17e58bb6cc
Added hint on how to use MeasurementXMLFile to plot measurements in Hudson/Jenkins
2014-05-14 21:46:30 +00:00
Axel Uhl
9c9f8b4693
simplified construction of MeasurementXMLFile for Jenkins/Hudson measurements; use this to measure locking performance
2014-05-14 23:42:32 +02:00
Axel Uhl
cdac144759
fixed type of tracker set to ConcurrentSkipListSet in test mock after changing it in RacingEventServiceImpl
2014-05-14 23:19:42 +02:00
Axel Uhl
77bea92fde
implemented locking instead of synchronization (see bug 1935) for regattaTrackingCache
2014-05-14 23:13:16 +02:00
Axel Uhl
587824d807
replaced use of synchronized for raceTrackersByRegatta by the use of a corresponding lock
2014-05-14 22:57:58 +02:00
Axel Uhl
5a3defcf82
avoid needless iteration across all regattas' trackers when regatta is known in all callers
2014-05-14 21:31:46 +02:00
Axel Uhl
de395104b1
turned regattasObservedForDefaultLeaderboard into a ConcurrentSkipListSet to avoid the use of synchronized
2014-05-14 21:23:40 +02:00
Axel Uhl
cf49175417
fixed the consistent use of raceTrackersByIDLocks for write access to raceTrackersByID
2014-05-14 21:20:34 +02:00
Axel Uhl
40d57dbdda
working on the completion of bug 1935 regarding the consistent use of locks instead of synchronized where possible
2014-05-14 21:09:05 +02:00
Axel Uhl
958d7b15e2
fixing bug 1935 by initializing the RaceLogInformation after deserializing RegattaImpl and FlexibleLeaderboardImpl objects;
2014-05-14 14:26:57 +02:00
Axel Uhl
2ea2457409
added net.sf.marineapi to Jetty on 8889 launch config with Proxy
2014-05-14 13:11:59 +02:00
Axel Uhl
18d6856a67
Merge remote-tracking branch 'origin/master'
2014-05-14 11:12:04 +02:00
Axel Uhl
858b2b55fe
Merge remote-tracking branch 'origin/master'
...
Conflicts:
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages_ru.properties
2014-05-14 10:53:17 +02:00
Axel Uhl
cc37019222
Merge remote-tracking branch 'server/master'
2014-05-13 14:38:12 +02:00
Axel Uhl
78b65ae114
the randomized wait interval in the SwissTiming connector killed a bunch of tests assuming faster response; withdrew the random wait;
...
This was a workaround for bug 171 (see comment #2 ). We need to wait for what I expect to be a fix coming from SwissTiming.
2014-05-13 14:38:05 +02:00
Axel Uhl
88215764a5
use SwissTiming race UUID as RaceDefinition ID
2014-05-13 01:26:15 +02:00
Axel Uhl
b4c2202fd4
see bug 171, comment #2 ; introducing a random delay as a workaround for mass-loading of SwissTiming races
2014-05-13 00:06:58 +02:00
Axel Uhl
e39836cdb3
working on old bug 171; when one connection in a whole series fails, subsequent connections were affected; resolved these dependencies
2014-05-12 23:45:33 +02:00
Axel Uhl
b1ff618eef
fixed more NPEs in context of bug 1947
2014-05-12 22:00:14 +02:00
Axel Uhl
ebbd963847
trying to fix bug 1947 (NPE with RaceLogTrackingState when there is no RaceLog attached to a column)
2014-05-12 21:28:47 +02:00
Axel Uhl
b531218338
In racelog tracking wiki, described how to obtain the GPSFixStore into which to deliver the GPS fixes when creating an adapter
2014-05-11 22:11:59 +00:00
Axel Uhl
3082e3a0ea
Honored the merge of ftes-rltracking into master in racelog tracking Wiki
2014-05-11 21:42:47 +00:00
Axel Uhl
e8806ea55c
change the Bundesliga high point scoring scheme to use no interpolation
2014-05-08 15:37:03 +02:00
Axel Uhl
caf1140444
Merge branch 'bug1923'
2014-05-08 15:03:37 +02:00
Axel Uhl
d7fc9d8056
for bug 1946, started to implement the HighPointWinnerGetsSixLastGetsOneOthersAreInterpolated scoring scheme for the Bundesliga 2014
2014-05-08 15:02:25 +02:00
Axel Uhl
4d38870c9e
removed obsolete comment
2014-05-08 13:11:03 +02:00
Axel Uhl
6bda5a92e5
fixing the bug noted in comment #3 of bug 1923 related to the potentially incorrect clearing of scheduledRefreshInterval; now cleanly subtracting the interval refreshed
2014-05-08 11:32:25 +02:00
Axel Uhl
bb085e2f23
use ConcurrentWeakHashMap in LockUtil to reduce amount of synchronization required, particularly for the reading case
2014-05-08 10:58:58 +02:00
Axel Uhl
e4fe19f164
first test for concurrent weak hash map that tests purging
2014-05-08 10:39:26 +02:00
Axel Uhl
5753845ef7
a first working test showing that put and get basically work on ConcurrentWeakHashMap
2014-05-08 10:10:48 +02:00
Axel Uhl
5ec3e0f21c
a first implementation of a concurrent and weak hash map
2014-05-08 09:55:52 +02:00
Axel Uhl
7d977e600c
In LockUtil use WeakHashMap<Thread, ...> to ensure that threads can be garbage collected with all their local variables and everything! Use Mockito.reset().
2014-05-08 01:03:12 +02:00
Axel Uhl
b33035c00c
Merge branch 'master' into bug1923
2014-05-08 00:34:08 +02:00
Axel Uhl
929353267f
at another place, let removeFromCache do the unregistration of competitor observers
2014-05-08 00:25:26 +02:00
Axel Uhl
57b0f4b98d
let de-registration of competitor change listener get done by removeFromCache
2014-05-08 00:16:55 +02:00
Axel Uhl
1dd02519a3
fixed de-registration of competitor listener in leaderboard cache manager
2014-05-08 00:04:09 +02:00
Axel Uhl
e0f0cfd556
unified how the leaderboard cache manager's competitor change listener is applied to the leaderboard's competitors
2014-05-07 23:52:54 +02:00
Axel Uhl
48cb36ab60
apply competitor listener pattern to leaderboard caching infrastructure; competitor change will invalidate leaderboard cache
2014-05-07 23:42:23 +02:00
Axel Uhl
dc688e857e
added tests for competitor change listener / observer pattern in conjunction with serialization
2014-05-07 23:08:25 +02:00
Axel Uhl
7ca425d4a2
added observer pattern for Competitor, Team, Boat and Person
2014-05-07 22:57:27 +02:00
Axel Uhl
ad4ce750c8
fixing bug 1945 (empty (null) color not allowed in competitor edit dialog); empty field means null
2014-05-07 21:34:58 +02:00
Axel Uhl
6c776062f5
preparing to clean up the Mockito memory leak mess
2014-05-07 21:34:23 +02:00
Axel Uhl
16b57cdaf0
added Bundesliga 2013 to event list in index.html
2014-05-07 17:53:22 +02:00
Axel Uhl
518cdbb0c5
save a nested lock for write during GPSFixTrackImpl.add
2014-05-07 17:47:21 +02:00
Axel Uhl
4eaec1564c
ignore the heavy-load test in WindEstimationLockingUnderLoadTest for now to see if it has an impact on other tests and their locking behavior (resources?)
2014-05-07 17:34:17 +02:00
Axel Uhl
dd40ce933f
log readers only if there are readers
2014-05-07 17:08:19 +02:00
Axel Uhl
7376f8be14
Merge branch 'master' into bug1923
2014-05-07 16:25:05 +02:00
Axel Uhl
ebcba5cebd
Merge remote-tracking branch 'server/master'
2014-05-07 16:24:10 +02:00
Axel Uhl
96e7ed6923
addressing bug 1923's comment #8 by acquiring the write lock for scheduledRefreshIntervalLock only if the interval needs to be extended
2014-05-07 16:02:23 +02:00
Axel Uhl
90a3e110b4
fixed production of reader/writer stack traces in LockUtil
2014-05-07 15:44:39 +02:00
Axel Uhl
00ebcfa613
capture stack traces in LockUtil more quickly, before assembling messages, to better reflect the situation when the lock couldn't be acquired
2014-05-07 10:38:30 +02:00
Axel Uhl
3278e4dc5e
wrote a release notes entry about the distance to line figure w.r.t the tracker position and the distance usually being a few meters too much
2014-05-07 10:23:25 +02:00
Axel Uhl
5296425be5
Merge branch 'master' into bug1923
2014-05-07 00:07:04 +02:00
Axel Uhl
4732f7119c
Merge remote-tracking branch 'server/master'
2014-05-07 00:06:59 +02:00
Axel Uhl
b0d019937c
Merge remote-tracking branch 'server/master' into bug1923
2014-05-07 00:04:47 +02:00
Axel Uhl
29f86eb4e4
reduced the number of simulated wind fixes for the locking / concurrency test of the estimator
2014-05-06 21:41:03 +02:00
Axel Uhl
91242646df
reduced reader thread count to match branch bug1923_broken
2014-05-06 18:23:41 +02:00
Axel Uhl
fd5804a253
split locks in TrackBasedEstimationWindTrackImpl into one for refresh interval and another for cache
2014-05-06 18:00:30 +02:00
Axel Uhl
220aad7129
the WindEstimationLockingUnderLoadTest.testAddingManyWindFixesWhileReadingLikeCrazy method can reproduce the locking issues
2014-05-06 14:56:59 +02:00
Axel Uhl
32f8b65d3f
a first test for the locking issues in wind estimation based on mocking a tracked race
2014-05-06 12:10:38 +02:00
Axel Uhl
4cb4793ed2
Merge remote-tracking branch 'server/master' into bug1923
2014-05-06 10:55:44 +02:00
Axel Uhl
934aa4c680
updated a few comments
2014-05-06 10:48:32 +02:00
Axel Uhl
2a93120425
whitespace change only
2014-05-06 10:48:11 +02:00
Axel Uhl
94ebd72a31
Merge branch 'signed-xte-export'
2014-05-05 16:43:14 +02:00
Axel Uhl
2ef7eac718
removed dangerous Igtimi hack property and the no longer required persistentcompetitors.clear property
2014-05-05 09:59:05 +02:00
Axel Uhl
d44d63ec85
Merge remote-tracking branch 'server/master'
2014-05-01 19:59:20 +02:00
Axel Uhl
8427256510
updated static documents to reflect the ESS40 2014 Qingdao act
2014-05-01 19:54:00 +02:00
Axel Uhl
17a90dcfee
Minor typos in racelog tracking wiki document
2014-05-01 17:19:07 +00:00
Axel Uhl
e54fc9e516
still working on bug 1925: introduced yet another parameter to SailingService.getAverageWindInfo that tells whether to do a best effort or require sensor data
2014-05-01 19:03:42 +02:00
Axel Uhl
452cd5fd47
Merge branch 'bug1924'
2014-05-01 15:40:47 +02:00
Axel Uhl
1beb3151f7
Merge remote-tracking branch 'server/master'
2014-05-01 15:40:04 +02:00
Axel Uhl
2df730efad
to fix bug 1925, removed constraing in SailingServiceImpl.getAverageWindInfo to deliver wind fixes only if they are older than the time point of newest event;
...
See bug 1925; mainly, the problem seems to be that with an aggressive delay in live mode it can happen regularly that the client is posing
a request for wind data that is a bit newer than the newest event at that time for the current TrackedRace. In this case, although we would
extrapolate the tails, the wind display and advantage line would disappear, leading to a quite confusing flickering.
2014-05-01 15:32:26 +02:00
Axel Uhl
e990da28b1
fixed the before/after factors; had them swapped accidentally. Now movement looks good, also in replay, forward and backward, including rotation/bearing interpolation
2014-05-01 12:56:34 +02:00
Axel Uhl
386da3b6e3
fixed package naming and put scalablevalue packages into domain.common's GWT module descriptor
2014-05-01 12:18:17 +02:00
Axel Uhl
af0adbf4a3
moved Scalable* to domain.common to be able to use it also in GWT bundles
2014-05-01 12:02:41 +02:00