public void TestIgniteGuid() { var guid = Guid.NewGuid(); var id1 = new IgniteGuid(guid, 1); var id2 = new IgniteGuid(guid, 1); var id3 = new IgniteGuid(guid, 2); var id4 = new IgniteGuid(Guid.NewGuid(), 2); // Properties. Assert.AreEqual(guid, id1.GlobalId); Assert.AreEqual(1, id1.LocalId); Assert.AreEqual(id1.GetHashCode(), id2.GetHashCode()); // Equality. Assert.AreEqual(id1, id2); Assert.IsTrue(id1 == id2); Assert.IsFalse(id1 != id2); // Inequality. Assert.AreNotEqual(id1, id3); Assert.IsFalse(id1 == id3); Assert.IsTrue(id1 != id3); Assert.AreNotEqual(id4, id3); Assert.IsFalse(id4 == id3); Assert.IsTrue(id4 != id3); }
/// <summary> /// Constructor. /// </summary> /// <param name="r">The reader to read data from.</param> internal TaskEvent(IPortableRawReader r) : base(r) { _taskName = r.ReadString(); _taskClassName = r.ReadString(); _taskSessionId = IgniteGuid.ReadPortable(r); _internal = r.ReadBoolean(); _subjectId = r.ReadGuid() ?? Guid.Empty; }
/// <summary> /// Constructor. /// </summary> /// <param name="r">The reader to read data from.</param> internal TaskEvent(IBinaryRawReader r) : base(r) { _taskName = r.ReadString(); _taskClassName = r.ReadString(); _taskSessionId = IgniteGuid.Read(r); _internal = r.ReadBoolean(); _subjectId = r.ReadGuid(); }
/// <summary> /// Constructor. /// </summary> /// <param name="r">The reader to read data from.</param> internal JobEvent(IPortableRawReader r) : base(r) { _taskName = r.ReadString(); _taskClassName = r.ReadString(); _taskSessionId = IgniteGuid.ReadPortable(r); _jobId = IgniteGuid.ReadPortable(r); _taskNode = ReadNode(r); _taskSubjectId = r.ReadGuid() ?? Guid.Empty; }
/// <summary> /// Constructor. /// </summary> /// <param name="r">The reader to read data from.</param> internal JobEvent(IBinaryRawReader r) : base(r) { _taskName = r.ReadString(); _taskClassName = r.ReadString(); _taskSessionId = IgniteGuid.Read(r); _jobId = IgniteGuid.Read(r); _taskNode = ReadNode(r); _taskSubjectId = r.ReadGuid(); }
/// <summary> /// Initializes a new instance of the <see cref="EventBase"/> class. /// </summary> /// <param name="r">The reader to read data from.</param> protected EventBase(IPortableRawReader r) { _id = IgniteGuid.ReadPortable(r); _localOrder = r.ReadLong(); _node = ReadNode(r); _message = r.ReadString(); _type = r.ReadInt(); _name = r.ReadString(); _timeStamp = r.ReadDate() ?? DateTime.Now; }
/// <summary> /// Constructor. /// </summary> /// <param name="r">The reader to read data from.</param> internal CacheEvent(IBinaryRawReader r) : base(r) { _cacheName = r.ReadString(); _partition = r.ReadInt(); _isNear = r.ReadBoolean(); _eventNode = ReadNode(r); _key = r.ReadObject <object>(); _xid = IgniteGuid.Read(r); _newValue = r.ReadObject <object>(); _oldValue = r.ReadObject <object>(); _hasOldValue = r.ReadBoolean(); _hasNewValue = r.ReadBoolean(); _subjectId = r.ReadGuid(); _closureClassName = r.ReadString(); _taskName = r.ReadString(); }
/// <summary> /// Constructor. /// </summary> /// <param name="r">The reader to read data from.</param> internal CacheEvent(IPortableRawReader r) : base(r) { _cacheName = r.ReadString(); _partition = r.ReadInt(); _isNear = r.ReadBoolean(); _eventNode = ReadNode(r); _key = r.ReadObject<object>(); _xid = IgniteGuid.ReadPortable(r); _lockId = r.ReadObject<object>(); _newValue = r.ReadObject<object>(); _oldValue = r.ReadObject<object>(); _hasOldValue = r.ReadBoolean(); _hasNewValue = r.ReadBoolean(); _subjectId = r.ReadGuid() ?? Guid.Empty; _closureClassName = r.ReadString(); _taskName = r.ReadString(); }
protected EventBase(IBinaryRawReader r) { Debug.Assert(r != null); _id = r.ReadObject <IgniteGuid>(); _localOrder = r.ReadLong(); _node = ReadNode(r); _message = r.ReadString(); _type = r.ReadInt(); _name = r.ReadString(); var timestamp = r.ReadTimestamp(); Debug.Assert(timestamp.HasValue); _timestamp = timestamp.Value; }
public void TestSerialization() { var grid = (Ignite)_grid1; var comp = (ImplCompute)grid.GetCluster().ForLocal().GetCompute(); var locNode = grid.GetCluster().GetLocalNode(); var expectedGuid = Guid.Parse("00000000-0000-0001-0000-000000000002"); var expectedGridGuid = new IgniteGuid(expectedGuid, 3); using (var inStream = IgniteManager.Memory.Allocate().GetStream()) { var result = comp.ExecuteJavaTask <bool>("org.apache.ignite.platform.PlatformEventsWriteEventTask", inStream.MemoryPointer); Assert.IsTrue(result); inStream.SynchronizeInput(); var reader = grid.Marshaller.StartUnmarshal(inStream); var cacheEvent = EventReader.Read <CacheEvent>(reader); CheckEventBase(cacheEvent); Assert.AreEqual("cacheName", cacheEvent.CacheName); Assert.AreEqual(locNode, cacheEvent.EventNode); Assert.AreEqual(1, cacheEvent.Partition); Assert.AreEqual(true, cacheEvent.IsNear); Assert.AreEqual(2, cacheEvent.Key); Assert.AreEqual(expectedGridGuid, cacheEvent.Xid); Assert.AreEqual(4, cacheEvent.NewValue); Assert.AreEqual(true, cacheEvent.HasNewValue); Assert.AreEqual(5, cacheEvent.OldValue); Assert.AreEqual(true, cacheEvent.HasOldValue); Assert.AreEqual(expectedGuid, cacheEvent.SubjectId); Assert.AreEqual("cloClsName", cacheEvent.ClosureClassName); Assert.AreEqual("taskName", cacheEvent.TaskName); Assert.IsTrue(cacheEvent.ToShortString().StartsWith("NODE_FAILED: IsNear=")); var qryExecEvent = EventReader.Read <CacheQueryExecutedEvent>(reader); CheckEventBase(qryExecEvent); Assert.AreEqual("qryType", qryExecEvent.QueryType); Assert.AreEqual("cacheName", qryExecEvent.CacheName); Assert.AreEqual("clsName", qryExecEvent.ClassName); Assert.AreEqual("clause", qryExecEvent.Clause); Assert.AreEqual(expectedGuid, qryExecEvent.SubjectId); Assert.AreEqual("taskName", qryExecEvent.TaskName); Assert.AreEqual( "NODE_FAILED: QueryType=qryType, CacheName=cacheName, ClassName=clsName, Clause=clause, " + "SubjectId=00000000-0000-0001-0000-000000000002, TaskName=taskName", qryExecEvent.ToShortString()); var qryReadEvent = EventReader.Read <CacheQueryReadEvent>(reader); CheckEventBase(qryReadEvent); Assert.AreEqual("qryType", qryReadEvent.QueryType); Assert.AreEqual("cacheName", qryReadEvent.CacheName); Assert.AreEqual("clsName", qryReadEvent.ClassName); Assert.AreEqual("clause", qryReadEvent.Clause); Assert.AreEqual(expectedGuid, qryReadEvent.SubjectId); Assert.AreEqual("taskName", qryReadEvent.TaskName); Assert.AreEqual(1, qryReadEvent.Key); Assert.AreEqual(2, qryReadEvent.Value); Assert.AreEqual(3, qryReadEvent.OldValue); Assert.AreEqual(4, qryReadEvent.Row); Assert.AreEqual( "NODE_FAILED: QueryType=qryType, CacheName=cacheName, ClassName=clsName, Clause=clause, " + "SubjectId=00000000-0000-0001-0000-000000000002, TaskName=taskName, Key=1, Value=2, " + "OldValue=3, Row=4", qryReadEvent.ToShortString()); var cacheRebalancingEvent = EventReader.Read <CacheRebalancingEvent>(reader); CheckEventBase(cacheRebalancingEvent); Assert.AreEqual("cacheName", cacheRebalancingEvent.CacheName); Assert.AreEqual(1, cacheRebalancingEvent.Partition); Assert.AreEqual(locNode, cacheRebalancingEvent.DiscoveryNode); Assert.AreEqual(2, cacheRebalancingEvent.DiscoveryEventType); Assert.AreEqual(3, cacheRebalancingEvent.DiscoveryTimestamp); Assert.IsTrue(cacheRebalancingEvent.ToShortString().StartsWith( "NODE_FAILED: CacheName=cacheName, Partition=1, DiscoveryNode=GridNode")); var checkpointEvent = EventReader.Read <CheckpointEvent>(reader); CheckEventBase(checkpointEvent); Assert.AreEqual("cpKey", checkpointEvent.Key); Assert.AreEqual("NODE_FAILED: Key=cpKey", checkpointEvent.ToShortString()); var discoEvent = EventReader.Read <DiscoveryEvent>(reader); CheckEventBase(discoEvent); Assert.AreEqual(grid.TopologyVersion, discoEvent.TopologyVersion); Assert.AreEqual(grid.GetNodes(), discoEvent.TopologyNodes); Assert.IsTrue(discoEvent.ToShortString().StartsWith("NODE_FAILED: EventNode=GridNode")); var jobEvent = EventReader.Read <JobEvent>(reader); CheckEventBase(jobEvent); Assert.AreEqual(expectedGridGuid, jobEvent.JobId); Assert.AreEqual("taskClsName", jobEvent.TaskClassName); Assert.AreEqual("taskName", jobEvent.TaskName); Assert.AreEqual(locNode, jobEvent.TaskNode); Assert.AreEqual(expectedGridGuid, jobEvent.TaskSessionId); Assert.AreEqual(expectedGuid, jobEvent.TaskSubjectId); Assert.IsTrue(jobEvent.ToShortString().StartsWith("NODE_FAILED: TaskName=taskName")); var taskEvent = EventReader.Read <TaskEvent>(reader); CheckEventBase(taskEvent); Assert.AreEqual(true, taskEvent.Internal); Assert.AreEqual(expectedGuid, taskEvent.SubjectId); Assert.AreEqual("taskClsName", taskEvent.TaskClassName); Assert.AreEqual("taskName", taskEvent.TaskName); Assert.AreEqual(expectedGridGuid, taskEvent.TaskSessionId); Assert.IsTrue(taskEvent.ToShortString().StartsWith("NODE_FAILED: TaskName=taskName")); } }