postgresql-jdbc.git / summary / log / commit / refs
commit 49d66e4ec0c514fbfa78cd72f7a8aeb742489fbd
Author: Vladimir Sitnikov <sitnikov.vladimir@gmail.com>
Date: Mon Mar 30 15:52:47 2020 +0000
Revert "fix: add support for full names of data types (#1719)"
This reverts commit f554118a95cda1470fc7ac8b67b8ae7c18b25826.
.../java/org/postgresql/jdbc/TypeInfoCache.java | 9 +---
.../java/org/postgresql/test/jdbc2/ArrayTest.java | 61 ----------------------
2 files changed, 2 insertions(+), 68 deletions(-)
diff --git a/pgjdbc/src/main/java/org/postgresql/jdbc/TypeInfoCache.java b/pgjdbc/src/main/java/org/postgresql/jdbc/TypeInfoCache.java
index e0bc583f..a423c3a1 100644
--- a/pgjdbc/src/main/java/org/postgresql/jdbc/TypeInfoCache.java
+++ b/pgjdbc/src/main/java/org/postgresql/jdbc/TypeInfoCache.java
@@ -77,11 +77,9 @@ public class TypeInfoCache implements TypeInfo {
{"money", Oid.MONEY, Types.DOUBLE, "java.lang.Double", Oid.MONEY_ARRAY},
{"numeric", Oid.NUMERIC, Types.NUMERIC, "java.math.BigDecimal", Oid.NUMERIC_ARRAY},
{"float4", Oid.FLOAT4, Types.REAL, "java.lang.Float", Oid.FLOAT4_ARRAY},
- {"double precision", Oid.FLOAT8, Types.DOUBLE, "java.lang.Double", Oid.FLOAT8_ARRAY},
{"float8", Oid.FLOAT8, Types.DOUBLE, "java.lang.Double", Oid.FLOAT8_ARRAY},
{"char", Oid.CHAR, Types.CHAR, "java.lang.String", Oid.CHAR_ARRAY},
{"bpchar", Oid.BPCHAR, Types.CHAR, "java.lang.String", Oid.BPCHAR_ARRAY},
- {"character varying", Oid.VARCHAR, Types.VARCHAR, "java.lang.String", Oid.VARCHAR_ARRAY},
{"varchar", Oid.VARCHAR, Types.VARCHAR, "java.lang.String", Oid.VARCHAR_ARRAY},
{"text", Oid.TEXT, Types.VARCHAR, "java.lang.String", Oid.TEXT_ARRAY},
{"name", Oid.NAME, Types.VARCHAR, "java.lang.String", Oid.NAME_ARRAY},
@@ -90,13 +88,10 @@ public class TypeInfoCache implements TypeInfo {
{"bit", Oid.BIT, Types.BIT, "java.lang.Boolean", Oid.BIT_ARRAY},
{"date", Oid.DATE, Types.DATE, "java.sql.Date", Oid.DATE_ARRAY},
{"time", Oid.TIME, Types.TIME, "java.sql.Time", Oid.TIME_ARRAY},
- {"time without time zone", Oid.TIME, Types.TIME, "java.sql.Time", Oid.TIME_ARRAY},
{"timetz", Oid.TIMETZ, Types.TIME, "java.sql.Time", Oid.TIMETZ_ARRAY},
- {"time with time zone", Oid.TIMETZ, Types.TIME, "java.sql.Time", Oid.TIMETZ_ARRAY},
{"timestamp", Oid.TIMESTAMP, Types.TIMESTAMP, "java.sql.Timestamp", Oid.TIMESTAMP_ARRAY},
- {"timestamp without time zone", Oid.TIMESTAMP, Types.TIMESTAMP, "java.sql.Timestamp", Oid.TIMESTAMP_ARRAY},
- {"timestamptz", Oid.TIMESTAMPTZ, Types.TIMESTAMP, "java.sql.Timestamp", Oid.TIMESTAMPTZ_ARRAY},
- {"timestamp with time zone", Oid.TIMESTAMPTZ, Types.TIMESTAMP, "java.sql.Timestamp", Oid.TIMESTAMPTZ_ARRAY},
+ {"timestamptz", Oid.TIMESTAMPTZ, Types.TIMESTAMP, "java.sql.Timestamp",
+ Oid.TIMESTAMPTZ_ARRAY},
//#if mvn.project.property.postgresql.jdbc.spec >= "JDBC4.2"
{"refcursor", Oid.REF_CURSOR, Types.REF_CURSOR, "java.sql.ResultSet", Oid.REF_CURSOR_ARRAY},
//#endif
diff --git a/pgjdbc/src/test/java/org/postgresql/test/jdbc2/ArrayTest.java b/pgjdbc/src/test/java/org/postgresql/test/jdbc2/ArrayTest.java
index 595ea167..60ec800f 100644
--- a/pgjdbc/src/test/java/org/postgresql/test/jdbc2/ArrayTest.java
+++ b/pgjdbc/src/test/java/org/postgresql/test/jdbc2/ArrayTest.java
@@ -30,8 +30,6 @@ import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;
-import java.sql.Time;
-import java.sql.Timestamp;
import java.sql.Types;
import java.util.ArrayList;
import java.util.Collection;
@@ -174,65 +172,6 @@ public class ArrayTest extends BaseTest4 {
rs.close();
}
- @Test
- public void testSetArraysWithFullDataTypeNames() throws SQLException {
- // Create a test table and insert arrays with data types identified by their full names
- TestUtil.createTable(conn, "arrtest_fullnames", "floatarr double precision[], varchararr character varying(20)[], timearr time without time zone[], tzarr timestamp with time zone[]");
-
- PreparedStatement pstmt = conn.prepareStatement("INSERT INTO arrtest_fullnames VALUES (?,?,?,?)");
-
- final PGConnection arraySupport = conn.unwrap(PGConnection.class);
-
- pstmt.setArray(1, arraySupport.createArrayOf("double precision", new Object[] { 1d, 2d, 3d }));
- pstmt.setObject(2, arraySupport.createArrayOf("character varying", new String[] { "abc", "f'a", "fa\"b" }));
- pstmt.setObject(3, arraySupport.createArrayOf("time without time zone", new Object[] { Time.valueOf("12:34:56"), Time.valueOf("03:30:25"), Time.valueOf("05:14:53") }));
- pstmt.setObject(4, arraySupport.createArrayOf("timestamp with time zone", new Object[] { "1996-01-23 12:00:00-08", "1996-07-09 05:07:30+00", "1997-08-16 16:51:00-04" }));
-
- pstmt.executeUpdate();
- pstmt.close();
-
- // Select the created record and ensure the returned data has the correct type and content
- Statement stmt = conn.createStatement();
- ResultSet rs = stmt.executeQuery("SELECT floatarr, varchararr, timearr, tzarr FROM arrtest_fullnames");
- Assert.assertTrue(rs.next());
-
- Array arr = rs.getArray(1);
- Assert.assertEquals(Types.DOUBLE, arr.getBaseType());
- Double[] doublearr = (Double[]) arr.getArray();
- Assert.assertEquals(3, doublearr.length);
- Assert.assertEquals(1d, doublearr[0].intValue(), 0);
- Assert.assertEquals(2d, doublearr[1].intValue(), 0);
- Assert.assertEquals(3d, doublearr[2].intValue(), 0);
-
- arr = rs.getArray(2);
- Assert.assertEquals(Types.VARCHAR, arr.getBaseType());
- String[] varchararr = (String[]) arr.getArray();
- Assert.assertEquals(3, varchararr.length);
- Assert.assertEquals("abc", varchararr[0]);
- Assert.assertEquals("f'a", varchararr[1]);
- Assert.assertEquals("fa\"b", varchararr[2]);
-
- arr = rs.getArray(3);
- Assert.assertEquals(Types.TIME, arr.getBaseType());
- Time[] timearr = (Time []) arr.getArray();
- Assert.assertEquals(3, timearr.length);
- Assert.assertEquals(Time.valueOf("12:34:56"), timearr[0]);
- Assert.assertEquals(Time.valueOf("03:30:25"), timearr[1]);
- Assert.assertEquals(Time.valueOf("05:14:53"), timearr[2]);
-
- arr = rs.getArray(4);
- Assert.assertEquals(Types.TIMESTAMP, arr.getBaseType());
- Timestamp[] tzarr = (Timestamp[]) arr.getArray();
- Assert.assertEquals(3, timearr.length);
- Assert.assertEquals(822427200000L, tzarr[0].getTime());
- Assert.assertEquals(836888850000L, tzarr[1].getTime());
- Assert.assertEquals(871764660000L, tzarr[2].getTime());
-
- rs.close();
-
- TestUtil.dropTable(conn, "arrtest_fullnames");
- }
-
@Test
public void testSetNullArrays() throws SQLException {
PreparedStatement pstmt = conn.prepareStatement("INSERT INTO arrtest VALUES (?,?,?)");
[parent: 3871bfd8ba6c]