This is an automated email from the ASF dual-hosted git repository.

zhonghongsheng pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere.git


The following commit(s) were added to refs/heads/master by this push:
     new d7c11b15fae Add test unit of driver hash_mod (#37281)
d7c11b15fae is described below

commit d7c11b15fae8f0001dff76182119f47fa26ab73a
Author: Hongsheng Zhong <[email protected]>
AuthorDate: Fri Dec 5 17:59:28 2025 +0800

    Add test unit of driver hash_mod (#37281)
---
 .../driver/ShardingSphereDriverTest.java           | 33 ++++++++++++++++++++++
 1 file changed, 33 insertions(+)

diff --git 
a/jdbc/src/test/java/org/apache/shardingsphere/driver/ShardingSphereDriverTest.java
 
b/jdbc/src/test/java/org/apache/shardingsphere/driver/ShardingSphereDriverTest.java
index 985f7588f9b..839bcc43754 100644
--- 
a/jdbc/src/test/java/org/apache/shardingsphere/driver/ShardingSphereDriverTest.java
+++ 
b/jdbc/src/test/java/org/apache/shardingsphere/driver/ShardingSphereDriverTest.java
@@ -73,6 +73,39 @@ class ShardingSphereDriverTest {
         }
     }
     
+    @Test
+    void assertHashModSetLongOnIntColumnWorks() throws SQLException {
+        try (Connection connection = 
DriverManager.getConnection("jdbc:shardingsphere:classpath:config/driver/foo-driver-fixture.yaml"))
 {
+            assertThat(connection, isA(ShardingSphereConnection.class));
+            try (Statement statement = connection.createStatement()) {
+                statement.execute("DROP TABLE IF EXISTS t_order");
+                statement.execute("CREATE TABLE t_order (order_id INT PRIMARY 
KEY, user_id INT)");
+            }
+            // TODO Replace 1 to -1 after HASH_MOD algorithm improved
+            int value = 1;
+            try (PreparedStatement preparedStatement = 
connection.prepareStatement("INSERT INTO t_order (order_id, user_id) VALUES (?, 
?)")) {
+                preparedStatement.setObject(1, value);
+                preparedStatement.setObject(2, 101);
+                int updatedCount = preparedStatement.executeUpdate();
+                assertThat(updatedCount, is(1));
+            }
+            try (PreparedStatement preparedStatement = 
connection.prepareStatement("SELECT * FROM t_order WHERE order_id = ?")) {
+                preparedStatement.setObject(1, value);
+                ResultSet resultSet = preparedStatement.executeQuery();
+                assertTrue(resultSet.next());
+                assertThat(resultSet.getInt(1), is(value));
+                resultSet.close();
+            }
+            try (PreparedStatement preparedStatement = 
connection.prepareStatement("SELECT * FROM t_order WHERE order_id = ?")) {
+                preparedStatement.setObject(1, (long) value);
+                ResultSet resultSet = preparedStatement.executeQuery();
+                assertTrue(resultSet.next());
+                assertThat(resultSet.getInt(1), is(value));
+                resultSet.close();
+            }
+        }
+    }
+    
     @Test
     void assertVarbinaryColumnWorks() throws SQLException {
         try (

Reply via email to