<p dir="auto"><a target="_blank" rel="noopener noreferrer nofollow" href="https://user-images.githubusercontent.com/44893749/177528495-f2f79409-0476-479d-9727-92675820d330.png"><img width="975" alt="图片" src="https://user-images.githubusercontent.com/44893749/177528495-f2f79409-0476-479d-9727-92675820d330.png" style="max-width: 100%;"></a></p>
<p dir="auto"><a target="_blank" rel="noopener noreferrer nofollow" href="https://user-images.githubusercontent.com/44893749/177528588-63035ee7-6d06-4ab9-bca8-2881097c7c8a.png"><img width="1534" alt="图片" src="https://user-images.githubusercontent.com/44893749/177528588-63035ee7-6d06-4ab9-bca8-2881097c7c8a.png" style="max-width: 100%;"></a></p>
<h2 dir="auto">ComboPooledDataSource not compatible with apache shardingsphere.</h2>
<p dir="auto">I am currently trying to implement shardingshpere in my current company's codebase. Previously created an example project using HikariDataSource and it worked fine.</p>
<p dir="auto">Now in companies code base uses c3p0.ComboPooledDataSource as datasource. So when am trying to create shardingshphere datasource using this datasource its failing.</p>
<p dir="auto">In HikariDatasource, the standardProps are coming correct.<br>
<a target="_blank" rel="noopener noreferrer nofollow" href="https://user-images.githubusercontent.com/25997886/181229436-e6492019-0bdf-4f0b-8ac7-8c508e4e2024.png"><img width="734" alt="image" src="https://user-images.githubusercontent.com/25997886/181229436-e6492019-0bdf-4f0b-8ac7-8c508e4e2024.png" style="max-width: 100%;"></a></p>
<p dir="auto">But in c3p0.ComboPooledDataSource, the standardProps are giving just password only.<br>
<a target="_blank" rel="noopener noreferrer nofollow" href="https://user-images.githubusercontent.com/25997886/181229691-dc137910-ac57-4144-811f-6d5fed3802ea.png"><img width="734" alt="image" src="https://user-images.githubusercontent.com/25997886/181229691-dc137910-ac57-4144-811f-6d5fed3802ea.png" style="max-width: 100%;"></a></p>
<p dir="auto">The main cause of the issue is that in c3p0.ComboPooledDataSource, the properties are stored in different format. <code class="notranslate">Like username as user and url as jdbcUrl.</code><br>
<a target="_blank" rel="noopener noreferrer nofollow" href="https://user-images.githubusercontent.com/25997886/181230461-42eb9ecd-af15-4925-8059-5081a0417283.png"><img width="982" alt="image" src="https://user-images.githubusercontent.com/25997886/181230461-42eb9ecd-af15-4925-8059-5081a0417283.png" style="max-width: 100%;"></a></p>
<p dir="auto"><code class="notranslate">Thats why am getting a nullpointer exception here since both the keys are username and url</code><br>
<a target="_blank" rel="noopener noreferrer nofollow" href="https://user-images.githubusercontent.com/25997886/181230180-b2b2f3b8-2be1-41ab-a011-13efe2a1f0a8.png"><img width="982" alt="image" src="https://user-images.githubusercontent.com/25997886/181230180-b2b2f3b8-2be1-41ab-a011-13efe2a1f0a8.png" style="max-width: 100%;"></a></p>
<p dir="auto">I was under the assumption that apache shardingsphere is compatible with all kinds of datasource. I am stuck here.</p>
<p dir="auto">Please help me out if possible.</p>
<p dir="auto">Datasource Config</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="dataSources:
  ds:
    dataSourceClassName: com.mchange.v2.c3p0.ComboPooledDataSource
    driverClassName: com.mysql.jdbc.Driver
    jdbcUrl: jdbc:mysql://localhost:3306/demo_ds?serverTimezone=UTC&amp;useSSL=false&amp;useUnicode=true&amp;characterEncoding=UTF-8
    user: root
    username: root
    password: password
    max-active: 16"><pre class="notranslate"><code class="notranslate">dataSources:
  ds:
    dataSourceClassName: com.mchange.v2.c3p0.ComboPooledDataSource
    driverClassName: com.mysql.jdbc.Driver
    jdbcUrl: jdbc:mysql://localhost:3306/demo_ds?serverTimezone=UTC&amp;useSSL=false&amp;useUnicode=true&amp;characterEncoding=UTF-8
    user: root
    username: root
    password: password
    max-active: 16
</code></pre></div>
<p dir="auto">pom.xml</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="&lt;dependency&gt;
            &lt;groupId&gt;org.apache.shardingsphere&lt;/groupId&gt;
            &lt;artifactId&gt;shardingsphere-jdbc-core&lt;/artifactId&gt;
            &lt;version&gt;5.1.2&lt;/version&gt;
&lt;/dependency&gt;
&lt;dependency&gt;
                &lt;groupId&gt;com.mchange&lt;/groupId&gt;
                &lt;artifactId&gt;c3p0&lt;/artifactId&gt;
                &lt;version&gt;0.9.5.1&lt;/version&gt;
&lt;/dependency&gt;
"><pre class="notranslate"><code class="notranslate">&lt;dependency&gt;
            &lt;groupId&gt;org.apache.shardingsphere&lt;/groupId&gt;
            &lt;artifactId&gt;shardingsphere-jdbc-core&lt;/artifactId&gt;
            &lt;version&gt;5.1.2&lt;/version&gt;
&lt;/dependency&gt;
&lt;dependency&gt;
                &lt;groupId&gt;com.mchange&lt;/groupId&gt;
                &lt;artifactId&gt;c3p0&lt;/artifactId&gt;
                &lt;version&gt;0.9.5.1&lt;/version&gt;
&lt;/dependency&gt;

</code></pre></div>