Skip to content

Conversation

itinycheng
Copy link
Contributor

What kind of change does this PR introduce? (check at least one)

  • Bugfix
  • Feature
  • Code style
  • Refactor
  • Doc
  • Other, please describe:

The description of the PR:

Fix for the issue: #518;

It works for me, but I didn't test it for every supported datasource.

Other information:

@JoeyBling
Copy link

  建议将条件隔离在单独的@Configuration类上,注释的name属性导致可读性较差

参考原先实现:

/**
 * 存在Druid数据源时, 加入创建器
 */
@Configuration(proxyBeanMethods = false)
@ConditionalOnClass(DruidDataSource.class)
static class DruidDataSourceCreatorConfiguration {

    @Bean
    @Order(DRUID_ORDER)
    public DruidDataSourceCreator druidDataSourceCreator() {
        return new DruidDataSourceCreator();
    }
}

@itinycheng
Copy link
Contributor Author

@JoeyBling 确实会一些可读性问题,另外当未来注解中class的包变更时,可能在编译期不能被发现;

@huayanYu 是否认 @JoeyBling 的修改方案呢,如果没问题,我可以在这个PR上修改下或你那直接修改掉;

@huayanYu
Copy link
Member

huayanYu commented Jul 5, 2023

@itinycheng 还是用原来方案吧先,你来修复,#514 这个是否也是类似问题

@itinycheng
Copy link
Contributor Author

@huayanYu 不是这个问题,我试过了,那个你指派给我吧,我晚上用个人电脑来pr

@ZPZP1
您定位到的问题是?

@ZPZP1
Copy link
Contributor

ZPZP1 commented Jul 5, 2023

您说的这个问题,确实可以通过全限定名解决,我指的是#514这个issue,那个问题主要是由于包依赖导致的,所以您这个提交解决不了514的问题

@itinycheng
Copy link
Contributor Author

@itinycheng 还是用原来方案吧先,你来修复,#514 这个是否也是类似问题

看问题描述,应该是同一个原因造成的;
另外除了springboot的issue提到这个问题外,springboot doc也有一段相关的说明:
image

我的排查结论应该就是这些;
之前版本代码是正确有效的,改为当前这样确实不太清楚是什么缘由;

@itinycheng
Copy link
Contributor Author

itinycheng commented Jul 5, 2023

您说的这个问题,确实可以通过全限定名解决,我指的是#514这个issue,那个问题主要是由于包依赖导致的,所以您这个提交解决不了514的问题

@ZPZP1
@huayanYu
报错内容确实和我遇到的不一样,但看#514里的讨论,和我遇到的挺像的;

@ZPZP1
Copy link
Contributor

ZPZP1 commented Jul 5, 2023

我在那个iusse下说明了下原因,也和这个condition机制有关吧

@huayanYu
Copy link
Member

huayanYu commented Jul 5, 2023

所以大家谁来提交下PR,我尽快发个版

@ZPZP1
Copy link
Contributor

ZPZP1 commented Jul 5, 2023

是两个问题。514这个需要让AtomikosTransactionFactory这个类实现一个新接口,然后DynamicDataSourceCreatorAutoConfiguration中atomikosTransactionFactory这个Bean工厂方法返回这个接口类型,就解决了。和这个pr的内容不是一个具体原因,我得晚上提交代码,要是这个老哥有时间也可以连带提交一下

@itinycheng
Copy link
Contributor Author

我先解决下当前问题吧,等会commit

@itinycheng
Copy link
Contributor Author

发现了另外一个问题:global datasource config 的功能好像不太好用,获取不到配置文件中的配置;

image

@huayanYu
Copy link
Member

huayanYu commented Jul 5, 2023

确定有这个问题么?

@huayanYu huayanYu merged commit 839cf3c into baomidou:master Jul 5, 2023
@itinycheng
Copy link
Contributor Author

itinycheng commented Jul 5, 2023

确定有这个问题么?

@huayanYu
没问题,我yaml错配了,忽略这个;

@zz-zhi54
Copy link

zz-zhi54 commented Jul 5, 2023

@ZPZP1 跟condition机制没有关系。这就是代码的bug

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants