Turn up the logging to DEBUG level (in config/log4-server.properties) and check that you are sending what you think you are.
Aaron
On 08 Sep, 2010,at 02: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 knowI 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 = _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 } } }