2010-09-07 11 views
0

我正在使用Cassandra 0.6.5使用thrift接口。我試圖使用batch_mutate方法調用,但是,當我執行它時,我收到沒有錯誤信息。這使我相信它的工作。當我使用CLI進行檢查時,沒有任何內容。任何人都可以看到我的代碼或突變圖的格式是否有問題?有任何想法嗎?batch_mutate在Cassandra中無聲無力

由於提前,

LN

public void Update(string keyspace, Common.NetworkPackage.MetaAsset ma) 
{ 
    Dictionary<string, Dictionary<string, List<Mutation>>> package; 
    Dictionary<string, List<Mutation>> packageEntry; 
    Dictionary<string, object>.Enumerator en; 
    List<Mutation> mutList; 
    Mutation mut; 
    DateTime now = DateTime.Now; 

    if(!ma.Fields.ContainsKey("$guid")) 
    throw new ArgumentException("The field $guid is not present"); 

    mutList = new List<Mutation>(); 
    en = ma.Fields.GetEnumerator(); 

    while(en.MoveNext()) 
    { 
    if (en.Current.Value == null) 
     continue; 
    mut = new Mutation(); 
    mut.Column_or_supercolumn = new ColumnOrSuperColumn(); 
    mut.Column_or_supercolumn.Column = new Column(); 
    mut.Column_or_supercolumn.Column.Name = _utf8.GetBytes(en.Current.Key); 

    if (en.Current.Value == null) 
     mut.Column_or_supercolumn.Column.Value = null; 
    else 
     mut.Column_or_supercolumn.Column.Value = ToBytes(en.Current.Value); 

    mut.Column_or_supercolumn.Column.Timestamp = Utilities.Timestamp(now);   
    mutList.Add(mut); 
    } 

    packageEntry = new Dictionary<string, List<Mutation>>(); 
    packageEntry.Add("MetaAsset", mutList); 

    package = new Dictionary<string, Dictionary<string, List<Mutation>>>(); 
    package.Add((string)ma.Fields["$guid"], packageEntry); 

    Console.WriteLine(Utilities.ExportBulkMutate("LawOffice", package)); 

    _client.batch_mutate(keyspace, package, ConsistencyLevel.QUORUM); 
} 

以上代碼生成(列名:值@時間戳,值由類型的:和實際值的表示):

LawOffice : { 
Row=08469fba50f448be8943614abd059d10 : { 
    CF=MetaAsset : { 
    $guid : String:08469fba50f448be8943614abd059d10 @ 93 
    $creator : String:Lucas @ 93 
    $previousversion : String:00000000000000000000000000000000 @ 93 
    $nextversion : String:00000000000000000000000000000000 @ 93 
    $etag : String:0 @ 93 
    $length : Int32:123456789 @ 93 
    $extension : String:.odt @ 93 
    $created : DateTime:90 @ 93 
    $modified : DateTime:90 @ 93 
    $lastaccess : DateTime:90 @ 93 
    $title : String:Title @ 93 
    $tags : List`1:tag1,tag2,tag3 @ 93 
    } 
} 
} 

回答