1436 Commits

Author SHA1 Message Date
Thomas Vachuska
cf96011947 Adding persistence to the gossip application store.
Change-Id: Ib1382f9d1009297dde902f0d3e0daf27596587c5
2015-03-09 01:07:46 +00:00
Brian O'Connor
eeaea2cf6d adding sender-side accumulator to ecmap
Change-Id: I63de27131c067c07b41ca311b14ef3ac85b6ae3e
2015-03-06 17:46:34 +00:00
Brian O'Connor
9081c90a59 Adding origin to IntentData copy
Change-Id: Ia7c8eab72b8cbb1c5fa7a760774b8103a408d3a4
2015-03-06 17:34:44 +00:00
Brian O'Connor
1736749a60 Adding assertAfter to intermittent DistributedMastershipStoreTest
Change-Id: I0c6c9f20d21d3c5a3bfca518fada3b3b3b0b38a0
2015-03-06 17:28:49 +00:00
Brian O'Connor
5eb77c88b6 Updates to ECM interface
Change-Id: Ie0cae42ac2b361cf3b94e5047c157cb0945f4209

Adding origin to IntentData and use it to pick GossipIntentStore peer

Change-Id: I50e9621a69a35ec02b8c8dd79cc926591e5a73e9
2015-03-06 17:01:29 +00:00
Jonathan Hart
233a18aeeb Don't run anti-entropy when under high load
Change-Id: I9e480708b9eced73da98e5c4cb27a18aeb08f09a
2015-03-06 08:53:31 -08:00
Madan Jampani
ba47223f6f Bypass netty stack for messages that are sent to self
Change-Id: Ifb1fd610892bd22a291cda472a8a5ef7a1dcfe6d

Manual serde for ClusterMessage to avoid one additional kryo serialization overhead for each message sent/received

Change-Id: I08d9a2c10403b0e9e9e1736c6bd36fa008bb8db0
2015-03-05 06:55:13 +00:00
Jonathan Hart
e649c750d2 Remove from leader board immediately on leader election withdraw.
This prevents some of the churn in the intent partitions due to partition
manager working off inaccurate state.

Change-Id: Ia324ea0273bc5d5858e378c05b45bafce6bda7e9
2015-03-05 04:50:33 +00:00
Madan Jampani
a88efa496c Fix for ONOS-1218
Change-Id: Ica7a5c251d63c301b40b9ef2c95450c0194798cf
2015-03-04 18:48:23 +00:00
Ayaka Koshibe
dd91b84e6e Refactored ClusterManager as proper fix for Karaf clean issue (Topic phi-fd-on)
Change-Id: Ibb328d73412855dd2d44ca6b734f738ae2996873
2015-03-03 06:31:35 +00:00
Madan Jampani
30a57f891a Added creationTime to Versioned object. This enables supporting a electedTime in leadership, which in turn helps us track how stable leadership terms are.
Change-Id: Ib051027625324646152ed85535ba337e95f8a061
2015-03-02 23:26:04 +00:00
Madan Jampani
7f72c3f354 Enabled leadership service implementation based on consistent map + added precondition checks to partitioned database.
Change-Id: Ia76f8479d9113e7ad67e583e4ca157e62a1cabc7
2015-03-02 19:37:15 +00:00
Madan Jampani
dd6479f2ac Revert "Turning on Phi accrual failure detector based ClusterService implementation"
This reverts commit 248e87b160330e90f8226c2e1afda187cc700334.

Change-Id: Ic638203b30dde90a411e8a80c53fd1fbbb3b10c0
2015-03-02 02:27:14 +00:00
Brian O'Connor
266ac66643 Starting snapshot 1.1.0-SNAPSHOT
Change-Id: I2abf73c248c04f0559f97b313be034b48761695a
2015-03-01 07:36:09 +00:00
Brian O'Connor
352236e289 Tagging 1.1.0-rc1
Change-Id: I9c95f8309e1c98bc1a25eeaad1962b4d28257261
2015-03-01 07:36:08 +00:00
Madan Jampani
248e87b160 Turning on Phi accrual failure detector based ClusterService implementation
Change-Id: Ica4fd054c247d10bef801c05bccf931147a9a732
2015-02-28 03:38:31 +00:00
Brian O'Connor
c6713a83a3 Adding BoundedThreadPool and BlockingBoolean
Updating EventuallyConsistentMap to use BoundedThreadPool for broadcast threads,
and disabling anti-entropy for now.

Change-Id: Id1bfcdaf1d0a19745fe7336e4ac9eaf649871d5d
2015-02-28 01:29:50 +00:00
HIGUCHI Yuta
9054315b8b Retry returning AppId after reload triggered by cache miss
Change-Id: I5b5f872ccdd72ccbc8a09bd221821b24a841e04b
2015-02-28 00:41:00 +00:00
HIGUCHI Yuta
26647a675f Workaround for ONOS-1198
- check before unlocking to avoid Exception
- mark field referenced from multiple threads

Change-Id: I4da8450811aa69b9cc02a5e24178e7293d056aea
2015-02-27 21:24:34 +00:00
Madan Jampani
137b5fc668 added a default empty contructor to keep the json serializer happy
Change-Id: I81ca0d8388baa9f53ea2eee3432ab6a83fb8a11f
2015-02-27 13:10:53 -08:00
Madan Jampani
52860be069 Debug log level where appropriate + Throwing an exception where appropriate
Change-Id: Ica18c122c8a2cb8286d4f48c017a06ffe10452e1
2015-02-27 12:52:37 -08:00
Madan Jampani
0cb0067922 Added support for firing up multiple raft partitions + Workaround for an issue where db calls timeout when a raft cluster node is down.
Change-Id: I67406da34c8a96b8ab9371d4d9b14653edfd2e2d
2015-02-27 19:57:08 +00:00
Ayaka Koshibe
eeb95106f8 ONOS-1114 - NPE for EQUAL switch reconnection
Change-Id: Id5d6f40610bdf4f97e65313c33a91c85678b153b
2015-02-27 05:33:57 +00:00
HIGUCHI Yuta
4d973ebae6 Workaround for ConcurrentModificationException
- Workaround fix for ONOS-1193
- If locking the whole link collection damages the performance,
  apply the fix suggested on GossipLinkStore comment.

Change-Id: Idd4d2e5b8e3a50843fe7abd10a615cfbd9a16478
2015-02-26 14:31:36 -08:00
Jonathan Hart
dc9d7b85be PartitionManager: Don't try and store election state separately
Change-Id: Ie3733c6caae2e1d68108a6bb1d44bb784f5fedc7
2015-02-26 22:12:05 +00:00
Jonathan Hart
f893be8b15 Add a configuration option to vary how heavyweight anti-entropy is.
Change-Id: I57cea61182b3d19deb47608ffb7dd617529ae34c
2015-02-26 20:32:23 +00:00
Brian O'Connor
8016f341e1 adding purge option to IntentRemoveCommand
Change-Id: Ic97acd9a8308355cd3135ea5df0a470b3579106e
2015-02-26 19:57:04 +00:00
HIGUCHI Yuta
00c3f57d35 Concurrently update EventuallyConsistentMap
- Removed synchronized block on Map updates
  which may result in anti-entropy AD sent to the peer containing out-of-sync update/remove,
  such as update and remove for the same key, but stale information will be ignored
  on the remote peer by timestamp if timestamps are properly generated.

Change-Id: Id4f993eb44b7858d37486be0d4baaff1f9025efa
2015-02-26 19:41:04 +00:00
Jonathan Hart
6a8fd1de53 Cleaned up IntentStores.
* Removed HazelcastIntentStore
 * Moved SimpleIntentStore back to trivial bundle (and removed older version
   that was already in the trivial bundle)
 * Removed default methods from IntentStore interface

ONOS-1056

Change-Id: Id5e15f44e287f51cca3e0b12a85d49cb4a07a9d3
2015-02-26 19:36:39 +00:00
Madan Jampani
a14047d6e2 Logging improvements.
Change-Id: I79b9ff16a0000e4bd72022f02baef5c779ea1b48
2015-02-26 19:23:03 +00:00
Madan Jampani
bd6845d1a0 ClusterService implementation that relies on accrual failure detector for determining node up/down status.
Initially off by default, until futher testing is done.

Change-Id: I0ac8850d76af717e7804d4503bedb227d5894a0a
2015-02-26 19:22:46 +00:00
Jonathan Hart
7baba07872 BGP router now handles the case where groups don't exists right away.
Also reworked some logic to make delete routes work.

Change-Id: I1f65279284b85144a847f1295fcbd7695cb59167
2015-02-26 09:51:58 -08:00
HIGUCHI Yuta
59f0229587 Remove all the mastership roles when a Node leaves the cluster
- Fix for ONOS-1189

Change-Id: I695ccd6bf2ff12da3702d1a982e377b7082c9341
2015-02-26 07:11:56 +00:00
alshabib
1058080de1 WIP: Started implementing static flows for corsa vanderweken pipeline.
Modified to not use Corsa driver by default.

Change-Id: If8df5769cf084346121d34bf4490f578e6b6f2d0
2015-02-26 03:31:44 +00:00
HIGUCHI Yuta
3a6f7cdc87 Include deviceId in Exception message
Change-Id: I1f730c99090bd5078ca24016675208e93ce476bd
2015-02-26 03:29:42 +00:00
Brian O'Connor
645bf200d9 GossipIntentStore: Renaming current and pending maps
currentState was poorly named, and also was hidden by a better named local variable.

Change-Id: Ia61eb73890009812d63026d5811553b2ff1bd94e
2015-02-25 19:04:35 -08:00
Madan Jampani
15d773cc7e Changed type of term number and sequence number to long.
Change-Id: If90663fa9567988752f8c4af17daeff904865ab7
2015-02-26 00:16:52 +00:00
Jonathan Hart
34f1e3827c Add intents -p commmand to have some visibility into the pending map
Change-Id: Ic29460d8bf78f185bbfa426bc0aeef309b22cf7f
2015-02-26 00:11:57 +00:00
Madan Jampani
5961051006 Added couple of methods to LeadershipService.
Change-Id: I259b1a282a51af9425e941a720336f89d66f1097
2015-02-26 00:10:05 +00:00
Jonathan Hart
ac48a95bbb PartitionManager: Shutdown background thread during deactivate
Fixes ONOS-1168.

Change-Id: I7fc4fa3787b552d958e148b96e6a6a9c51291ddb
2015-02-25 14:19:28 -08:00
Madan Jampani
d14166a3be Added a distributed leadership manager implementation on top of consistent map.
Change-Id: I3f3c6114df72e3ab033ba39c8608ac4ae11e5272
2015-02-24 17:38:44 -08:00
HIGUCHI Yuta
dc2e7c26f9 Fix for NPE
Fix for NPE reported by ONOS-1171

Change-Id: Iadb960eb2806e0d33da034f36ad2a0f9c8aa1be0
2015-02-24 23:44:40 +00:00
Jonathan Hart
83247f0672 Fix entries getting stuck in the pending map.
Pending map timestamp should be composite of
(IntentData.version(), wallclocktime)

Change-Id: I3caf739c4fdb70535696176621649f0842eea467
2015-02-24 23:39:28 +00:00
Jonathan Hart
403ea930f2 Simplify anti-entropy code
Change-Id: I6568b1cc7c67e12c5a81ec9f8680f6461813ddce
2015-02-24 21:05:59 +00:00
Madan Jampani
6b5b717d80 Gave threadpools more appropriate names.
Change-Id: Ib7ce71a3028363b1465fbd5775f84e2befaf80c1
2015-02-23 22:40:56 +00:00
Madan Jampani
2af244a977 Never process incoming messages on the netty event loop thread pool.
Currently in a lot of places we are deserializing incoming messages on this threadpool and that could be significantly limiting throughput.

Change-Id: I83eb7e91004cea4addb28bc28f27e50de10028fe
2015-02-23 20:37:25 +00:00
Thomas Vachuska
a132e3acd3 Made intent perf app multi-threaded; doesn't seem to help.
Made Jono's changes to ECM per Madan's suggesion.
Added cell beast.
Re-enabled anti-entropy.
Added ability to push bits through test proxy for faster upload.

Change-Id: I1455d6d443a697d7a3973c88cb81bfdac0e1dd7f
2015-02-22 20:31:04 +00:00
Madan Jampani
2e5f87b548 Limit the amont of work that happens on netty event loop threads.
Currently we are kryo serializing/deserializing the message envelope which can potentially limit throughput.

Change-Id: I0ae9dab53bbb765b7618ceaefda1edf4f77b0b59
2015-02-22 10:37:15 -08:00
Thomas Vachuska
6f94deddef Converted all executors that previously used namedThreads to use groupedThreads instead.
Change-Id: I048709308270de5b7552bc4e8395b0f7201d5949
2015-02-21 14:02:38 -08:00
Jonathan Hart
054da97e83 Implement command to view Raft partitions
Change-Id: I9d3cea49877d69c2d7935dadbbad2770349e793a
2015-02-21 17:00:39 +00:00