Commit Graph
72 Commits
Author SHA1 Message Date
Simon Pamies b608a6351e Updated replication connector to use product based host property 2013-07-12 17:47:03 +02:00
Simon Pamies 9f47801d77 Make sure that queue is cleared properly after each test 2013-06-21 13:50:06 +02:00
Simon Pamies 8fd0141f03 Fixed naming of queue parameter 2013-06-21 12:22:24 +02:00
Simon Pamies 25a46ef312 Revamped functionality of removing a queue. It works now correctly and
removes queues.
2013-06-21 01:50:58 +02:00
Simon Pamies 464d7d2051 Now also the queue will survive a connection drop and will also handle
client disconnects gracefully and free contents after some time.
2013-06-21 01:25:47 +02:00
Simon Pamies 1cf09573e0 Logging exceptions the right way 2013-06-20 23:23:05 +02:00
Simon Pamies 393c65d2d9 Avoid deprecation by simply using encoding 2013-06-20 23:22:40 +02:00
Simon Pamies b994b71236 Minor changes like i18n and functionality for stopping one replica 2013-06-20 23:14:37 +02:00
Simon Pamies 4033f0e25b Encoding parameters correctly, also using identifier instead of hostname 2013-06-20 16:09:54 +02:00
Simon Pamies af09da2d7f Now an error does no longer yield information about a master 2013-06-20 15:45:40 +02:00
Simon Pamies 0403acb687 More logging for unique replication identifier 2013-06-20 15:21:17 +02:00
Simon Pamies f9ac08032c a) Bulk of changes related to UI - making the replication tab a better
world :-)
b) Added unique identifier for each replica. This now allows to have
multiple replicas per physical host. It also make deregistration
deterministic.
2013-06-20 15:04:01 +02:00
Simon Pamies 059887e180 Merge branch 'replication-revamp' of ssh://sapsailing.com/home/trac/git into replication-revamp 2013-06-20 12:40:45 +02:00
Simon Pamies 671e68e53f Make sure that replicator thread is interrupted when application
requests shutdown of the connection. Unfortunately the RabbitMQ API does
not support closing a connection while unblocking the nextDelivery call.
There fore we need to interrupt the thread manually.
2013-06-20 12:36:54 +02:00
Axel Uhl bbd3168092 renamed constant to indicate unit 2013-06-20 10:58:16 +02:00
Simon Pamies 4956ee0a0c At least consume the last event 2013-06-20 10:32:34 +02:00
Simon Pamies 3e0f694e65 Adding UI and API support for stopping replication. 2013-06-20 09:54:05 +02:00
Simon Pamies b23ae0defb Fixed consumer channel selection and added better exception logging 2013-06-19 18:52:10 +02:00
Simon Pamies e1d7556e84 Removing unneeded check - classloader reset needs to take place at every step 2013-06-19 16:15:17 +02:00
Simon Pamies d9bb941af0 Handle reconnection after connection drops for replication listener 2013-06-19 16:08:54 +02:00
Simon Pamies d337e7206e Created test that proves that Replicator can recover from connection problems 2013-06-19 15:13:38 +02:00
Simon Pamies 1e8d1ec0ac Exporting replication.impl does not hurt anyone and that way we stay in
the pattern of having all implementation related code in impl packages
2013-06-19 12:25:46 +02:00
Simon Pamies a568e315f2 Moved ReplicaDescriptor as it is an implementation and belongs in the impl package 2013-06-19 12:23:29 +02: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
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
Simon Pamies 792dfd7de2 Made sure that event is correctly replicated upon initial load, also
stopping trackers upon initial load on replica
2013-03-05 11:10:54 +01:00
Armin Zamani e055c9ee12 Merge branch 'master' into racecommittee_integrated
Conflicts:
	java/com.sap.sailing.gwt.ui/pom.xml
	java/com.sap.sailing.server/src/com/sap/sailing/server/impl/RacingEventServiceImpl.java
2013-02-25 00:27:15 +01:00
Axel Uhl 6dac249478 added replication-related logging 2013-02-23 08:13:40 +01:00
Lukas Niemeier a229765845 # moved everything used by Android projects of com.sap.sailing.domain into new bundle com.sap.sailing.domain.shared.android
# updated com.sap.sailing.domain to Java 1.7 again
# split of Event (see EventData) and Course (see CourseData) to minimize shared code with android
# to avoid sharing RaceColumn and Leaderboard (and its dependencies) Android projects work with RaceGroups (consisting of SeriesWithRows -> consisting of RaceRows -> consisting of RaceCells -> consisting of RaceLogs). A RaceGroup is basically a data-only view on transposed RaceColumns. See RaceGroupFactory for conversion from Leaderboard to RaceGroup. Future work: use Regatta instead of Leaderboard to convert to RaceGroup
2013-02-18 13:26:32 +01:00
Lennart Hensler 311576db6e Replaced the catches of Throwable with catches of Exception 2013-01-25 10:28:07 +01:00
Jens Rommel 08429d5a92 Turn test bundles to fragments.
- Builds with maven, except know local issue with selenium tests on my machine (due to Selenium/Firefox version mismatch)
- domain.test not suitable for a test fragment, since it contains larger parts of integration-tests using many different down-stream bundles.
2013-01-21 15:58:13 +01:00
D049941 c393031c41 Merge branch 'master' into 'gwt25'
Conflicts:
	java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/leaderboard/SortedCellTableWithStylableHeaders.java
2012-11-22 15:43:03 +01:00
fmittag af63356e52 Moved all servlet- and import/export specific functions in com.sap.sailing.server to com.sap.sailing.server.gateway to create a clear separation between the sailing server and it's remote access functions 2012-10-08 18:42:51 +02:00
Axel Uhl 83d51055ce removed commented code regarding class loading during deserialization in replication service 2012-07-12 00:54:50 +02:00
Axel Uhl 7314386337 deserialize initial load through DomainFactory to cache / replace all objects managed by DomainFactory 2012-07-12 00:48:23 +02:00
Axel Uhl c279e9c91b fixed default exchange name used in ReplicationPanel popup dialog;
for the first time with RabbitMQ, this allows for cross-VM replication which looks OK at first glance
2012-07-11 23:48:22 +02:00
Axel Uhl b1ab2905c6 adjusted text messages from JMS to "Messaging"; adjusted launch configs 2012-07-11 17:44:02 +02:00
Axel Uhl ad5c287971 replication tests down to 2 failures 2012-07-11 15:14:46 +02:00
Axel Uhl 7d4ac52bac a compiling, yet entirely untested version preparing for RabbitMQ-based instead of ActiveMQ-based replication 2012-07-11 15:01:45 +02:00
Axel Uhl 15d220b8b2 started first test case for RabbitMQ; nothing compiles yet 2012-07-10 14:17:05 +02:00
fmittag 6ea24387d1 Added a servlet filter to the GWT web app to avoid the caching of all nocache.js files of GWT
Renamed Servlet.java to SailingServerHttpServlet.java
2012-07-03 18:45:39 +02:00
Axel Uhl a5fc4a0492 extracted serializable class to ensure it's found in an OSGi setup 2012-06-15 14:00:25 +02:00
Axel Uhl eb7a8f4050 clear server state entirely before starting to import initial load;
particularly registering the replica service for tracked race additions in order to auto-link them
to leaderboards causes trouble if the server state is not cleared before. Replicated tracked races may
then get auto-linked to old leaderboards and regattas in the server that happen to point to races with
equal RaceIdentifiers.

Also, it is important to become tolerant against a non-existing default leaderboard which doesn't exist
yet when tracked races are imported. The default leaderboard will be replicated together with other
leaderboards.
2012-06-15 01:43:07 +02:00
Axel Uhl d7ca838eb6 added com.sap.sailing.persistence to the dependencies of com.sap.sailing.server.replication; fixed class loading
During replication initial load a ClassNotFoundException was thrown because DelayedLeaderboardScoreCorrections
wasn't found. One problem was that obviously the Thread's context class loader set from getClass().getClassLoader()
was "only" the default class loader, not knowing about the OSGi bundle dependencies. Furthermore, the replication
bundle did not have a dependency on the domain.persistence bundle.
2012-06-15 00:14:38 +02:00
Axel Uhl f4928da853 fixing bug 723 by queuing Operations until initial load has completed 2012-06-07 18:20:51 +02:00
Axel Uhl 67762f812a fixed bug 667; left comment regarding bug 723 2012-06-05 00:22:35 +02:00
Axel Uhl 89a7f7b39f use ?broker.useJmx=false extension to vm://localhost... broker URL in tests; unregister replica in tearDown 2012-05-23 01:27:44 +02:00
Axel Uhl b654340264 replication panel shows replicas and their statistical data 2012-05-09 18:03:39 +02:00
Axel Uhl 1d47c0962f fixed bug 579, clearing the ActiveMQ broker's persistent store directory in the activator;
it would be unclear what to do with stale old messages after a server restart anyhow
2012-05-09 11:01:44 +02:00
Axel Uhl e54a1605e5 set context class loader for current thread before deserializing 2012-05-07 14:55:18 +02:00