public void CursorTest()
 {
     Transaction t=env.Begin();
     Cursor c = new Cursor(db, t);
     byte[] k = new byte[5];
     byte[] r = new byte[5];
     c.Insert(k, r);
     db.Find(t, k);
     c.Close();
     t.Commit();
     db.Find(k);
 }
Exemple #2
0
 public void AutoCleanupCursors3()
 {
     Database db = new Database();
     db.Create("ntest.db");
     Cursor cursor1 = new Cursor(db);
     Cursor cursor2 = new Cursor(db);
     Cursor cursor3 = new Cursor(db);
     Cursor cursor4 = new Cursor(db);
     Cursor cursor5 = new Cursor(db);
     cursor3.Close();
     cursor5.Close();
     // let gc do the cleanup
     db.Close(HamConst.HAM_AUTO_CLEANUP);
 }
Exemple #3
0
 public void Create()
 {
     Cursor c = new Cursor(db);
     c.Close();
 }
Exemple #4
0
 private void Create()
 {
     Cursor c = new Cursor(db);
     c.Close();
 }
        private void Cursor10000Test()
        {
            //create database
            Hamster.Environment env = new Hamster.Environment();
            env.Create("ntest.db");

            Parameter[] param = new Parameter[1];
            param[0] = new Parameter();
            param[0].name = HamConst.HAM_PARAM_KEY_TYPE;
            param[0].value = HamConst.HAM_TYPE_UINT64;
            Database db = env.CreateDatabase(1, 0, param);

            //insert records
            for (ulong i = 0; i < 10000; i++)
            {
                byte[] key = BitConverter.GetBytes(i);
                byte[] record = new byte[20];
                db.Insert(key, record);
            }

            //close database
            db.Close();

            //reopen again
            db = env.OpenDatabase(1);
            Cursor cursor = new Cursor(db);

            cursor.MoveFirst();
            ulong firstKey = BitConverter.ToUInt64(cursor.GetKey(), 0);
            Assert.AreEqual((ulong)0, firstKey);

            cursor.MoveLast();
            ulong lastKey = BitConverter.ToUInt64(cursor.GetKey(), 0);
            Assert.AreEqual((ulong)9999, lastKey);

            //close database
            cursor.Close();
            db.Close();
            env.Close();
        }
 private void AutoCleanupCursors3()
 {
     Hamster.Environment env = new Hamster.Environment();
     Database db = new Database();
     env.Create("ntest.db");
     db = env.CreateDatabase(1);
     Cursor cursor1 = new Cursor(db);
     Cursor cursor2 = new Cursor(db);
     Cursor cursor3 = new Cursor(db);
     Cursor cursor4 = new Cursor(db);
     Cursor cursor5 = new Cursor(db);
     cursor3.Close();
     cursor5.Close();
     // let gc do the cleanup
     env.Close();
 }
        public override IEnumerable<KeyValuePair<long, Tick>> Read()
        {
            Cursor cursor = new Cursor(database);

            try
            {
                foreach (var item in cursor.Forward())
                    yield return new KeyValuePair<long, Tick>(Reverse(item.Key), ToTick(item.Value));
            }
            finally
            {
                cursor.Close();
            }
        }
Exemple #8
0
        public void Cursor10000Test()
        {
            //create database
            Database hamster = CreateDatabase("test.db");

            //insert records
            for (ulong i = 0; i < 10000; i++)
            {
                byte[] key = BitConverter.GetBytes(i);
                byte[] record = new byte[20];
                hamster.Insert(key, record);
            }

            //close database
            hamster.Close();

            //reopen again
            hamster = OpenDatabase("test.db");
            Cursor cursor = new Cursor(hamster);

            cursor.MoveFirst();
            ulong firstKey = BitConverter.ToUInt64(cursor.GetKey(), 0);
            Assert.AreEqual((ulong)0, firstKey);

            cursor.MoveLast();
            ulong lastKey = BitConverter.ToUInt64(cursor.GetKey(), 0);
            Assert.AreEqual((ulong)9999, lastKey);

            //close database
            cursor.Close();
            hamster.Close();
        }