Axel Uhl
d8a7fabdd2
made SmartFutureCache's lock propagation robust against concurrent get() calls
2013-04-15 10:57:04 +02:00
Axel Uhl
aaf1faad2c
fixed logging in SmartFutureCache for lock propagation; so far, NPEs were likely to happen due to the logging
2013-04-14 13:24:27 +02:00
Axel Uhl
33204ccf4a
Merge branch 'master' into smartfuturecachelockpropagation
2013-04-14 12:15:14 +02:00
Simon Pamies
cdbcd1f9b6
Catching a NoWindException earlier than it normally would've been.
...
Comment explains why this is a no brainer and safe.
2013-04-14 00:46:28 +08:00
Axel Uhl
7604fa4956
provide what looks like a fix for bug 1344
2013-04-13 01:21:44 +02:00
Axel Uhl
b704a21b81
changed name for mark passings locks
2013-04-12 13:05:07 +02:00
Axel Uhl
c06ebfc7e7
quick fix towards bug 1342. The lges.get(0) is a bit evil if there are no legs (empty course); still, it needs to be atomic without locking; use exception instead
2013-04-11 18:33:01 +02:00
Armin Zamani
cc61f70b07
Merge branch 'master' into racecommittee_integrated
...
Conflicts:
java/com.sap.sailing.domain.shared.android/src/com/sap/sailing/domain/base/impl/AbstractTimePoint.java
java/com.sap.sailing.domain/src/com/sap/sailing/domain/leaderboard/ScoreCorrection.java
java/com.sap.sailing.domain/src/com/sap/sailing/domain/leaderboard/SettableScoreCorrection.java
java/com.sap.sailing.domain/src/com/sap/sailing/domain/tracking/TrackedLegOfCompetitor.java
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/leaderboard/LeaderboardEntryPoint.java
java/com.sap.sailing.server.gateway.test/META-INF/MANIFEST.MF
java/com.sap.sailing.server.gateway.test/src/com/sap/sailing/server/gateway/test/JsonExportTest.java
java/com.sap.sailing.server.gateway/src/com/sap/sailing/server/gateway/impl/LeaderboardJsonGetServlet.java
2013-04-11 13:39:51 +08:00
Armin Zamani
b501d1ca6f
Merge branch 'racecommittee_integrated' of
...
ssh://armin@sapsailing.com/home/trac/git into racecommittee_integrated
Conflicts:
java/com.sap.sailing.domain/src/com/sap/sailing/domain/leaderboard/impl/AbstractSimpleLeaderboardImpl.java
2013-04-11 00:28:12 +02:00
Armin Zamani
055c341ec1
Implemented a new replicating RaceColumnListener that listens for score
...
correction events in the racelog and checks if a score correction is
needed
2013-04-11 00:23:39 +02:00
Lukas Niemeier
59a4b81ad3
# prevent score correction comparison when there are no scores transmitted
2013-04-10 23:18:20 +02:00
Axel Uhl (Server)
b2d41f24e3
Merge branch 'leaderboardCache'
2013-04-10 04:14:32 +02:00
Axel Uhl
002b680843
moved up hasScoreCorrection for an entire leaderboard column / RaceColumn from SettableScoreCorrection to ScoreCorrection
2013-04-09 15:22:43 +02:00
Armin Zamani
78f70a0134
Several bug fixes of the recent app implementation
2013-04-07 16:31:59 +02:00
Armin Zamani
0b752acc2c
Steps towards score corrections in the leaderboard initiated by a race
...
log event
2013-04-06 21:50:36 +02:00
Armin Zamani
84aad68fce
Introduced new race log event finish positioning confirmed event
2013-04-06 00:05:22 +02:00
Armin Zamani
db26b0aab7
implemented the new event FinishPositioningListChanged, now it can be
...
replicated, serialized and deserialized and persisted
2013-04-05 15:23:38 +02:00
Armin Zamani
c6cefb328b
Merge branch 'master' into racecommittee_integrated
...
Conflicts:
java/com.sap.sailing.server.gateway/WEB-INF/web.xml
2013-04-04 17:06:06 +02:00
fmittag
678e7d18cb
Merge remote-tracking branch 'origin/master' into leaderboardCache
2013-04-04 10:37:48 +02:00
Axel Uhl
787241d19c
adjusted SmartFutureCache Javadoc after providing a patch to bug 1314
2013-04-04 01:57:13 +02:00
Axel Uhl
e2b3d43393
Tasks in the SmartFutureCache are now recycled with an extended update interval instead of canceled and re-scheduled if not yet started;
...
This solves bug 1314. A synchronized piece of code on the task attempts to update the interval in case the task hasn't read the interval
definition yet. If that doesn't succeed because the task has already consumed the old update interval definition, the existing future task
is left alone, and a new task with the extended update interval is created and scheduled.
2013-04-04 00:59:31 +02:00
Axel Uhl
0761af5e55
refactored SmartFutureCache towards a solution for bug 1314, re-using existing tasks with extended update interval instead of canceling and re-scheduling
2013-04-04 00:49:20 +02:00
Armin Zamani
05651baffb
Merge branch 'master' into racecommittee_integrated
2013-04-02 13:41:18 +02:00
fmittag
9f82edfb7b
Merge remote-tracking branch 'origin/master' into leaderboardCache
2013-04-02 09:16:56 +02:00
Axel Uhl
5812e8c04f
minor javadoc change
2013-04-02 00:19:48 +02:00
Armin Zamani
ac1acc6d18
Merge branch 'master' into racecommittee_integrated
...
Conflicts:
java/com.sap.sailing.domain.tractracadapter.persistence/src/com/sap/sailing/domain/tractracadapter/persistence/impl/DomainObjectFactoryImpl.java
java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/adminconsole/LeaderboardConfigPanel.java
2013-04-01 01:01:12 +02:00
Axel Uhl
a04861f57b
fixing bug 1320: wind tracking for SwissTiming races didn't wait until race definition was created
2013-03-31 14:58:12 +02:00
Axel Uhl
d858be97f3
Merge remote-tracking branch 'server/master'
2013-03-29 15:45:28 +01:00
Axel Uhl
465d618fbc
fixed smart future cache test which now failed due to more rigid locking policy;
...
can't suspend the cache(...) method which is holding the write lock while trying to read using get(...).
The get(...) method will simply block because a cache update is currently on its way.
2013-03-29 15:40:01 +01:00
Simon Pamies
3b497e7e95
Moved away from calling logger.throwing because this logs with level FINER that is not catched in most logging configurations. Used logger.log(level, message, throwable).
2013-03-29 15:19:03 +01:00
fmittag
d61d7f8644
Merge remote-tracking branch 'origin/master' into leaderboardCache
...
Conflicts:
java/com.sap.sailing.domain/src/com/sap/sailing/domain/base/impl/DomainFactoryImpl.java
java/com.sap.sailing.server.gateway/src/com/sap/sailing/server/gateway/impl/LeaderboardJsonGetServlet.java
2013-03-25 12:37:37 +01:00
Armin Zamani
5aeb30b1c9
Merge branch 'master' into racecommittee_integrated
2013-03-22 15:13:45 +01:00
Axel Uhl
ab7fc9c519
Fixed by 1317: ConcurrentModificationException in SmartFutureCache unpropagating lock set
2013-03-22 15:09:42 +01:00
Axel Uhl
057a479586
Largely fixed bug 1023. While it doesn't show an additional column with the race count, LowPoint and HighPoint and all
...
their derived schemes rank a competitor better if it has more races; all races of those schemes are now always
considered valid for total points score. The old implementation is still in AbstractScoringScheme in case someone
needs them in a specific scheme.
2013-03-22 15:04:18 +01:00
Armin Zamani
6b4efe7af5
Merge branch 'master' into racecommittee_integrated
...
Conflicts:
java/com.sap.sailing.server.gateway/WEB-INF/web.xml
java/com.sap.sailing.server.gateway/src/com/sap/sailing/server/gateway/impl/EventsJsonExportServlet.java
java/com.sap.sailing.server.gateway/src/com/sap/sailing/server/gateway/impl/rc/RaceGroupJsonExportServlet.java
2013-03-22 13:51:55 +01:00
Axel Uhl
eb7245c3dc
added a comment on the minimum size of the thread pool for the SmartFutureCache
2013-03-22 11:26:52 +01:00
Armin Zamani
6d0660120b
Merge branch 'master' into racecommittee_integrated
2013-03-22 10:42:10 +01:00
Axel Uhl
f9292e64c3
added lock propagation to LeaderboardDTOCache and SmartFutureCache
2013-03-22 00:28:23 +01:00
Axel Uhl
82b464eafe
added comment to SmartFutureCache.triggerUpdate to explain the need for randomization in case of mass updates
2013-03-22 00:09:14 +01:00
Axel Uhl
e73b325db7
Merge remote-tracking branch 'server/master'
2013-03-21 23:59:20 +01:00
Axel Uhl
91b684804b
use a single ThreadPool for all SmartFutureCache instances, 3*availableProcessors in size; shuffle multi-cache-invalidations;
...
when invalidating a SmartFutureCache for a number of keys, if this always happens in the same order, the first few keys
will be re-computed over and over again because cancelling them is not possible as they have already started, but a new
re-calculation needs to be triggered still. All later keys will be appended to the ordered queue but will keep getting
canceled because they haven't started their calculation yet. By shuffling the keys before triggering their invalidation,
all elements will fairly get re-calculated every now and then.
2013-03-21 23:53:39 +01:00
Armin Zamani
4e29bda14c
fixed a couple of merge errors
2013-03-21 22:11:57 +01:00
Armin Zamani
6abba47d29
Merge branch 'master' into racecommittee_integrated
...
Conflicts:
java/com.sap.sailing.server.gateway.serialization/src/com/sap/sailing/server/gateway/serialization/coursedata/impl/CourseDataJsonSerializer.java
java/com.sap.sailing.server.gateway.serialization/src/com/sap/sailing/server/gateway/serialization/impl/coursedata/CourseBaseJsonSerializer.java
java/com.sap.sailing.server.gateway.serialization/src/com/sap/sailing/server/gateway/serialization/impl/coursedata/CourseDataJsonSerializer.java
java/com.sap.sailing.server.gateway/WEB-INF/web.xml
java/com.sap.sailing.server.gateway/src/com/sap/sailing/server/gateway/impl/rc/EventDataJsonExportServlet.java
mobile/com.sap.sailing.racecommittee.app/src/com/sap/sailing/racecommittee/app/data/DataStore.java
mobile/com.sap.sailing.racecommittee.app/src/com/sap/sailing/racecommittee/app/data/InMemoryDataStore.java
mobile/com.sap.sailing.racecommittee.app/src/com/sap/sailing/racecommittee/app/data/OfflineDataManager.java
mobile/com.sap.sailing.racecommittee.app/src/com/sap/sailing/racecommittee/app/data/OnlineDataManager.java
mobile/com.sap.sailing.racecommittee.app/src/com/sap/sailing/racecommittee/app/data/ReadonlyDataManager.java
mobile/com.sap.sailing.racecommittee.app/src/com/sap/sailing/racecommittee/app/data/parsers/EventsDataParser.java
mobile/com.sap.sailing.racecommittee.app/src/com/sap/sailing/racecommittee/app/domain/impl/FleetIdentifierImpl.java
mobile/com.sap.sailing.racecommittee.app/src/com/sap/sailing/racecommittee/app/domain/impl/ManagedRaceImpl.java
mobile/com.sap.sailing.racecommittee.app/src/com/sap/sailing/racecommittee/app/ui/activities/LoginActivity.java
2013-03-21 21:19:27 +01:00
Armin Zamani
d1f64c456d
renamed "CourseData" to "CourseBase", "EventData" to "EventBase" and
...
"SeriesData" to "SeriesBase", and their impl-classes accordingly,
renamed "CourseDataJsonSerializer" to "CourseBaseJsonSerializer"
2013-03-21 18:30:30 +01:00
Armin Zamani
2741727077
added a try catch for URL/IO exceptions while sending a course design
2013-03-21 17:06:37 +01:00
Armin Zamani
67efd32a79
implemented the connection to the TracTrac server to post a course
...
update
2013-03-21 17:02:24 +01:00
Armin Zamani
e8742c504a
Merge branch 'master' into racecommittee_integrated
2013-03-20 23:40:05 +01:00
fmittag
bd9ef9b963
Merge remote-tracking branch 'origin/master'
2013-03-20 19:16:06 +01:00
fmittag
9a3319b5f1
fixed a bug with the replication of default regattas (id replication was broken)
...
added a test case for replicating default regattas
2013-03-20 19:12:15 +01:00
Axel Uhl
7211f60040
fixed use of LowPointWinnerGetsZero scoring scheme
2013-03-20 16:40:54 +01:00