Jonathan, I have done it successfully with insert, but I have not tried it with mutate. I'll give that a try tonight.
Thanks On Tue, Sep 7, 2010 at 2:54 PM, Jonathan Ellis <jbel...@gmail.com> wrote: > I would try to get a single hard-coded column to insert, before doing > something more complex. > > You can also enable debug logging on the server and see if that > matches what you want the client to be doing. > > On Tue, Sep 7, 2010 at 9:11 AM, Lucas Nodine <lucasnod...@gmail.com> > wrote: > > Hello all, > > > > I have posted the following to Stackoverflow, but thought that I would > also > > try the list. If you have any suggestions, please let me know > > > > I am working with Cassandra 0.6.5 using the thrift interface. I am trying > to > > use the batch_mutate method call, however, when I execute it, I receive > no > > error message. This leads me to believe it worked. When I check using the > > CLI, there is nothing there. Is there something wrong with my code or > format > > of the mutation_map that anyone can see? Any ideas? > > > > Thanks in advance, > > > > 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<http://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); > > } > > > > The above code produces (columns are name:value @ timestamp, value > consists > > of a type:and a representation of the actual value): > > > > 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 > > } > > } > > } > > > > > > > > -- > Jonathan Ellis > Project Chair, Apache Cassandra > co-founder of Riptano, the source for professional Cassandra support > http://riptano.com >