[ 
https://issues.apache.org/jira/browse/GEODE-8735?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17235867#comment-17235867
 ] 

ASF GitHub Bot commented on GEODE-8735:
---------------------------------------

pivotal-jbarrett commented on pull request #700:
URL: https://github.com/apache/geode-native/pull/700#issuecomment-730822328


   > * Take into account that for OS like Linux, Mac... in addition to exporting
   >   the symbols in the application, you would need to specify `-rdynamic`
   >   option while compiling.
   
   This might make great example with corresponding CMake configuration.


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> Enable factory lookup logic to look for symbols in the application
> ------------------------------------------------------------------
>
>                 Key: GEODE-8735
>                 URL: https://issues.apache.org/jira/browse/GEODE-8735
>             Project: Geode
>          Issue Type: Improvement
>          Components: native client
>    Affects Versions: 1.13.1
>            Reporter: Mario Salazar de Torres
>            Priority: Major
>              Labels: pull-request-available
>
> *AS A* native client contributor
> *I WANT* to be able to specify factory names within the application space
> *SO THAT* the user does not need to create a separate shared library to load 
> several items like partition resolvers, cache loaders, cache writers, 
> partition resolvers...
> ----
> *Additional information*
> The rationale for this change is that if the user wants to declaratively 
> specify a partition resolver, right now the only way is by creating the 
> shared library.
> So the idea would be to change the current factory implementation, so library 
> name is an optional field, and whenever "library-name" is not specified, the 
> client will look for symbols within the application instead.
> *For example:*
> Using this region definition:
> {code:xml}
> <region name="region_part_a">
>     <region-attributes refid="CACHING_PROXY"
>                                   pool-name="partitioned-pool">
>         <partition-resolver library-function-name="createPartitionResolver"/>
>     </region-attributes>
> </region>
> {code}
> And within the application defining this function:
> {code:cpp}
> APPLICATION_EXPORT PartitionResolver* createPartitionResolver()
> {
>   return new StringPrefixPartitionResolver{};
> }
> {code}
> You could declaratively create a region which uses the 
> StringPrefixPartitionResolver.
> *IMPORTANT.* Take into account that documentation should be updated in order 
> to indicate that library-name will become an optional field and what it means 
> whenever it's not present.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to