| 1616 | namespace { |
| 1617 | |
| 1618 | const std::vector<TypePtr> defaultScalarTypes( |
| 1619 | bool withDecimal = true, |
| 1620 | bool withHugeint = true) { |
| 1621 | // @TODO Add decimal TypeKinds to randType. |
| 1622 | // Refer https://github.com/facebookincubator/velox/issues/3942 |
| 1623 | static std::vector<TypePtr> kScalarTypes{ |
| 1624 | BOOLEAN(), |
| 1625 | TINYINT(), |
| 1626 | SMALLINT(), |
| 1627 | INTEGER(), |
| 1628 | BIGINT(), |
| 1629 | REAL(), |
| 1630 | DOUBLE(), |
| 1631 | VARCHAR(), |
| 1632 | VARBINARY(), |
| 1633 | TIMESTAMP(), |
| 1634 | DATE(), |
| 1635 | INTERVAL_DAY_TIME(), |
| 1636 | DECIMAL(18, 5), |
| 1637 | DECIMAL(38, 18)}; |
| 1638 | |
| 1639 | // There is a very limited decimal support, for example |
| 1640 | // protobuf generation |
| 1641 | static std::vector<TypePtr> kScalarTypesWithoutDecimal{ |
| 1642 | BOOLEAN(), |
| 1643 | TINYINT(), |
| 1644 | SMALLINT(), |
| 1645 | INTEGER(), |
| 1646 | BIGINT(), |
| 1647 | REAL(), |
| 1648 | DOUBLE(), |
| 1649 | VARCHAR(), |
| 1650 | VARBINARY(), |
| 1651 | TIMESTAMP(), |
| 1652 | DATE(), |
| 1653 | INTERVAL_DAY_TIME()}; |
| 1654 | |
| 1655 | // dwrf::BaseColumnWriter does not support HUGEINT yet, which can cause |
| 1656 | // failures when running JoinFuzzerTest. |
| 1657 | static std::vector<TypePtr> kScalarTypesWithoutHugeint{ |
| 1658 | BOOLEAN(), |
| 1659 | TINYINT(), |
| 1660 | SMALLINT(), |
| 1661 | INTEGER(), |
| 1662 | BIGINT(), |
| 1663 | REAL(), |
| 1664 | DOUBLE(), |
| 1665 | VARCHAR(), |
| 1666 | VARBINARY(), |
| 1667 | TIMESTAMP(), |
| 1668 | DATE(), |
| 1669 | INTERVAL_DAY_TIME(), |
| 1670 | DECIMAL(18, 5)}; |
| 1671 | |
| 1672 | return withDecimal ? (withHugeint ? kScalarTypes : kScalarTypesWithoutHugeint) |
| 1673 | : kScalarTypesWithoutDecimal; |
| 1674 | } |
| 1675 | } // namespace |
no test coverage detected