[
https://issues.apache.org/jira/browse/GEODE-3391?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16329384#comment-16329384
]
ASF GitHub Bot commented on GEODE-3391:
---------------------------------------
dgkimura opened a new pull request #188: GEODE-3391: Update Transaction id to
pass by references
URL: https://github.com/apache/geode-native/pull/188
Updates _CacheTransactionManager.hpp_ to use type ```TransactionId&```
instead of ```std::shared_ptr<TransactionId>```.
Notes: Important to note this change to ref forces behavior change because
previous code returned nullptr when suspending transaction if transaction isn't
currently in flight
([example](https://github.com/apache/geode-native/compare/develop...dgkimura:feature/GEODE-3391-transactionidref?expand=1#diff-1d700ac09f0ace4175f618859ead7f34L329)).
Now we instead throw. If we wanted to preserve previous behavior, we would
likely need to use raw/smart pointers instead of references.
Testing: All stable integration tests and unittests passed on Mac and
Windows. Note that all but 1 of transaction tests are currently marked
flaky... I will try to tackle fixing these tests in separate pull-request.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
> eval shared_ptr usage in
> CacheListener/CacheLoader/CacheTransactionMgr/CacheWriter
> ----------------------------------------------------------------------------------
>
> Key: GEODE-3391
> URL: https://issues.apache.org/jira/browse/GEODE-3391
> Project: Geode
> Issue Type: Improvement
> Components: native client
> Reporter: Ernest Burghardt
> Priority: Major
> Labels: pull-request-available
>
> evaluate shared_ptr usage and change to reference
> virtual void afterRegionDisconnected(Region& region)
> virtual CacheablePtr load(Region& rp, const CacheableKeyPtr& key,
> const UserDataPtr& aCallbackArgument) = 0;
> virtual void close(Region& rp);
> virtual void resume(const TransactionId& transactionId)
> virtual const TransactionId& getTransactionId() = 0;
> virtual void close(Region& rp);
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)