[Glass] Help understanding a RcReadSet commit conflict

Dale Henrichs via Glass glass at lists.gemtalksystems.com
Wed Jun 22 13:21:02 PDT 2016



On 06/22/2016 12:20 PM, Mariano Martinez Peck wrote:
>
>
> On Wed, Jun 22, 2016 at 2:52 PM, Dale Henrichs via Glass 
> <glass at lists.gemtalksystems.com 
> <mailto:glass at lists.gemtalksystems.com>> wrote:
>
>
>
>     On 06/16/2016 07:54 AM, Mariano Martinez Peck via Glass wrote:
>
>
>
>         Inspect aFaBackgroundProcess/aSymbolDictionary(
>         #'WriteWrite_minusRcReadSet'->anArray( aDictionary( )),
>         #'commitResult'->#'failure', #'RcReadSet'->anArray(
>         aRcCollisionBucket( aRcKeyValueDictionary( ,........)
>         --------------------
>         .                -> aSymbolDictionary(
>         #'WriteWrite_minusRcReadSet'->anArray( aDictionary( )),
>         #'commitResult'->#'failure', #'RcReadSet'->anArray(
>         aRcCollisionB...
>         ..               -> aFaBackgroundProcess
>         (class)@         -> SymbolDictionary
>         (oop)@           -> 15059544321
>         (committed)@     -> true
>         (notTranlogged)@ -> nil
>         1@               -> #'commitResult'->#'failure'
>         2@               -> #'RcReadSet'->anArray( aRcCollisionBucket(
>         aRcKeyValueDictionary(
>         'siteDB-debris-gemstone'->aFaGemStoneDataStore)),
>         aRcCollisionBucket( aRcK...
>         3@               -> #'Write-Write'->anArray( aDictionary( ))
>         4@               -> #'WriteWrite_minusRcReadSet'->anArray(
>         aDictionary( ))
>
>     Mariano,
>
>     I guess we are both blind:) ... While describing the "problem" to
>     a co-worker I noticed that the the Write-Write set is NOT EMPTY :):
>
>       3@               -> #'Write-Write'->anArray( aDictionary( ))
>
>     The conflict that you are getting is on the empty dictionary
>     (aDictionary( )) ... presumably you are creating an empty
>     Dictionary somewhere in shared state and two sessions are trying
>     to update the dictionary...
>
>
>
> Uff  wtf!!!! Crap, we were both blind. Sorry to bother. Ok...the 
> hunting (findAllReferencePathsTo... )  has become... will see if I can 
> track down this guilty empty dict.
>
> Thanks!
>
haha ... happy hunting ...

BTW, if you find traipsing through the output of 
findAllReferencePathsTo... to be frustrating, you might want to try 
Obex[1] for visualizing the referencespath structure... Obex is still 
under development and it might require a bit of tweaking, but one of 
it's features is to allow you to build a visual network of the objects 
in the findAllReferencePathsTo... result set ...

Dale

[1] https://github.com/dalehenrich/obex#object-explorer-for-gemstones-64
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.gemtalksystems.com/mailman/private/glass/attachments/20160622/b978e4ac/attachment.html>


More information about the Glass mailing list