Re: Eleveldb backend randomly chewing all disk

2011-11-15 Thread Jeremy Raymond
I've seen issues when leveldb runs out of file handles. The leveldb log then fills with error messages. -- Jeremy On Nov 15, 2011, at 6:25 PM, David Smith wrote: > On Mon, Oct 24, 2011 at 5:29 PM, Elias Levy > wrote: > >> This morning, while performing a query against one of the nodes, Riak >

Re: Eleveldb backend randomly chewing all disk

2011-11-15 Thread Elias Levy
On Tue, Nov 15, 2011 at 3:25 PM, David Smith wrote: > I have not seen this error before; have you been able to reproduce? > No. Only saw it that one time. Soon after the install. Rather odd. > The logging is consistent with various bits-and-bobs of MR/Pipe > shutting down -- nothing serious

Re: Eleveldb backend randomly chewing all disk

2011-11-15 Thread David Smith
On Mon, Oct 24, 2011 at 5:29 PM, Elias Levy wrote: > This morning, while performing a query against one of the nodes, Riak > crashes.  I then notice there is no disk space left.  Upon investigating, I > see that all disk space is being consumed by the eleveldb backend.  All 45GB > of of.  Looking

[ANN] Riak Critical Issues Mailing List

2011-11-15 Thread Mark Phillips
Hi All - As promised, we are taking steps to make sure everyone is better informed of critical bugs and issues. To that end, we've created the Riak Critical Issues Mailing List [1]. We plan for this to be *very* low traffic list, and we will use it to disseminate information about bugs or issues t

Re: List keys and multiple buckets

2011-11-15 Thread Jon Meredith
Hi Izhar, Fredrik's suggestion for using 2i sounds like a good place to start and will keep your riak install as simple as possible. If you name your keys as : and store them in the same bucket, you can use 2I to retrieve ranges of primary keys as a range from : to ; (using the colon/semicolon is

RE: List keys and multiple buckets

2011-11-15 Thread Izhar Ravid
So if I use a leveldb backend, and restrict the # of objects per bucket to dozens, and use the default bucket properties, I should be ok listing keys on the user buckets. I guess the only open question here is Alexander's point about fd per leveldb bucket which rules out (or at least stretches)

Re: best practices for testing eventual consistency?

2011-11-15 Thread Reid Draper
You might find this [1] an interesting read for writing "proven" eventually consistent systems. Statebox [2] is also worth looking at if you haven't already. [1]: http://hal.archives-ouvertes.fr/inria-0088/ [2]: https://github.com/mochi/statebox On Tue, Nov 15, 2011 at 1:30 PM, Aphyr wrote:

Re: best practices for testing eventual consistency?

2011-11-15 Thread Aphyr
The fastest thing is probably to generate conflicts right below the conflict resolution system. If you are worried you can't predict the conflicts at all, go ahead and perform multiple reads and writes at overlapping times. No need for excessive load; controlling the timing alone should be suff

Re: best practices for testing eventual consistency?

2011-11-15 Thread Will Moss
Hey Jesse, You should do all of those things, more testing of a database is always good! To answer your specific question though, one of the easiest ways to produce conflicts is just to create multiple new values (i.e. values with no vector clocks). In that case, Riak can't possible resolve them

best practices for testing eventual consistency?

2011-11-15 Thread Jesse Myers
I'm contemplating migrating a write-intensive system from MySQL to Riak. I understand the eventual consistency model and the need to resolve conflicts in application code, especially if allow_mult is true. My concern is that I won't discover all of the conflict scenarios my application code needs

Re: Riak crash on node restarts

2011-11-15 Thread Jon Meredith
Hi Joel, That's not a message I'd expect to see on a clean restart. We'll need some more information to diagnose it. Next time it crashes, could you provide the contents of your ring file (you can just grab the most recent one out of /var/lib/riak/ring - location may vary depending on your platf

Re: List keys and multiple buckets

2011-11-15 Thread Alexander Sicular
Refresh my memory, does leveldb open new files for each bucket? I'm thinking there may be some file descriptor penalty for this many buckets. Otherwise you could set your default bucket properties to what you would want for these user buckets and then change properties if need be for a handful

Re: List keys and multiple buckets

2011-11-15 Thread Kresten Krab Thorup
On Nov 15, 2011, at 5:07 PM, Izhar Ravid wrote: Assuming I wish to store user information for some 200M users, and create a bucket per user. Each user bucket will contain several dozen objects. - Will list-keys on such a user bucket be a reasonable action? When using leveldb as the backend, lis

Re: Importing data to Riak

2011-11-15 Thread Nitish Sharma
Hi, I tried importing the data using Python library (with protocol buffers). After storing several objects, I get thread exception with timeout errors. Following is the traceback: File "/usr/lib/python2.7/threading.py", line 552, in __bootstrap_inner self.run() File "/usr/lib/python2.7/thr

RE: List keys and multiple buckets

2011-11-15 Thread Fredrik Lindström
Personally I would tag the objects with 2i (secondary index) headers containing a unique value to identify a user. That would would make it quite trivial to retrieve all the keys belonging to one user without having to do a full bucket scan. I would also store the objects in one bucket, or possi

List keys and multiple buckets

2011-11-15 Thread Izhar Ravid
Hi, Does the bucket name have any affect on the list-keys process? Assuming I wish to store user information for some 200M users, and create a bucket per user. Each user bucket will contain several dozen objects. - Will list-keys on such a user bucket be a reasonable action? - Is list-keys isola

Riak crash on node restarts

2011-11-15 Thread Jeremy Raymond
I'm using Riak 1.0.1 and I have a script that deploys updates to each of my 3 nodes to update the Erlang mapred modules. What I do is stop a node, deploy the new mapred modues, restart the node, wait for the riak_kv service to start, then move onto the next node. Sometimes when I do this one of the