Account Options

  1. Sign in
The old Google Groups will be going away soon, but your browser is incompatible with the new version.
Google Groups Home
« Groups Home
Concurrency Exception again
There are currently too many topics in this group that display first. To make this topic appear first, remove this option from another topic.
There was an error processing your request. Please try again.
flag
  18 messages - Collapse all  -  Translate all to Translated (View all originals)
The group you are posting to is a Usenet group. Messages posted to this group will make your email address visible to anyone on the Internet.
Your reply message has not been sent.
Your post was successful
 
From:
To:
Cc:
Followup To:
Add Cc | Add Followup-to | Edit Subject
Subject:
Validation:
For verification purposes please type the characters you see in the picture below or the numbers you hear by clicking the accessibility icon. Listen and type the numbers you hear
 
lunarjetset  
View profile  
 More options May 24 2012, 4:11 pm
From: lunarjetset <pete.nel...@workfu.com>
Date: Thu, 24 May 2012 13:11:26 -0700 (PDT)
Local: Thurs, May 24 2012 4:11 pm
Subject: Concurrency Exception again

After deploying a fix I'm getting a Concurrency Exception again - it only
happens very rarely and I can't reproduce it.

Is there any way to log the actual document that is getting the Concurrency
issue - as that would really help debug this.

Thanks
Pete


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Oren Eini (Ayende Rahien)  
View profile  
 More options May 24 2012, 4:18 pm
From: "Oren Eini (Ayende Rahien)" <aye...@ayende.com>
Date: Thu, 24 May 2012 22:18:46 +0200
Local: Thurs, May 24 2012 4:18 pm
Subject: Re: [RavenDB] Concurrency Exception again

You can enable debug logging, sure.
https://ravendb.net/docs/server/deployment/docs-debug-logging

Note that concurrency exception is *expected* when you are running in
UseOptimisticconcurrency = true

On Thu, May 24, 2012 at 10:11 PM, lunarjetset <pete.nel...@workfu.com>wrote:


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Pete Nelson  
View profile  
 More options May 24 2012, 4:21 pm
From: Pete Nelson <pete.nel...@workfu.com>
Date: Thu, 24 May 2012 21:21:39 +0100
Local: Thurs, May 24 2012 4:21 pm
Subject: Re: [RavenDB] Concurrency Exception again
Thanks Oren - scared to enable that on the live server though which is
the only place that is getting these.

BUT: if you say it's expected and we catch it and deal with it then I
guess it's not doing to do any harm (except the last user won't get
their write - which actually doesn't matter for this app)


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Chris Marisic  
View profile  
 More options May 24 2012, 5:04 pm
From: Chris Marisic <ch...@marisic.com>
Date: Thu, 24 May 2012 14:04:39 -0700 (PDT)
Local: Thurs, May 24 2012 5:04 pm
Subject: Re: [RavenDB] Concurrency Exception again

It's up to you to decide what a concurrency exception means. You can either
reject the write (easiest), or you can attempt to merge the changes into
the newest document (not exceedingly hard, but can lead to unintended
consequences), dump the documents into a conflict resolution queue that a
human will then parse the correct state of the object (hardest/most work)


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
lunarjetset  
View profile  
 More options May 25 2012, 5:31 am
From: lunarjetset <pete.nel...@workfu.com>
Date: Fri, 25 May 2012 02:31:35 -0700 (PDT)
Local: Fri, May 25 2012 5:31 am
Subject: Re: [RavenDB] Concurrency Exception again

thanks Chris - good advice.  When you say reject the write - do you mean
just catch the exception and move on?  Or is there a better way?


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Matt Warren  
View profile  
 More options May 25 2012, 5:43 am
From: Matt Warren <mattd...@gmail.com>
Date: Fri, 25 May 2012 02:43:31 -0700 (PDT)
Local: Fri, May 25 2012 5:43 am
Subject: Re: [RavenDB] Concurrency Exception again

Yeah, if you just catch the exception and move on, that means you are
rejecting that particular write. That's the easiest way of handling issues
with concurrent writes because the RavenDB api does most of the work for
you, you just have to catch the exception.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Pete Nelson  
View profile  
 More options May 25 2012, 6:19 am
From: Pete Nelson <pete.nel...@workfu.com>
Date: Fri, 25 May 2012 11:19:16 +0100
Local: Fri, May 25 2012 6:19 am
Subject: Re: [RavenDB] Concurrency Exception again
thanks Matt

 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Chris Marisic  
View profile  
 More options May 25 2012, 8:28 am
From: Chris Marisic <ch...@marisic.com>
Date: Fri, 25 May 2012 05:28:53 -0700 (PDT)
Local: Fri, May 25 2012 8:28 am
Subject: Re: [RavenDB] Concurrency Exception again

Generally if you're going to go with rejecting the write, you want to
inform the user that submitted that as best as possible.

On a more global level, my goals with usage of RavenDB is to hook in
SignalR between the html client & MVC3 server such that if anyone modifies
documents that other users have open in their browsers that they'll either
get full change information immediately, or at the very least be informed
preemptively that the document has changed and it needs to be reloaded
before editing can continue. As opposed for them to do their work
completely, THEN find out it's rejected.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Pete Nelson  
View profile   Translate to Translated (View Original)
 More options May 25 2012, 8:56 am
From: Pete Nelson <pete.nel...@workfu.com>
Date: Fri, 25 May 2012 13:56:47 +0100
Local: Fri, May 25 2012 8:56 am
Subject: Re: [RavenDB] Concurrency Exception again

sounds really interesting!


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
jamesfarrer  
View profile   Translate to Translated (View Original)
 More options May 25 2012, 12:46 pm
From: jamesfarrer <james.far...@gmail.com>
Date: Fri, 25 May 2012 09:46:43 -0700 (PDT)
Local: Fri, May 25 2012 12:46 pm
Subject: Re: [RavenDB] Concurrency Exception again

Hi Chris,

This sounds a really interesting approach. If you fancy writing a blog post
on what you're doing then that would be wonderful!

James


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Tom Cabanski  
View profile  
 More options May 25 2012, 1:17 pm
From: Tom Cabanski <t...@cabanski.com>
Date: Fri, 25 May 2012 12:17:37 -0500
Local: Fri, May 25 2012 1:17 pm
Subject: Re: [RavenDB] Concurrency Exception again

Your problem domain must be incredibly collaborative to demand the
complexity of the kind of solution you're suggesting.  Is it really common
for two users to be changing the same data element at roughly the same time
in your domain?

On Fri, May 25, 2012 at 11:46 AM, jamesfarrer <james.far...@gmail.com>wrote:


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Oren Eini (Ayende Rahien)  
View profile   Translate to Translated (View Original)
 More options May 26 2012, 3:24 am
From: "Oren Eini (Ayende Rahien)" <aye...@ayende.com>
Date: Sat, 26 May 2012 10:24:08 +0300
Local: Sat, May 26 2012 3:24 am
Subject: Re: [RavenDB] Concurrency Exception again

Chris,
Note that this is a planned 1.2 feature.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Chris Marisic  
View profile   Translate to Translated (View Original)
 More options May 29 2012, 8:23 am
From: Chris Marisic <ch...@marisic.com>
Date: Tue, 29 May 2012 05:23:03 -0700 (PDT)
Local: Tues, May 29 2012 8:23 am
Subject: Re: [RavenDB] Concurrency Exception again

What exactly is a 1.2 feature?


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Oren Eini (Ayende Rahien)  
View profile   Translate to Translated (View Original)
 More options May 29 2012, 8:33 am
From: "Oren Eini (Ayende Rahien)" <aye...@ayende.com>
Date: Tue, 29 May 2012 15:33:36 +0300
Local: Tues, May 29 2012 8:33 am
Subject: Re: [RavenDB] Concurrency Exception again

A feature that is planned for 1.2 release


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Chris Marisic  
View profile  
 More options May 29 2012, 8:38 am
From: Chris Marisic <ch...@marisic.com>
Date: Tue, 29 May 2012 05:38:03 -0700 (PDT)
Local: Tues, May 29 2012 8:38 am
Subject: Re: [RavenDB] Concurrency Exception again

What exactly is the feature you're saying is in 1.2


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Oren Eini (Ayende Rahien)  
View profile   Translate to Translated (View Original)
 More options May 29 2012, 8:42 am
From: "Oren Eini (Ayende Rahien)" <aye...@ayende.com>
Date: Tue, 29 May 2012 15:42:05 +0300
Local: Tues, May 29 2012 8:42 am
Subject: Re: [RavenDB] Concurrency Exception again

Notifications for changes in the db.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Chris Marisic  
View profile  
 More options May 29 2012, 9:46 am
From: Chris Marisic <ch...@marisic.com>
Date: Tue, 29 May 2012 06:46:52 -0700 (PDT)
Local: Tues, May 29 2012 9:46 am
Subject: Re: [RavenDB] Concurrency Exception again

Not that I'm diminishing the importance of those notifications as there are
many scenarios that they will matter for, however for the described
scenario:

user1 on abc
user2 on abc

user2 modifies abc

tell user1 abc has been modified

The change notification from the database doesn't go far for telling user1.
This would still likely involve SignalR (not saying this is Raven's
responsibility just stating this) so that I could inform the client for
user1. Now this theoretically could be VERY easy with signalR + raven
change notifications because I store my documents using IDs that are the
actual true URL slugs to access the resource through REST so it could
potentially be very easy to find all clients that are connected to
"mydoc/abc"

This seems like a very logical seperation of concerns for Raven to not take
a full on dependency to signalR but provide the tools (change
notifications) to make working with SignalR very straightforward. Instead
of the current scenario where you'd need to hold some kind of dictionary
for every user of what documents they have open, and then when any document
changes trying to walk all users dictionaries to find if any contain that,
then obviously keeping the dictionaries up to date etc.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Oren Eini (Ayende Rahien)  
View profile   Translate to Translated (View Original)
 More options May 29 2012, 9:48 am
From: "Oren Eini (Ayende Rahien)" <aye...@ayende.com>
Date: Tue, 29 May 2012 16:48:07 +0300
Local: Tues, May 29 2012 9:48 am
Subject: Re: [RavenDB] Concurrency Exception again

Chris,
The problem that I am trying to prevent is the need to do polling to _get_
the recent changes.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
End of messages
« Back to Discussions « Newer topic     Older topic »