Exemplo n.º 1
0
        public SyncExecution ReadCopy <T>(TpccTableKey key, out T record)
            where T : TpccTablePayload
        {
            TpccTablePayload payload;

            this.ReadCopyImpl(key, out payload);
            record = payload as T;
            return(this);
        }
Exemplo n.º 2
0
 protected override SyncExecution ReadCopyImpl(
     TpccTableKey key, out TpccTablePayload record)
 {
     if (!Read(key, out record).IsAborted())
     {
         record = this.GetObjectPool(
             key.Table.Type()).GetCopy(record) as TpccTablePayload;
     }
     return(this);
 }
Exemplo n.º 3
0
            void BuildAuxIndex(TpccTableKey k, TpccTablePayload v)
            {
                var cpk = k as CustomerPkey;
                var cpl = v as CustomerPayload;

                Debug.Assert(k != null && v != null);
                var lastNameKey =
                    CustomerLastNameIndexKey.FromPKeyAndPayload(cpk, cpl);
                uint cid = cpk.C_ID;

                AddToStore(lastNameKey, cid);
            }
Exemplo n.º 4
0
        public SyncExecution Read <T>(TpccTableKey key, out T record)
            where T : TpccTablePayload
        {
            object payload = this.txExec.SyncRead(key.Table.Name(), key);

            record = payload as T;
            if (!this.IsAborted())
            {
                if (payload == null)
                {
                    return(this.Abort());
                }
                Debug.Assert(record != null);
            }
            return(this);
        }
Exemplo n.º 5
0
 void BuildAuxIndex(TpccTableKey k, TpccTablePayload v)
 {
 }
Exemplo n.º 6
0
 protected virtual SyncExecution ReadCopyImpl(
     TpccTableKey key, out TpccTablePayload record)
 {
     return(this.Read(key, out record));
 }
Exemplo n.º 7
0
 public SyncExecution Insert(TpccTableKey key, TpccTablePayload record)
 {
     this.txExec.InitAndInsert(key.Table.Name(), key, record);
     return(this);
 }
Exemplo n.º 8
0
 public SyncExecution Update(TpccTableKey key, TpccTablePayload record)
 {
     this.txExec.Update(key.Table.Name(), key, record);
     return(this);
 }