[Glass] Help understanding a RcReadSet commit conflict

Mariano Martinez Peck via Glass glass at lists.gemtalksystems.com
Thu Jun 16 07:54:17 PDT 2016


Hi,

My code that runs background jobs on a separate gem (based on Otto's
code...similar to ServiceVM), stores the commit conflict information inside
the persistent background process instance for post commit conflict
analysis.

I have a job that failed today and with the following commit conflict info:

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( ))


So... commitResult is #failure and the only thing set up is RcReadSet. I
have searched in the programming guides for RcReadSet and I found nothing.
I am inspecting the array of it, but it is of size 973...which makes it
impossible to understand what it really caused the conflict.

Is there any tip on how can analyze this better?

Thanks,


-- 
Mariano
http://marianopeck.wordpress.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.gemtalksystems.com/mailman/private/glass/attachments/20160616/41a80d82/attachment.html>


More information about the Glass mailing list