Commit Graph
90 Commits
Author SHA1 Message Date
Axel Uhl 852f114d84 using new ThreadPoolUtil to size and use and, where necessary, create thread pool executors so we reduce the amount of runnable threads
Change-Id: I56a9f68aca7b28dc28fbb096f6bfb6cb9dce35a9
2016-08-15 18:24:18 +02:00
Axel Uhl 6a458db1b3 reduced the size of our thread pools and use only one static thread pool for all leaderboard objects;
this is to give the garbage collection (GC) a chance to not get outperformed by the application threads

Change-Id: Ic7df09fbc4951539be479d27775916e262678fc5
2016-07-28 19:08:19 +02:00
Axel Uhl 5c350d6f8a turned all Timer usages into daemon threads to ensure clean VM shut-down
Change-Id: I933cda5e4a9b6b5c9f7a7090e0dad9b00154bd35
2016-07-13 18:34:16 +02:00
Axel Uhl 16a4913e44 formatting, whitespace, refactoring in createBaseURL, always removing trailing slash from URL
Change-Id: Ib4a199e0f05d1cf4a58bed69943386d1ddb24fa6
2016-03-24 14:51:49 +01:00
Charlotte Proeller 8609c5ee4b bug3534: use redirection also for Replication 2016-03-24 11:28:26 +01:00
Axel Uhl bfb9ecb9b5 using java.net.URLEncoder.encode to encode UUID parameter to startToReplicateFrom method
Change-Id: I6af165b62a09fbd28d59830b3bf910ab34f985e7
2016-01-11 21:43:58 +01:00
Axel Uhl 44362206c9 audited and fixed reflective XSS vulnerabilities, mostly using StringEscapeUtils
Change-Id: If01b16aed1496818524b7b57528337f9c2bcbaa0
2016-01-08 09:48:37 +01:00
fmittag b43786d728 - Implemented loading and storing of a 'isStandaloneServer' attribute of a new SailingServerConfiguration domain object.
- Implemented a tab in the admin console for showing static server information and dynamic server configuration
- refactoring of static BuildVersion class into more generic ServerInfo class
2015-09-02 00:37:41 +02:00
Axel Uhl d4fce82053 handle unsetting of polar service properly in RacingEventServiceImpl; shut down replication master properly upon bundle stop 2015-07-28 17:49:10 +02:00
Axel Uhl 087be7f366 moved approximateNow into a new class ApproximateTime in shared.android where we can use Timer and TimerTask which are not GWT-compatible 2015-07-28 00:02:30 +02:00
Axel Uhl 78ff26a17e introduced MillisecondsTimePoint.approximateNow() and used where now() is too expensive; re-typed now() to TimePoint 2015-07-27 22:48:09 +02:00
Axel Uhl 836aa730d6 close the master channel's connection, not the channel, to ensure that all threads associated with the RabbitMQ connection are released 2015-07-27 21:12:19 +02:00
Axel Uhl dcc51367bb adjusted message queue-based replication to LZ4 compression algorithm 2015-07-27 17:50:53 +02:00
Axel Uhl d1a459c0e9 updated target platform to contain LZ4 compression algorithm; use it in replication code 2015-07-27 17:40:33 +02:00
Axel Uhl 565de22766 obtain replicable only once per queue to work off 2015-07-27 16:22:55 +02:00
Axel Uhl 663f333c94 catch null result from polling the message queue instead of trying to grab operation from a null result 2015-07-27 15:47:15 +02:00
Axel Uhl 4277652bf9 added more logging to replication; don't apply queues when initial load failed 2015-07-27 11:39:34 +02:00
Axel Uhl 06310451a3 use LinkedBlockingQueue for queued Operations and relaxed synchronization in lieu; flipped resuming of receiver and working down the queue 2015-07-25 23:07:52 +02:00
Axel Uhl cb9bb714a6 fixed typo in logging statement; improved logging in case TrackedRaceImpl deserialization finds diff between course and internal structures;
fix internal TrackedRaceImpl structures before triggering maneuver analysis; resume replication queues only after having applied all its operations
so that new operations received while still applying queues have to wait
2015-07-25 20:34:26 +02:00
Axel Uhl 5a03c8392e cleanly delete initial load queue when replication is stopped while initial load is running; catch Exception instead of IOException to also catch RuntimeExceptions 2015-07-25 14:25:16 +02:00
Axel Uhl 2cdbf55a41 added hashCode/equals to ReplicationMasterDescriptorImpl; maintain initial load handles per master to stop them when shutting down 2015-07-25 13:29:44 +02:00
Axel Uhl d04c95bbaa properly close the Rabbit connection after initial load which frees up the channel and its resources, particularly threads keeping the VM from shutting down 2015-07-24 18:31:52 +02:00
Axel Uhl dc3c433081 upon Activator.stop() properly stop a running replication from master 2015-07-16 23:36:16 +02:00
Axel Uhl f458607942 some comment changes 2015-07-08 00:05:36 +02:00
Axel Uhl a032146c63 use setCurrentlyFillingFromInitialLoadOrApplyingOperationReceivedFromMaster in finally clause and not only in exception handler 2015-07-07 11:16:08 +02:00
Axel Uhl f11fdfe75f added logging for operations replicated from replica to master 2015-07-07 11:15:45 +02:00
Axel Uhl 6fd6c5a762 solving bug 3015 according to comment #12; only the replicables requested by the system property will have initialLoad requested and will be waited for 2015-06-29 13:44:54 +02:00
Axel Uhl 6d2f2ae3d0 improved logging output for replicables start-up 2015-06-28 14:07:40 +02:00
Axel Uhl 22d8f8a65b make sure that the replicables list used for URL construction is the same as the one for de-serializing the replicables 2015-06-28 13:00:44 +02:00
Axel Uhl 03074f3f28 resume replicator to apply queued messages even if there has been an exception for one of the replicables 2015-06-28 12:14:17 +02:00
Axel Uhl e991a9b53b always use the same order of replicables in startToReplicateFrom for all aspects of iterating over them 2015-06-28 12:06:04 +02:00
Axel Uhl f170a0a13a working towards an improvement for initial load serialization consistency: flush ObjectOutputStream before opening the next on the same underlying OutputStream 2015-06-25 19:15:11 +02:00
Axel Uhl 75b04d8048 Merge branch 'master' into ubilabs--tracking_app--develop 2015-03-30 22:09:02 +02:00
Axel Uhl 9c5978ba4f notify waiters if ReplicationReceiver is stopped for any reason, setting stopped to true; example: consumer closed exception 2015-03-30 20:51:12 +02:00
Axel Uhl 824f975ba8 renamed isQueueEmpty to isQueueEmptyOrStopped; don't set thread context class loader in ReplicationReceiver: it's set in the replicable itself 2015-03-30 20:28:36 +02:00
Axel Uhl 9001649b99 fixed waiting on Replicator's queue to become empty; this avoids the AlreadyClosedExceptions, it seems, but the testWindSourcesToExcludeReplication test still fails locally 2015-03-30 11:50:48 +02:00
Axel Uhl b8ef26800f improved replication test logging; improved Javadoc for RaceTracker.stop(...) 2015-03-30 10:44:08 +02:00
Axel Uhl 21d5d33f78 fixing re-opened bug 2707, now also for replication-related de-serialization in RacingEventServiceImpl, using the same class loader 2015-03-29 18:00:07 +02:00
Fredrik Teschke 9c375a3ae4 Merge remote-tracking branch 'origin/master' into android_apps_no_rcapp_changes
Conflicts:
	.gitignore
	java/com.sap.sailing.server/SailingServer (No Proxy).launch
	mobile/com.sap.sailing.android.shared/.classpath
	mobile/com.sap.sailing.android.tracking.app/src/com/sap/sailing/android/tracking/app/ui/activities/LaunchActivity.java
2015-02-13 11:16:50 +01:00
Axel Uhl ba65988793 Merge remote-tracking branch 'server/master'
Conflicts:
	java/com.sap.sse.security.ui/Security UI sdm.launch
2015-02-06 05:58:55 +01:00
Axel Uhl f0ecc3f789 leaving a FIXME comment regarding bug 2600 2015-02-05 18:28:04 +01:00
Axel Uhl df332aa4ba use Lambda syntax for a simple Runnable 2015-02-05 16:00:23 +01:00
Fredrik Teschke 4508934766 remove com.sap.sse.{gateway, osgi} by moving the few classes into com.sap.sse 2015-02-05 09:28:38 +01:00
Axel Uhl 1b048d23e0 improved logging in case of exceptions during initial load 2015-02-05 03:34:11 +01:00
Axel Uhl 9bc84d1079 log and send error to client asking for initial load for a replicable the master doesn't know 2015-02-04 16:53:18 +01:00
Peter Siegmund c580c10f89 Merge branch 'bug2572' into android_apps 2015-01-14 17:02:18 +01:00
Axel Uhl 7f7eb10256 move ObjectInputStreamResolvingAgainstCache to com.sap.sse and let com.sap.sse depend on com.sap.sse.common which has the IsManaagedByCache interface 2015-01-14 13:54:45 +01:00
Axel Uhl 24bba04589 moved ObjectInputStreamResolvingAgainstCache to com.sap.sse.common so that com.sap.sailing.domain does not require a dependency on com.sap.sse.replication anymore 2015-01-14 10:59:05 +01:00
Axel Uhl 7181b2ecf9 fixing grave bug with replication: replicator was being resumed after receiving *first* initial load, but we need to wait until after the *last* initial load 2014-12-12 07:41:20 +01:00
Axel Uhl 64451c2702 fixing bug 2493; introduced a ThreadLocal telling whether replica is receiving initial load or running a master operation; not firing back to master if this flag is set 2014-12-11 09:57:18 +01:00