Skip to content

Commit cb4f726

Browse files
fmeheustpsilberk
authored andcommitted
BigDecimal mapping and value range
1 parent ec31376 commit cb4f726

2 files changed

Lines changed: 10 additions & 6 deletions

File tree

data/semantickernel-data-oracle/src/main/java/com/microsoft/semantickernel/data/jdbc/oracle/OracleDataTypesMapping.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ public class OracleDataTypesMapping {
1414
public static final String LONG = "NUMBER(19)";
1515
public static final String FLOAT = "BINARY_FLOAT";
1616
public static final String DOUBLE = "BINARY_DOUBLE";
17-
public static final String DECIMAL = "NUMBER(18,2)";
17+
public static final String DECIMAL = "NUMBER";
1818
public static final String OFFSET_DATE_TIME = "TIMESTAMP(7) WITH TIME ZONE";
1919
public static final String UUID = "RAW(16)";
2020
public static final String JSON = "JSON";

data/semantickernel-data-oracle/src/test/java/com/microsoft/semantickernel/data/jdbc/oracle/OracleVectorStoreDataTypeSearchTest.java

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,9 @@
44
import com.microsoft.semantickernel.data.jdbc.JDBCVectorStoreOptions;
55
import com.microsoft.semantickernel.data.jdbc.JDBCVectorStoreRecordCollectionOptions;
66
import com.microsoft.semantickernel.data.vectorsearch.VectorSearchFilter;
7-
import com.microsoft.semantickernel.data.vectorsearch.VectorSearchResult;
87
import com.microsoft.semantickernel.data.vectorsearch.VectorSearchResults;
98
import com.microsoft.semantickernel.data.vectorstorage.VectorStoreRecordCollection;
109
import com.microsoft.semantickernel.data.vectorstorage.options.VectorSearchOptions;
11-
import org.junit.jupiter.api.BeforeEach;
1210
import org.junit.jupiter.params.ParameterizedTest;
1311
import org.junit.jupiter.params.provider.Arguments;
1412
import org.junit.jupiter.params.provider.MethodSource;
@@ -24,7 +22,8 @@
2422
import static org.junit.jupiter.api.Assertions.assertTrue;
2523

2624
public class OracleVectorStoreDataTypeSearchTest extends OracleCommonVectorStoreRecordCollectionTest {
27-
private static final double MIN_NUMBER = 1.0E-130;
25+
private static final double MIN_DOUBLE = 1.0E-130;
26+
private static final double MIN_DECIMAL = -1.0E125;
2827
private static final BigDecimal BIG_NUMBER = BigDecimal.valueOf(9999999999999999.99);
2928

3029

@@ -120,6 +119,11 @@ void testDataTypesSearch (ClassWithAllBoxedTypes record) {
120119
assertEquals(1, results.getTotalCount());
121120
assertEquals(record.getDoubleValue(), results.getResults().get(0).getRecord().getDoubleValue());
122121

122+
System.out.println(record.getDecimalValue());
123+
System.out.println(record.getDecimalValue().doubleValue());
124+
System.out.println(results.getResults().get(0).getRecord().getDecimalValue());
125+
System.out.println(results.getResults().get(0).getRecord().getDecimalValue().doubleValue());
126+
123127
// decimal
124128
results = collection.searchAsync(
125129
null,
@@ -223,7 +227,7 @@ private static Stream<Arguments> supportedDataTypes() {
223227
Arguments.of(
224228
new ClassWithAllBoxedTypes(
225229
"ID2", false, Byte.MIN_VALUE, Short.MIN_VALUE, Integer.MIN_VALUE, Long.MIN_VALUE,
226-
Float.MIN_VALUE, MIN_NUMBER, BigDecimal.valueOf(MIN_NUMBER),
230+
Float.MIN_VALUE, MIN_DOUBLE, BigDecimal.valueOf(MIN_DECIMAL),
227231
OffsetDateTime.now(), UUID.randomUUID(), new byte[] {Byte.MIN_VALUE, -10, 0, 10, Byte.MAX_VALUE},
228232
Arrays.asList(Float.MIN_VALUE, -10f, 0f, 10f, Float.MAX_VALUE),
229233
new Float[] { 0.5f, 3.2f, 7.1f, -4.0f, 2.8f, 10.0f, -1.3f, 5.5f }
@@ -265,7 +269,7 @@ private static Stream<Arguments> supportedDataPrimitiveTypes() {
265269
new ClassWithAllPrimitiveTypes(
266270
"ID2", false, Byte.MIN_VALUE, Short.MIN_VALUE, Integer.MIN_VALUE,
267271
Long.MIN_VALUE,
268-
Float.MIN_VALUE, MIN_NUMBER, BigDecimal.valueOf(MIN_NUMBER),
272+
Float.MIN_VALUE, MIN_DOUBLE, BigDecimal.valueOf(MIN_DECIMAL),
269273
OffsetDateTime.now(), UUID.randomUUID(),
270274
new byte[]{Byte.MIN_VALUE, -10, 0, 10, Byte.MAX_VALUE},
271275
Arrays.asList(Float.MIN_VALUE, -10f, 0f, 10f, Float.MAX_VALUE),

0 commit comments

Comments
 (0)