GitHub user afs opened a pull request:

    https://github.com/apache/jena/pull/107

    JENA-1085 : Common pattern for passing down transaction lifecycle 
operations.

    
    * Abort called `end` directly causing the warning to be emitted
    * Abort did not call quadIndex.abort/defaultGraph.abort
    * Pair up quadIndex.end/defaultGraph.end for read transactions
    * Add locks around all pairs of quadIndex, defaultGraph operation calls
    
    
    Discussion points:
    
    * `writeLock` is used even for read transactions (it's a no-op but it's 
called). Shoudl we rename it as e.g. `readerWriterLock`?
    * `TupleTable.abort` defaults to end.  Given the importance of the 
transaction cycle, might it be better to require each implementation to do 
that. It puts all the begin/commit/abort/end code for one component in one 
place for the next person to look at the code.

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/afs/jena master

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/jena/pull/107.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #107
    
----
commit 39af9c3b447b56c2f237af43c0b5ffb5fa287bce
Author: Andy Seaborne <[email protected]>
Date:   2015-12-11T14:28:48Z

    Cleanly abort a write transaction.

commit c709ef793bf2f99e8ed951e67509679a36f6af7b
Author: Andy Seaborne <[email protected]>
Date:   2015-12-11T14:29:58Z

    JENA-1078: Silence warnings.
    
    This calls tests error conditions makign logged warnings expected.

commit 2cfa0e30aabebb069921a3187a57f17ec1d37310
Author: Andy Seaborne <[email protected]>
Date:   2015-12-11T14:38:07Z

    JENA-1085: Always pass down transaction lifecycle calls.
    
    * Abort called `end` directly causing the warning to be emitted
    * Abort did not call quadIndex.abort/defaultGraph.abort
    * Pair up quadIndex.end/defaultGraph.end for read transactions
    * Add locks around all pairs of quadIndex, defaultGraph operation calls

----


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---

Reply via email to