public void BulkStoreManyWithClient() { using (var svc = new ObjectService(ObjectTestHelper.GetConfig())) { var ns = ObjectTestHelper.NameSpace1; var obj = ObjectTestHelper.ObjectName1; svc.CreateNameSpace(new ObjectNameSpaceConfig(ns, "ZeroG Test", "Unit Test", DateTime.Now)); // stores the object's metadata and builds the database tables svc.ProvisionObjectStore( new ObjectMetadata(ns, obj, new ObjectIndexMetadata[] { new ObjectIndexMetadata("IntIndex1", ObjectIndexType.Integer), new ObjectIndexMetadata("StrIndex1", ObjectIndexType.String, 15) })); var client = new LocalObjectServiceClient(svc, ns, obj); var objCount = 50000; var random = new Random(); var buf = new byte[100]; BulkStore bulk = client.BeginBulkStore(); // generate a list of objects to store for (int i = 0; objCount > i; i++) { random.NextBytes(buf); bulk.Add(buf, new ObjectIndex[] { ObjectIndex.Create("IntIndex1", i + 100), ObjectIndex.Create("StrIndex1", "idx_" + i) }); } // Complete the operation and store and index the objects var ids = bulk.Complete(); Assert.AreEqual(objCount, ids.Count()); // query 100 objects from the index var vals = client.Find(@"{""IntIndex1"":10000, ""Op"": "">"", ""And"" : {""IntIndex1"":10101, ""Op"": ""<""}}"); Assert.AreEqual(100, vals.Count()); } }
public void SetAndFindTest() { using (var svc = new ObjectService(ObjectTestHelper.GetConfig())) { var ns = ObjectTestHelper.NameSpace1; var obj = ObjectTestHelper.ObjectName1; svc.CreateNameSpace(new ObjectNameSpaceConfig(ns, "ZeroG Test", "Unit Test", DateTime.Now)); var indexName1 = "StrIndex1"; var indexName2 = "StrIndex2"; svc.ProvisionObjectStore( new ObjectMetadata(ns, obj, new ObjectIndexMetadata[] { new ObjectIndexMetadata(indexName1, ObjectIndexType.String, 8), new ObjectIndexMetadata(indexName2, ObjectIndexType.String, 1) })); var client = new LocalObjectServiceClient(svc, ns, obj); var val1 = new Guid("{C8159CCF-9401-404E-A11E-0B5DF8BA6DB1}"); var val2 = new Guid("{F1B3E0E4-0C96-4671-8BBF-A086ED1C96BC}"); var indexes1 = new string[] { "AA BB CC", "00 11 22"}; var indexes2 = new string[] { "F", "M" }; var objId1 = client.Store(val1.ToByteArray(), new ObjectIndex[] { ObjectIndex.Create(indexName1, indexes1[0]), ObjectIndex.Create(indexName2, indexes2[0]) }); var objId2 = client.Store(val2.ToByteArray(), new ObjectIndex[] { ObjectIndex.Create(indexName1, indexes1[1]), ObjectIndex.Create(indexName2, indexes2[1]) }); var getVal = client.Get(objId1.ID); Assert.IsNotNull(getVal); Assert.AreEqual(val1, new Guid(getVal)); getVal = client.Get(objId2.ID); Assert.IsNotNull(getVal); Assert.AreEqual(val2, new Guid(getVal)); getVal = client.Find(@"{ ""StrIndex1"" : ""AA BB CC"" }").FirstOrDefault(); Assert.IsNotNull(getVal); Assert.AreEqual(val1, new Guid(getVal)); } }