You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ambari.apache.org by "Nate Cole (JIRA)" <ji...@apache.org> on 2017/10/02 14:52:00 UTC

[jira] [Updated] (AMBARI-22110) Some ResourceProviders Are Not Transactional

     [ https://issues.apache.org/jira/browse/AMBARI-22110?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Nate Cole updated AMBARI-22110:
-------------------------------
    Summary: Some ResourceProviders Are Not Transactional  (was: ResourceProviders Are Not Transactional)

> Some ResourceProviders Are Not Transactional
> --------------------------------------------
>
>                 Key: AMBARI-22110
>                 URL: https://issues.apache.org/jira/browse/AMBARI-22110
>             Project: Ambari
>          Issue Type: Bug
>          Components: ambari-server
>            Reporter: Nate Cole
>            Assignee: Nate Cole
>            Priority: Critical
>             Fix For: 2.6.0
>
>
> While investigating an issue with VDFs which don't contain any OS's which match the cluster, it was observed that, even after throwing an Exception inside of a Transaction, the entities created inside that transaction were being committed. 
> Eventual investigation led to a problem between Guice/AOP and our ResourceProviders. The Guice documentations says that {{@Transactional}} methods can only be intercepted on objects created by Guice:
> https://github.com/google/guice/wiki/AOP:
> {quote}
> Instances must be created by Guice by an @Inject-annotated or no-argument constructor It is not possible to use method interception on instances that aren't constructed by Guice.
> {quote}
> However, some of the ResourceProviders which use {{@Transactional}} are not constructed by Guice.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)