Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-40819

DuckDB TIME conversion crashes the server

    XMLWordPrintable

Details

    • Can result in hang or crash

    Description

      INSTALL SONAME 'ha_duckdb';
      CREATE TABLE t1 (id INT PRIMARY KEY, t TIME) ENGINE=DuckDB;
      INSERT INTO t1 VALUES (1, '25:00:00');
      SELECT * FROM t1;
      

      Leads to:

      CS 13.1.0 f4299f0bbf38820794295bd4cae427544681cbd1 (Debug, Clang 18.1.3-11) Build 17/08/2026

      Core was generated by `/test/MD170826-mariadb-13.1.0-linux-x86_64-dbg/bin/mariadbd --no-defaults --loo'.
      Program terminated with signal SIGABRT, Aborted.
      #0  __pthread_kill_implementation (no_tid=0, signo=6, threadid=<optimized out>)at ./nptl/pthread_kill.c:44
       
      [Current thread is 1 (LWP 4080713)]
      (gdb) bt
      #0  __pthread_kill_implementation (no_tid=0, signo=6, threadid=<optimized out>)at ./nptl/pthread_kill.c:44
      #1  __pthread_kill_internal (signo=6, threadid=<optimized out>)at ./nptl/pthread_kill.c:78
      #2  __GI___pthread_kill (threadid=<optimized out>, signo=signo@entry=6)at ./nptl/pthread_kill.c:89
      #3  0x00007e3271a4527e in __GI_raise (sig=sig@entry=6)at ../sysdeps/posix/raise.c:26
      #4  0x00007e3271a288ff in __GI_abort () at ./stdlib/abort.c:79
      #5  0x00007e3271ea5ff5 in ?? () from /lib/x86_64-linux-gnu/libstdc++.so.6
      #6  0x00007e3271ebb0da in ?? () from /lib/x86_64-linux-gnu/libstdc++.so.6
      #7  0x00007e3271ea5a55 in std::terminate() ()
         from /lib/x86_64-linux-gnu/libstdc++.so.6
      #8  0x00007e3271ebb391 in __cxa_throw ()
         from /lib/x86_64-linux-gnu/libstdc++.so.6
      #9  0x000076318fa41f71 in duckdb::DuckDBAssertInternal (condition=false, condition_name=0x763192777946 "Time::IsValidTime(hour, min, sec, micros)", file=0x763192777970 "/test/13.1_dbg/storage/duckdb/third_parties/duckdb/src/common/types/time.cpp", linenr=321)at /test/13.1_dbg/storage/duckdb/third_parties/duckdb/src/common/assert.cpp:13
      #10 0x000076318f86262f in duckdb::Time::Convert (dtime={micros = 90000000000}, hour=@0x7e3270171910: 25, min=@0x7e3270171914: 0, sec=@0x7e3270171918: 0, micros=@0x7e327017191c: 0)at /test/13.1_dbg/storage/duckdb/third_parties/duckdb/src/common/types/time.cpp:321
      #11 0x000076318f7c10a7 in duckdb::StringAsTime<false> (input={micros = 90000000000}, vector=@0x7e3270171e50: {vector_type = duckdb::VectorType::CONSTANT_VECTOR, type = {id_ = duckdb::LogicalTypeId::VARCHAR, physical_type_ = duckdb::PhysicalType::VARCHAR, type_info_ = {internal = std::shared_ptr<struct duckdb::ExtraTypeInfo> (empty) = {        get() = 0x0      }}, static SQLNULL = duckdb::LogicalTypeId::SQLNULL, static UNKNOWN = duckdb::LogicalTypeId::UNKNOWN, static BOOLEAN = duckdb::LogicalTypeId::BOOLEAN, static TINYINT = duckdb::LogicalTypeId::TINYINT, static UTINYINT = duckdb::LogicalTypeId::UTINYINT, static SMALLINT = duckdb::LogicalTypeId::SMALLINT, static USMALLINT = duckdb::LogicalTypeId::USMALLINT, static INTEGER = duckdb::LogicalTypeId::INTEGER, static UINTEGER = duckdb::LogicalTypeId::UINTEGER, static BIGINT = duckdb::LogicalTypeId::BIGINT, static UBIGINT = duckdb::LogicalTypeId::UBIGINT, static FLOAT = duckdb::LogicalTypeId::FLOAT, static DOUBLE = duckdb::LogicalTypeId::DOUBLE, static DATE = duckdb::LogicalTypeId::DATE, static TIMESTAMP = duckdb::LogicalTypeId::TIMESTAMP, static TIMESTAMP_S = duckdb::LogicalTypeId::TIMESTAMP_SEC, static TIMESTAMP_MS = duckdb::LogicalTypeId::TIMESTAMP_MS, static TIMESTAMP_NS = duckdb::LogicalTypeId::TIMESTAMP_NS, static TIME = duckdb::LogicalTypeId::TIME, static TIME_NS = duckdb::LogicalTypeId::TIME_NS, static TIMESTAMP_TZ = duckdb::LogicalTypeId::TIMESTAMP_TZ, static TIME_TZ = duckdb::LogicalTypeId::TIME_TZ, static VARCHAR = duckdb::LogicalTypeId::VARCHAR, static ANY = duckdb::LogicalTypeId::ANY, static BLOB = duckdb::LogicalTypeId::BLOB, static BIT = duckdb::LogicalTypeId::BIT, static BIGNUM = duckdb::LogicalTypeId::BIGNUM, static INTERVAL = duckdb::LogicalTypeId::INTERVAL, static HUGEINT = duckdb::LogicalTypeId::HUGEINT, static UHUGEINT = duckdb::LogicalTypeId::UHUGEINT, static UUID = duckdb::LogicalTypeId::UUID, static HASH = duckdb::LogicalTypeId::UBIGINT, static POINTER = duckdb::LogicalTypeId::POINTER, static TABLE = duckdb::LogicalTypeId::TABLE, static LAMBDA = duckdb::LogicalTypeId::LAMBDA, static INVALID = duckdb::LogicalTypeId::INVALID, static ROW_TYPE = duckdb::LogicalTypeId::BIGINT, static JSON_TYPE_NAME = <optimized out>}, data = 0x7e3248c63ec0 '\245' <repeats 200 times>..., validity = {<duckdb::TemplatedValidityMask<unsigned long>> = {static BITS_PER_VALUE = 64, static STANDARD_ENTRY_COUNT = 32, static STANDARD_MASK_SIZE = 256, validity_mask = 0x0, validity_data = {internal = std::shared_ptr<struct duckdb::TemplatedValidityData<unsigned long>> (empty) = {          get() = 0x0        }}, capacity = 2048}, <No data fields>}, buffer = {internal = std::shared_ptr<class duckdb::VectorBuffer> (use count 1, weak count 0) = {      get() = 0x7631942e5fc0    }}, auxiliary = {internal = std::shared_ptr<class duckdb::VectorBuffer> (empty) = {      get() = 0x0    }}})at /test/13.1_dbg/storage/duckdb/third_parties/duckdb/src/common/operator/string_cast.cpp:118
      #12 0x000076318f791de5 in duckdb::StringCast::Operation<duckdb::dtime_t> (input={micros = 90000000000}, vector=@0x7e3270171e50: {vector_type = duckdb::VectorType::CONSTANT_VECTOR, type = {id_ = duckdb::LogicalTypeId::VARCHAR, physical_type_ = duckdb::PhysicalType::VARCHAR, type_info_ = {internal = std::shared_ptr<struct duckdb::ExtraTypeInfo> (empty) = {        get() = 0x0      }}, static SQLNULL = duckdb::LogicalTypeId::SQLNULL, static UNKNOWN = duckdb::LogicalTypeId::UNKNOWN, static BOOLEAN = duckdb::LogicalTypeId::BOOLEAN, static TINYINT = duckdb::LogicalTypeId::TINYINT, static UTINYINT = duckdb::LogicalTypeId::UTINYINT, static SMALLINT = duckdb::LogicalTypeId::SMALLINT, static USMALLINT = duckdb::LogicalTypeId::USMALLINT, static INTEGER = duckdb::LogicalTypeId::INTEGER, static UINTEGER = duckdb::LogicalTypeId::UINTEGER, static BIGINT = duckdb::LogicalTypeId::BIGINT, static UBIGINT = duckdb::LogicalTypeId::UBIGINT, static FLOAT = duckdb::LogicalTypeId::FLOAT, static DOUBLE = duckdb::LogicalTypeId::DOUBLE, static DATE = duckdb::LogicalTypeId::DATE, static TIMESTAMP = duckdb::LogicalTypeId::TIMESTAMP, static TIMESTAMP_S = duckdb::LogicalTypeId::TIMESTAMP_SEC, static TIMESTAMP_MS = duckdb::LogicalTypeId::TIMESTAMP_MS, static TIMESTAMP_NS = duckdb::LogicalTypeId::TIMESTAMP_NS, static TIME = duckdb::LogicalTypeId::TIME, static TIME_NS = duckdb::LogicalTypeId::TIME_NS, static TIMESTAMP_TZ = duckdb::LogicalTypeId::TIMESTAMP_TZ, static TIME_TZ = duckdb::LogicalTypeId::TIME_TZ, static VARCHAR = duckdb::LogicalTypeId::VARCHAR, static ANY = duckdb::LogicalTypeId::ANY, static BLOB = duckdb::LogicalTypeId::BLOB, static BIT = duckdb::LogicalTypeId::BIT, static BIGNUM = duckdb::LogicalTypeId::BIGNUM, static INTERVAL = duckdb::LogicalTypeId::INTERVAL, static HUGEINT = duckdb::LogicalTypeId::HUGEINT, static UHUGEINT = duckdb::LogicalTypeId::UHUGEINT, static UUID = duckdb::LogicalTypeId::UUID, static HASH = duckdb::LogicalTypeId::UBIGINT, static POINTER = duckdb::LogicalTypeId::POINTER, static TABLE = duckdb::LogicalTypeId::TABLE, static LAMBDA = duckdb::LogicalTypeId::LAMBDA, static INVALID = duckdb::LogicalTypeId::INVALID, static ROW_TYPE = duckdb::LogicalTypeId::BIGINT, static JSON_TYPE_NAME = <optimized out>}, data = 0x7e3248c63ec0 '\245' <repeats 200 times>..., validity = {<duckdb::TemplatedValidityMask<unsigned long>> = {static BITS_PER_VALUE = 64, static STANDARD_ENTRY_COUNT = 32, static STANDARD_MASK_SIZE = 256, validity_mask = 0x0, validity_data = {internal = std::shared_ptr<struct duckdb::TemplatedValidityData<unsigned long>> (empty) = {          get() = 0x0        }}, capacity = 2048}, <No data fields>}, buffer = {internal = std::shared_ptr<class duckdb::VectorBuffer> (use count 1, weak count 0) = {      get() = 0x7631942e5fc0    }}, auxiliary = {internal = std::shared_ptr<class duckdb::VectorBuffer> (empty) = {      get() = 0x0    }}})at /test/13.1_dbg/storage/duckdb/third_parties/duckdb/src/common/operator/string_cast.cpp:149
      #13 0x0000763190bfe505 in duckdb::VectorStringCastOperator<duckdb::StringCast>::Operation<duckdb::dtime_t, duckdb::string_t> (input={micros = 90000000000}, mask=@0x7e3270171e78: {<duckdb::TemplatedValidityMask<unsigned long>> = {static BITS_PER_VALUE = 64, static STANDARD_ENTRY_COUNT = 32, static STANDARD_MASK_SIZE = 256, validity_mask = 0x0, validity_data = {internal = std::shared_ptr<struct duckdb::TemplatedValidityData<unsigned long>> (empty) = {        get() = 0x0      }}, capacity = 2048}, <No data fields>}, idx=0, dataptr=0x7e3270171e50)at /test/13.1_dbg/storage/duckdb/third_parties/duckdb/src/include/duckdb/function/cast/vector_cast_helpers.hpp:26
      #14 0x0000763190bfdf35 in duckdb::GenericUnaryWrapper::Operation<duckdb::VectorStringCastOperator<duckdb::StringCast>, duckdb::dtime_t, duckdb::string_t> (input={micros = 90000000000}, mask=@0x7e3270171e78: {<duckdb::TemplatedValidityMask<unsigned long>> = {static BITS_PER_VALUE = 64, static STANDARD_ENTRY_COUNT = 32, static STANDARD_MASK_SIZE = 256, validity_mask = 0x0, validity_data = {internal = std::shared_ptr<struct duckdb::TemplatedValidityData<unsigned long>> (empty) = {        get() = 0x0      }}, capacity = 2048}, <No data fields>}, idx=0, dataptr=0x7e3270171e50)at /test/13.1_dbg/storage/duckdb/third_parties/duckdb/src/include/duckdb/common/vector_operations/unary_executor.hpp:38
      #15 0x0000763190bfdb82 in duckdb::UnaryExecutor::ExecuteStandard<duckdb::dtime_t, duckdb::string_t, duckdb::GenericUnaryWrapper, duckdb::VectorStringCastOperator<duckdb::StringCast> > (input=@0x7e3270171eb8: {vector_type = duckdb::VectorType::CONSTANT_VECTOR, type = {id_ = duckdb::LogicalTypeId::TIME, physical_type_ = duckdb::PhysicalType::INT64, type_info_ = {internal = std::shared_ptr<struct duckdb::ExtraTypeInfo> (empty) = {        get() = 0x0      }}, static SQLNULL = duckdb::LogicalTypeId::SQLNULL, static UNKNOWN = duckdb::LogicalTypeId::UNKNOWN, static BOOLEAN = duckdb::LogicalTypeId::BOOLEAN, static TINYINT = duckdb::LogicalTypeId::TINYINT, static UTINYINT = duckdb::LogicalTypeId::UTINYINT, static SMALLINT = duckdb::LogicalTypeId::SMALLINT, static USMALLINT = duckdb::LogicalTypeId::USMALLINT, static INTEGER = duckdb::LogicalTypeId::INTEGER, static UINTEGER = duckdb::LogicalTypeId::UINTEGER, static BIGINT = duckdb::LogicalTypeId::BIGINT, static UBIGINT = duckdb::LogicalTypeId::UBIGINT, static FLOAT = duckdb::LogicalTypeId::FLOAT, static DOUBLE = duckdb::LogicalTypeId::DOUBLE, static DATE = duckdb::LogicalTypeId::DATE, static TIMESTAMP = duckdb::LogicalTypeId::TIMESTAMP, static TIMESTAMP_S = duckdb::LogicalTypeId::TIMESTAMP_SEC, static TIMESTAMP_MS = duckdb::LogicalTypeId::TIMESTAMP_MS, static TIMESTAMP_NS = duckdb::LogicalTypeId::TIMESTAMP_NS, static TIME = duckdb::LogicalTypeId::TIME, static TIME_NS = duckdb::LogicalTypeId::TIME_NS, static TIMESTAMP_TZ = duckdb::LogicalTypeId::TIMESTAMP_TZ, static TIME_TZ = duckdb::LogicalTypeId::TIME_TZ, static VARCHAR = duckdb::LogicalTypeId::VARCHAR, static ANY = duckdb::LogicalTypeId::ANY, static BLOB = duckdb::LogicalTypeId::BLOB, static BIT = duckdb::LogicalTypeId::BIT, static BIGNUM = duckdb::LogicalTypeId::BIGNUM, static INTERVAL = duckdb::LogicalTypeId::INTERVAL, static HUGEINT = duckdb::LogicalTypeId::HUGEINT, static UHUGEINT = duckdb::LogicalTypeId::UHUGEINT, static UUID = duckdb::LogicalTypeId::UUID, static HASH = duckdb::LogicalTypeId::UBIGINT, static POINTER = duckdb::LogicalTypeId::POINTER, static TABLE = duckdb::LogicalTypeId::TABLE, static LAMBDA = duckdb::LogicalTypeId::LAMBDA, static INVALID = duckdb::LogicalTypeId::INVALID, static ROW_TYPE = duckdb::LogicalTypeId::BIGINT, static JSON_TYPE_NAME = <optimized out>}, data = 0x7e3248c59000 "", validity = {<duckdb::TemplatedValidityMask<unsigned long>> = {static BITS_PER_VALUE = 64, static STANDARD_ENTRY_COUNT = 32, static STANDARD_MASK_SIZE = 256, validity_mask = 0x0, validity_data = {internal = std::shared_ptr<struct duckdb::TemplatedValidityData<unsigned long>> (empty) = {          get() = 0x0        }}, capacity = 2048}, <No data fields>}, buffer = {internal = std::shared_ptr<class duckdb::VectorBuffer> (use count 1, weak count 0) = {      get() = 0x76319434d270    }}, auxiliary = {internal = std::shared_ptr<class duckdb::VectorBuffer> (empty) = {      get() = 0x0    }}}, result=@0x7e3270171e50: {vector_type = duckdb::VectorType::CONSTANT_VECTOR, type = {id_ = duckdb::LogicalTypeId::VARCHAR, physical_type_ = duckdb::PhysicalType::VARCHAR, type_info_ = {internal = std::shared_ptr<struct duckdb::ExtraTypeInfo> (empty) = {        get() = 0x0      }}, static SQLNULL = duckdb::LogicalTypeId::SQLNULL, static UNKNOWN = duckdb::LogicalTypeId::UNKNOWN, static BOOLEAN = duckdb::LogicalTypeId::BOOLEAN, static TINYINT = duckdb::LogicalTypeId::TINYINT, static UTINYINT = duckdb::LogicalTypeId::UTINYINT, static SMALLINT = duckdb::LogicalTypeId::SMALLINT, static USMALLINT = duckdb::LogicalTypeId::USMALLINT, static INTEGER = duckdb::LogicalTypeId::INTEGER, static UINTEGER = duckdb::LogicalTypeId::UINTEGER, static BIGINT = duckdb::LogicalTypeId::BIGINT, static UBIGINT = duckdb::LogicalTypeId::UBIGINT, static FLOAT = duckdb::LogicalTypeId::FLOAT, static DOUBLE = duckdb::LogicalTypeId::DOUBLE, static DATE = duckdb::LogicalTypeId::DATE, static TIMESTAMP = duckdb::LogicalTypeId::TIMESTAMP, static TIMESTAMP_S = duckdb::LogicalTypeId::TIMESTAMP_SEC, static TIMESTAMP_MS = duckdb::LogicalTypeId::TIMESTAMP_MS, static TIMESTAMP_NS = duckdb::LogicalTypeId::TIMESTAMP_NS, static TIME = duckdb::LogicalTypeId::TIME, static TIME_NS = duckdb::LogicalTypeId::TIME_NS, static TIMESTAMP_TZ = duckdb::LogicalTypeId::TIMESTAMP_TZ, static TIME_TZ = duckdb::LogicalTypeId::TIME_TZ, static VARCHAR = duckdb::LogicalTypeId::VARCHAR, static ANY = duckdb::LogicalTypeId::ANY, static BLOB = duckdb::LogicalTypeId::BLOB, static BIT = duckdb::LogicalTypeId::BIT, static BIGNUM = duckdb::LogicalTypeId::BIGNUM, static INTERVAL = duckdb::LogicalTypeId::INTERVAL, static HUGEINT = duckdb::LogicalTypeId::HUGEINT, static UHUGEINT = duckdb::LogicalTypeId::UHUGEINT, static UUID = duckdb::LogicalTypeId::UUID, static HASH = duckdb::LogicalTypeId::UBIGINT, static POINTER = duckdb::LogicalTypeId::POINTER, static TABLE = duckdb::LogicalTypeId::TABLE, static LAMBDA = duckdb::LogicalTypeId::LAMBDA, static INVALID = duckdb::LogicalTypeId::INVALID, static ROW_TYPE = duckdb::LogicalTypeId::BIGINT, static JSON_TYPE_NAME = <optimized out>}, data = 0x7e3248c63ec0 '\245' <repeats 200 times>..., validity = {<duckdb::TemplatedValidityMask<unsigned long>> = {static BITS_PER_VALUE = 64, static STANDARD_ENTRY_COUNT = 32, static STANDARD_MASK_SIZE = 256, validity_mask = 0x0, validity_data = {internal = std::shared_ptr<struct duckdb::TemplatedValidityData<unsigned long>> (empty) = {          get() = 0x0        }}, capacity = 2048}, <No data fields>}, buffer = {internal = std::shared_ptr<class duckdb::VectorBuffer> (use count 1, weak count 0) = {      get() = 0x7631942e5fc0    }}, auxiliary = {internal = std::shared_ptr<class duckdb::VectorBuffer> (empty) = {      get() = 0x0    }}}, count=1, dataptr=0x7e3270171e50, adds_nulls=false, errors=duckdb::FunctionErrors::CAN_THROW_RUNTIME_ERROR)at /test/13.1_dbg/storage/duckdb/third_parties/duckdb/src/include/duckdb/common/vector_operations/unary_executor.hpp:155
      #16 0x0000763190bfda44 in duckdb::UnaryExecutor::GenericExecute<duckdb::dtime_t, duckdb::string_t, duckdb::VectorStringCastOperator<duckdb::StringCast> > (input=@0x7e3270171eb8: {vector_type = duckdb::VectorType::CONSTANT_VECTOR, type = {id_ = duckdb::LogicalTypeId::TIME, physical_type_ = duckdb::PhysicalType::INT64, type_info_ = {internal = std::shared_ptr<struct duckdb::ExtraTypeInfo> (empty) = {        get() = 0x0      }}, static SQLNULL = duckdb::LogicalTypeId::SQLNULL, static UNKNOWN = duckdb::LogicalTypeId::UNKNOWN, static BOOLEAN = duckdb::LogicalTypeId::BOOLEAN, static TINYINT = duckdb::LogicalTypeId::TINYINT, static UTINYINT = duckdb::LogicalTypeId::UTINYINT, static SMALLINT = duckdb::LogicalTypeId::SMALLINT, static USMALLINT = duckdb::LogicalTypeId::USMALLINT, static INTEGER = duckdb::LogicalTypeId::INTEGER, static UINTEGER = duckdb::LogicalTypeId::UINTEGER, static BIGINT = duckdb::LogicalTypeId::BIGINT, static UBIGINT = duckdb::LogicalTypeId::UBIGINT, static FLOAT = duckdb::LogicalTypeId::FLOAT, static DOUBLE = duckdb::LogicalTypeId::DOUBLE, static DATE = duckdb::LogicalTypeId::DATE, static TIMESTAMP = duckdb::LogicalTypeId::TIMESTAMP, static TIMESTAMP_S = duckdb::LogicalTypeId::TIMESTAMP_SEC, static TIMESTAMP_MS = duckdb::LogicalTypeId::TIMESTAMP_MS, static TIMESTAMP_NS = duckdb::LogicalTypeId::TIMESTAMP_NS, static TIME = duckdb::LogicalTypeId::TIME, static TIME_NS = duckdb::LogicalTypeId::TIME_NS, static TIMESTAMP_TZ = duckdb::LogicalTypeId::TIMESTAMP_TZ, static TIME_TZ = duckdb::LogicalTypeId::TIME_TZ, static VARCHAR = duckdb::LogicalTypeId::VARCHAR, static ANY = duckdb::LogicalTypeId::ANY, static BLOB = duckdb::LogicalTypeId::BLOB, static BIT = duckdb::LogicalTypeId::BIT, static BIGNUM = duckdb::LogicalTypeId::BIGNUM, static INTERVAL = duckdb::LogicalTypeId::INTERVAL, static HUGEINT = duckdb::LogicalTypeId::HUGEINT, static UHUGEINT = duckdb::LogicalTypeId::UHUGEINT, static UUID = duckdb::LogicalTypeId::UUID, static HASH = duckdb::LogicalTypeId::UBIGINT, static POINTER = duckdb::LogicalTypeId::POINTER, static TABLE = duckdb::LogicalTypeId::TABLE, static LAMBDA = duckdb::LogicalTypeId::LAMBDA, static INVALID = duckdb::LogicalTypeId::INVALID, static ROW_TYPE = duckdb::LogicalTypeId::BIGINT, static JSON_TYPE_NAME = <optimized out>}, data = 0x7e3248c59000 "", validity = {<duckdb::TemplatedValidityMask<unsigned long>> = {static BITS_PER_VALUE = 64, static STANDARD_ENTRY_COUNT = 32, static STANDARD_MASK_SIZE = 256, validity_mask = 0x0, validity_data = {internal = std::shared_ptr<struct duckdb::TemplatedValidityData<unsigned long>> (empty) = {          get() = 0x0        }}, capacity = 2048}, <No data fields>}, buffer = {internal = std::shared_ptr<class duckdb::VectorBuffer> (use count 1, weak count 0) = {      get() = 0x76319434d270    }}, auxiliary = {internal = std::shared_ptr<class duckdb::VectorBuffer> (empty) = {      get() = 0x0    }}}, result=@0x7e3270171e50: {vector_type = duckdb::VectorType::CONSTANT_VECTOR, type = {id_ = duckdb::LogicalTypeId::VARCHAR, physical_type_ = duckdb::PhysicalType::VARCHAR, type_info_ = {internal = std::shared_ptr<struct duckdb::ExtraTypeInfo> (empty) = {        get() = 0x0      }}, static SQLNULL = duckdb::LogicalTypeId::SQLNULL, static UNKNOWN = duckdb::LogicalTypeId::UNKNOWN, static BOOLEAN = duckdb::LogicalTypeId::BOOLEAN, static TINYINT = duckdb::LogicalTypeId::TINYINT, static UTINYINT = duckdb::LogicalTypeId::UTINYINT, static SMALLINT = duckdb::LogicalTypeId::SMALLINT, static USMALLINT = duckdb::LogicalTypeId::USMALLINT, static INTEGER = duckdb::LogicalTypeId::INTEGER, static UINTEGER = duckdb::LogicalTypeId::UINTEGER, static BIGINT = duckdb::LogicalTypeId::BIGINT, static UBIGINT = duckdb::LogicalTypeId::UBIGINT, static FLOAT = duckdb::LogicalTypeId::FLOAT, static DOUBLE = duckdb::LogicalTypeId::DOUBLE, static DATE = duckdb::LogicalTypeId::DATE, static TIMESTAMP = duckdb::LogicalTypeId::TIMESTAMP, static TIMESTAMP_S = duckdb::LogicalTypeId::TIMESTAMP_SEC, static TIMESTAMP_MS = duckdb::LogicalTypeId::TIMESTAMP_MS, static TIMESTAMP_NS = duckdb::LogicalTypeId::TIMESTAMP_NS, static TIME = duckdb::LogicalTypeId::TIME, static TIME_NS = duckdb::LogicalTypeId::TIME_NS, static TIMESTAMP_TZ = duckdb::LogicalTypeId::TIMESTAMP_TZ, static TIME_TZ = duckdb::LogicalTypeId::TIME_TZ, static VARCHAR = duckdb::LogicalTypeId::VARCHAR, static ANY = duckdb::LogicalTypeId::ANY, static BLOB = duckdb::LogicalTypeId::BLOB, static BIT = duckdb::LogicalTypeId::BIT, static BIGNUM = duckdb::LogicalTypeId::BIGNUM, static INTERVAL = duckdb::LogicalTypeId::INTERVAL, static HUGEINT = duckdb::LogicalTypeId::HUGEINT, static UHUGEINT = duckdb::LogicalTypeId::UHUGEINT, static UUID = duckdb::LogicalTypeId::UUID, static HASH = duckdb::LogicalTypeId::UBIGINT, static POINTER = duckdb::LogicalTypeId::POINTER, static TABLE = duckdb::LogicalTypeId::TABLE, static LAMBDA = duckdb::LogicalTypeId::LAMBDA, static INVALID = duckdb::LogicalTypeId::INVALID, static ROW_TYPE = duckdb::LogicalTypeId::BIGINT, static JSON_TYPE_NAME = <optimized out>}, data = 0x7e3248c63ec0 '\245' <repeats 200 times>..., validity = {<duckdb::TemplatedValidityMask<unsigned long>> = {static BITS_PER_VALUE = 64, static STANDARD_ENTRY_COUNT = 32, static STANDARD_MASK_SIZE = 256, validity_mask = 0x0, validity_data = {internal = std::shared_ptr<struct duckdb::TemplatedValidityData<unsigned long>> (empty) = {          get() = 0x0        }}, capacity = 2048}, <No data fields>}, buffer = {internal = std::shared_ptr<class duckdb::VectorBuffer> (use count 1, weak count 0) = {      get() = 0x7631942e5fc0    }}, auxiliary = {internal = std::shared_ptr<class duckdb::VectorBuffer> (empty) = {      get() = 0x0    }}}, count=1, dataptr=0x7e3270171e50, adds_nulls=false)at /test/13.1_dbg/storage/duckdb/third_parties/duckdb/src/include/duckdb/common/vector_operations/unary_executor.hpp:229
      #17 0x0000763190aa9334 in duckdb::VectorCastHelpers::StringCast<duckdb::dtime_t, duckdb::StringCast, duckdb::string_t> (source=@0x7e3270171eb8: {vector_type = duckdb::VectorType::CONSTANT_VECTOR, type = {id_ = duckdb::LogicalTypeId::TIME, physical_type_ = duckdb::PhysicalType::INT64, type_info_ = {internal = std::shared_ptr<struct duckdb::ExtraTypeInfo> (empty) = {        get() = 0x0      }}, static SQLNULL = duckdb::LogicalTypeId::SQLNULL, static UNKNOWN = duckdb::LogicalTypeId::UNKNOWN, static BOOLEAN = duckdb::LogicalTypeId::BOOLEAN, static TINYINT = duckdb::LogicalTypeId::TINYINT, static UTINYINT = duckdb::LogicalTypeId::UTINYINT, static SMALLINT = duckdb::LogicalTypeId::SMALLINT, static USMALLINT = duckdb::LogicalTypeId::USMALLINT, static INTEGER = duckdb::LogicalTypeId::INTEGER, static UINTEGER = duckdb::LogicalTypeId::UINTEGER, static BIGINT = duckdb::LogicalTypeId::BIGINT, static UBIGINT = duckdb::LogicalTypeId::UBIGINT, static FLOAT = duckdb::LogicalTypeId::FLOAT, static DOUBLE = duckdb::LogicalTypeId::DOUBLE, static DATE = duckdb::LogicalTypeId::DATE, static TIMESTAMP = duckdb::LogicalTypeId::TIMESTAMP, static TIMESTAMP_S = duckdb::LogicalTypeId::TIMESTAMP_SEC, static TIMESTAMP_MS = duckdb::LogicalTypeId::TIMESTAMP_MS, static TIMESTAMP_NS = duckdb::LogicalTypeId::TIMESTAMP_NS, static TIME = duckdb::LogicalTypeId::TIME, static TIME_NS = duckdb::LogicalTypeId::TIME_NS, static TIMESTAMP_TZ = duckdb::LogicalTypeId::TIMESTAMP_TZ, static TIME_TZ = duckdb::LogicalTypeId::TIME_TZ, static VARCHAR = duckdb::LogicalTypeId::VARCHAR, static ANY = duckdb::LogicalTypeId::ANY, static BLOB = duckdb::LogicalTypeId::BLOB, static BIT = duckdb::LogicalTypeId::BIT, static BIGNUM = duckdb::LogicalTypeId::BIGNUM, static INTERVAL = duckdb::LogicalTypeId::INTERVAL, static HUGEINT = duckdb::LogicalTypeId::HUGEINT, static UHUGEINT = duckdb::LogicalTypeId::UHUGEINT, static UUID = duckdb::LogicalTypeId::UUID, static HASH = duckdb::LogicalTypeId::UBIGINT, static POINTER = duckdb::LogicalTypeId::POINTER, static TABLE = duckdb::LogicalTypeId::TABLE, static LAMBDA = duckdb::LogicalTypeId::LAMBDA, static INVALID = duckdb::LogicalTypeId::INVALID, static ROW_TYPE = duckdb::LogicalTypeId::BIGINT, static JSON_TYPE_NAME = <optimized out>}, data = 0x7e3248c59000 "", validity = {<duckdb::TemplatedValidityMask<unsigned long>> = {static BITS_PER_VALUE = 64, static STANDARD_ENTRY_COUNT = 32, static STANDARD_MASK_SIZE = 256, validity_mask = 0x0, validity_data = {internal = std::shared_ptr<struct duckdb::TemplatedValidityData<unsigned long>> (empty) = {          get() = 0x0        }}, capacity = 2048}, <No data fields>}, buffer = {internal = std::shared_ptr<class duckdb::VectorBuffer> (use count 1, weak count 0) = {      get() = 0x76319434d270    }}, auxiliary = {internal = std::shared_ptr<class duckdb::VectorBuffer> (empty) = {      get() = 0x0    }}}, result=@0x7e3270171e50: {vector_type = duckdb::VectorType::CONSTANT_VECTOR, type = {id_ = duckdb::LogicalTypeId::VARCHAR, physical_type_ = duckdb::PhysicalType::VARCHAR, type_info_ = {internal = std::shared_ptr<struct duckdb::ExtraTypeInfo> (empty) = {        get() = 0x0      }}, static SQLNULL = duckdb::LogicalTypeId::SQLNULL, static UNKNOWN = duckdb::LogicalTypeId::UNKNOWN, static BOOLEAN = duckdb::LogicalTypeId::BOOLEAN, static TINYINT = duckdb::LogicalTypeId::TINYINT, static UTINYINT = duckdb::LogicalTypeId::UTINYINT, static SMALLINT = duckdb::LogicalTypeId::SMALLINT, static USMALLINT = duckdb::LogicalTypeId::USMALLINT, static INTEGER = duckdb::LogicalTypeId::INTEGER, static UINTEGER = duckdb::LogicalTypeId::UINTEGER, static BIGINT = duckdb::LogicalTypeId::BIGINT, static UBIGINT = duckdb::LogicalTypeId::UBIGINT, static FLOAT = duckdb::LogicalTypeId::FLOAT, static DOUBLE = duckdb::LogicalTypeId::DOUBLE, static DATE = duckdb::LogicalTypeId::DATE, static TIMESTAMP = duckdb::LogicalTypeId::TIMESTAMP, static TIMESTAMP_S = duckdb::LogicalTypeId::TIMESTAMP_SEC, static TIMESTAMP_MS = duckdb::LogicalTypeId::TIMESTAMP_MS, static TIMESTAMP_NS = duckdb::LogicalTypeId::TIMESTAMP_NS, static TIME = duckdb::LogicalTypeId::TIME, static TIME_NS = duckdb::LogicalTypeId::TIME_NS, static TIMESTAMP_TZ = duckdb::LogicalTypeId::TIMESTAMP_TZ, static TIME_TZ = duckdb::LogicalTypeId::TIME_TZ, static VARCHAR = duckdb::LogicalTypeId::VARCHAR, static ANY = duckdb::LogicalTypeId::ANY, static BLOB = duckdb::LogicalTypeId::BLOB, static BIT = duckdb::LogicalTypeId::BIT, static BIGNUM = duckdb::LogicalTypeId::BIGNUM, static INTERVAL = duckdb::LogicalTypeId::INTERVAL, static HUGEINT = duckdb::LogicalTypeId::HUGEINT, static UHUGEINT = duckdb::LogicalTypeId::UHUGEINT, static UUID = duckdb::LogicalTypeId::UUID, static HASH = duckdb::LogicalTypeId::UBIGINT, static POINTER = duckdb::LogicalTypeId::POINTER, static TABLE = duckdb::LogicalTypeId::TABLE, static LAMBDA = duckdb::LogicalTypeId::LAMBDA, static INVALID = duckdb::LogicalTypeId::INVALID, static ROW_TYPE = duckdb::LogicalTypeId::BIGINT, static JSON_TYPE_NAME = <optimized out>}, data = 0x7e3248c63ec0 '\245' <repeats 200 times>..., validity = {<duckdb::TemplatedValidityMask<unsigned long>> = {static BITS_PER_VALUE = 64, static STANDARD_ENTRY_COUNT = 32, static STANDARD_MASK_SIZE = 256, validity_mask = 0x0, validity_data = {internal = std::shared_ptr<struct duckdb::TemplatedValidityData<unsigned long>> (empty) = {          get() = 0x0        }}, capacity = 2048}, <No data fields>}, buffer = {internal = std::shared_ptr<class duckdb::VectorBuffer> (use count 1, weak count 0) = {      get() = 0x7631942e5fc0    }}, auxiliary = {internal = std::shared_ptr<class duckdb::VectorBuffer> (empty) = {      get() = 0x0    }}}, count=1, parameters=@0x7e3270171ce0: {cast_data = {ptr = 0x0}, strict = false, error_message = 0x7e3270172020, cast_source = {ptr = 0x0}, cast_target = {ptr = 0x0}, local_state = {ptr = 0x0}, query_location = {static INVALID_INDEX = 18446744073709551615, index = 18446744073709551615}, nullify_parent = false})at /test/13.1_dbg/storage/duckdb/third_parties/duckdb/src/include/duckdb/function/cast/vector_cast_helpers.hpp:151
      #18 0x000076318f9d62e2 in duckdb::VectorOperations::TryCast (set=@0x7e3270172108: {config = {ptr = 0x0}, bind_functions = {<std::vector<duckdb::BindCastFunction, std::allocator<duckdb::BindCastFunction> >> = std::vector of length 1, capacity 1 = {{function = 0x763190a37e40 <duckdb::DefaultCasts::GetDefaultCastFunction(duckdb::BindCastInput&, duckdb::LogicalType const&, duckdb::LogicalType const&)>, info = {<std::unique_ptr<duckdb::BindCastInfo, std::default_delete<duckdb::BindCastInfo> >> = std::unique_ptr<struct duckdb::BindCastInfo> = {            get() = 0x0          }, <No data fields>}}}, <No data fields>}, map_info = {ptr = 0x0}}, input=@0x7e32701720f8: {context = {ptr = 0x0}, query_location = {static INVALID_INDEX = 18446744073709551615, index = 18446744073709551615}}, source=@0x7e3270171eb8: {vector_type = duckdb::VectorType::CONSTANT_VECTOR, type = {id_ = duckdb::LogicalTypeId::TIME, physical_type_ = duckdb::PhysicalType::INT64, type_info_ = {internal = std::shared_ptr<struct duckdb::ExtraTypeInfo> (empty) = {        get() = 0x0      }}, static SQLNULL = duckdb::LogicalTypeId::SQLNULL, static UNKNOWN = duckdb::LogicalTypeId::UNKNOWN, static BOOLEAN = duckdb::LogicalTypeId::BOOLEAN, static TINYINT = duckdb::LogicalTypeId::TINYINT, static UTINYINT = duckdb::LogicalTypeId::UTINYINT, static SMALLINT = duckdb::LogicalTypeId::SMALLINT, static USMALLINT = duckdb::LogicalTypeId::USMALLINT, static INTEGER = duckdb::LogicalTypeId::INTEGER, static UINTEGER = duckdb::LogicalTypeId::UINTEGER, static BIGINT = duckdb::LogicalTypeId::BIGINT, static UBIGINT = duckdb::LogicalTypeId::UBIGINT, static FLOAT = duckdb::LogicalTypeId::FLOAT, static DOUBLE = duckdb::LogicalTypeId::DOUBLE, static DATE = duckdb::LogicalTypeId::DATE, static TIMESTAMP = duckdb::LogicalTypeId::TIMESTAMP, static TIMESTAMP_S = duckdb::LogicalTypeId::TIMESTAMP_SEC, static TIMESTAMP_MS = duckdb::LogicalTypeId::TIMESTAMP_MS, static TIMESTAMP_NS = duckdb::LogicalTypeId::TIMESTAMP_NS, static TIME = duckdb::LogicalTypeId::TIME, static TIME_NS = duckdb::LogicalTypeId::TIME_NS, static TIMESTAMP_TZ = duckdb::LogicalTypeId::TIMESTAMP_TZ, static TIME_TZ = duckdb::LogicalTypeId::TIME_TZ, static VARCHAR = duckdb::LogicalTypeId::VARCHAR, static ANY = duckdb::LogicalTypeId::ANY, static BLOB = duckdb::LogicalTypeId::BLOB, static BIT = duckdb::LogicalTypeId::BIT, static BIGNUM = duckdb::LogicalTypeId::BIGNUM, static INTERVAL = duckdb::LogicalTypeId::INTERVAL, static HUGEINT = duckdb::LogicalTypeId::HUGEINT, static UHUGEINT = duckdb::LogicalTypeId::UHUGEINT, static UUID = duckdb::LogicalTypeId::UUID, static HASH = duckdb::LogicalTypeId::UBIGINT, static POINTER = duckdb::LogicalTypeId::POINTER, static TABLE = duckdb::LogicalTypeId::TABLE, static LAMBDA = duckdb::LogicalTypeId::LAMBDA, static INVALID = duckdb::LogicalTypeId::INVALID, static ROW_TYPE = duckdb::LogicalTypeId::BIGINT, static JSON_TYPE_NAME = <optimized out>}, data = 0x7e3248c59000 "", validity = {<duckdb::TemplatedValidityMask<unsigned long>> = {static BITS_PER_VALUE = 64, static STANDARD_ENTRY_COUNT = 32, static STANDARD_MASK_SIZE = 256, validity_mask = 0x0, validity_data = {internal = std::shared_ptr<struct duckdb::TemplatedValidityData<unsigned long>> (empty) = {          get() = 0x0        }}, capacity = 2048}, <No data fields>}, buffer = {internal = std::shared_ptr<class duckdb::VectorBuffer> (use count 1, weak count 0) = {      get() = 0x76319434d270    }}, auxiliary = {internal = std::shared_ptr<class duckdb::VectorBuffer> (empty) = {      get() = 0x0    }}}, result=@0x7e3270171e50: {vector_type = duckdb::VectorType::CONSTANT_VECTOR, type = {id_ = duckdb::LogicalTypeId::VARCHAR, physical_type_ = duckdb::PhysicalType::VARCHAR, type_info_ = {internal = std::shared_ptr<struct duckdb::ExtraTypeInfo> (empty) = {        get() = 0x0      }}, static SQLNULL = duckdb::LogicalTypeId::SQLNULL, static UNKNOWN = duckdb::LogicalTypeId::UNKNOWN, static BOOLEAN = duckdb::LogicalTypeId::BOOLEAN, static TINYINT = duckdb::LogicalTypeId::TINYINT, static UTINYINT = duckdb::LogicalTypeId::UTINYINT, static SMALLINT = duckdb::LogicalTypeId::SMALLINT, static USMALLINT = duckdb::LogicalTypeId::USMALLINT, static INTEGER = duckdb::LogicalTypeId::INTEGER, static UINTEGER = duckdb::LogicalTypeId::UINTEGER, static BIGINT = duckdb::LogicalTypeId::BIGINT, static UBIGINT = duckdb::LogicalTypeId::UBIGINT, static FLOAT = duckdb::LogicalTypeId::FLOAT, static DOUBLE = duckdb::LogicalTypeId::DOUBLE, static DATE = duckdb::LogicalTypeId::DATE, static TIMESTAMP = duckdb::LogicalTypeId::TIMESTAMP, static TIMESTAMP_S = duckdb::LogicalTypeId::TIMESTAMP_SEC, static TIMESTAMP_MS = duckdb::LogicalTypeId::TIMESTAMP_MS, static TIMESTAMP_NS = duckdb::LogicalTypeId::TIMESTAMP_NS, static TIME = duckdb::LogicalTypeId::TIME, static TIME_NS = duckdb::LogicalTypeId::TIME_NS, static TIMESTAMP_TZ = duckdb::LogicalTypeId::TIMESTAMP_TZ, static TIME_TZ = duckdb::LogicalTypeId::TIME_TZ, static VARCHAR = duckdb::LogicalTypeId::VARCHAR, static ANY = duckdb::LogicalTypeId::ANY, static BLOB = duckdb::LogicalTypeId::BLOB, static BIT = duckdb::LogicalTypeId::BIT, static BIGNUM = duckdb::LogicalTypeId::BIGNUM, static INTERVAL = duckdb::LogicalTypeId::INTERVAL, static HUGEINT = duckdb::LogicalTypeId::HUGEINT, static UHUGEINT = duckdb::LogicalTypeId::UHUGEINT, static UUID = duckdb::LogicalTypeId::UUID, static HASH = duckdb::LogicalTypeId::UBIGINT, static POINTER = duckdb::LogicalTypeId::POINTER, static TABLE = duckdb::LogicalTypeId::TABLE, static LAMBDA = duckdb::LogicalTypeId::LAMBDA, static INVALID = duckdb::LogicalTypeId::INVALID, static ROW_TYPE = duckdb::LogicalTypeId::BIGINT, static JSON_TYPE_NAME = <optimized out>}, data = 0x7e3248c63ec0 '\245' <repeats 200 times>..., validity = {<duckdb::TemplatedValidityMask<unsigned long>> = {static BITS_PER_VALUE = 64, static STANDARD_ENTRY_COUNT = 32, static STANDARD_MASK_SIZE = 256, validity_mask = 0x0, validity_data = {internal = std::shared_ptr<struct duckdb::TemplatedValidityData<unsigned long>> (empty) = {          get() = 0x0        }}, capacity = 2048}, <No data fields>}, buffer = {internal = std::shared_ptr<class duckdb::VectorBuffer> (use count 1, weak count 0) = {      get() = 0x7631942e5fc0    }}, auxiliary = {internal = std::shared_ptr<class duckdb::VectorBuffer> (empty) = {      get() = 0x0    }}}, count=1, error_message=0x7e3270172020, strict=false, nullify_parent=false)at /test/13.1_dbg/storage/duckdb/third_parties/duckdb/src/common/vector_operations/vector_cast.cpp:18
      #19 0x000076318f872724 in duckdb::Value::TryCastAs (this=0x7e3270172650, set=@0x7e3270172108: {config = {ptr = 0x0}, bind_functions = {<std::vector<duckdb::BindCastFunction, std::allocator<duckdb::BindCastFunction> >> = std::vector of length 1, capacity 1 = {{function = 0x763190a37e40 <duckdb::DefaultCasts::GetDefaultCastFunction(duckdb::BindCastInput&, duckdb::LogicalType const&, duckdb::LogicalType const&)>, info = {<std::unique_ptr<duckdb::BindCastInfo, std::default_delete<duckdb::BindCastInfo> >> = std::unique_ptr<struct duckdb::BindCastInfo> = {            get() = 0x0          }, <No data fields>}}}, <No data fields>}, map_info = {ptr = 0x0}}, get_input=@0x7e32701720f8: {context = {ptr = 0x0}, query_location = {static INVALID_INDEX = 18446744073709551615, index = 18446744073709551615}}, target_type=@0x7e3270172190: {id_ = duckdb::LogicalTypeId::VARCHAR, physical_type_ = duckdb::PhysicalType::VARCHAR, type_info_ = {internal = std::shared_ptr<struct duckdb::ExtraTypeInfo> (empty) = {      get() = 0x0    }}, static SQLNULL = duckdb::LogicalTypeId::SQLNULL, static UNKNOWN = duckdb::LogicalTypeId::UNKNOWN, static BOOLEAN = duckdb::LogicalTypeId::BOOLEAN, static TINYINT = duckdb::LogicalTypeId::TINYINT, static UTINYINT = duckdb::LogicalTypeId::UTINYINT, static SMALLINT = duckdb::LogicalTypeId::SMALLINT, static USMALLINT = duckdb::LogicalTypeId::USMALLINT, static INTEGER = duckdb::LogicalTypeId::INTEGER, static UINTEGER = duckdb::LogicalTypeId::UINTEGER, static BIGINT = duckdb::LogicalTypeId::BIGINT, static UBIGINT = duckdb::LogicalTypeId::UBIGINT, static FLOAT = duckdb::LogicalTypeId::FLOAT, static DOUBLE = duckdb::LogicalTypeId::DOUBLE, static DATE = duckdb::LogicalTypeId::DATE, static TIMESTAMP = duckdb::LogicalTypeId::TIMESTAMP, static TIMESTAMP_S = duckdb::LogicalTypeId::TIMESTAMP_SEC, static TIMESTAMP_MS = duckdb::LogicalTypeId::TIMESTAMP_MS, static TIMESTAMP_NS = duckdb::LogicalTypeId::TIMESTAMP_NS, static TIME = duckdb::LogicalTypeId::TIME, static TIME_NS = duckdb::LogicalTypeId::TIME_NS, static TIMESTAMP_TZ = duckdb::LogicalTypeId::TIMESTAMP_TZ, static TIME_TZ = duckdb::LogicalTypeId::TIME_TZ, static VARCHAR = duckdb::LogicalTypeId::VARCHAR, static ANY = duckdb::LogicalTypeId::ANY, static BLOB = duckdb::LogicalTypeId::BLOB, static BIT = duckdb::LogicalTypeId::BIT, static BIGNUM = duckdb::LogicalTypeId::BIGNUM, static INTERVAL = duckdb::LogicalTypeId::INTERVAL, static HUGEINT = duckdb::LogicalTypeId::HUGEINT, static UHUGEINT = duckdb::LogicalTypeId::UHUGEINT, static UUID = duckdb::LogicalTypeId::UUID, static HASH = duckdb::LogicalTypeId::UBIGINT, static POINTER = duckdb::LogicalTypeId::POINTER, static TABLE = duckdb::LogicalTypeId::TABLE, static LAMBDA = duckdb::LogicalTypeId::LAMBDA, static INVALID = duckdb::LogicalTypeId::INVALID, static ROW_TYPE = duckdb::LogicalTypeId::BIGINT, static JSON_TYPE_NAME = <optimized out>}, new_value=@0x7e32701721a8: {type_ = {id_ = duckdb::LogicalTypeId::SQLNULL, physical_type_ = duckdb::PhysicalType::INT32, type_info_ = {internal = std::shared_ptr<struct duckdb::ExtraTypeInfo> (empty) = {        get() = 0x0      }}, static SQLNULL = duckdb::LogicalTypeId::SQLNULL, static UNKNOWN = duckdb::LogicalTypeId::UNKNOWN, static BOOLEAN = duckdb::LogicalTypeId::BOOLEAN, static TINYINT = duckdb::LogicalTypeId::TINYINT, static UTINYINT = duckdb::LogicalTypeId::UTINYINT, static SMALLINT = duckdb::LogicalTypeId::SMALLINT, static USMALLINT = duckdb::LogicalTypeId::USMALLINT, static INTEGER = duckdb::LogicalTypeId::INTEGER, static UINTEGER = duckdb::LogicalTypeId::UINTEGER, static BIGINT = duckdb::LogicalTypeId::BIGINT, static UBIGINT = duckdb::LogicalTypeId::UBIGINT, static FLOAT = duckdb::LogicalTypeId::FLOAT, static DOUBLE = duckdb::LogicalTypeId::DOUBLE, static DATE = duckdb::LogicalTypeId::DATE, static TIMESTAMP = duckdb::LogicalTypeId::TIMESTAMP, static TIMESTAMP_S = duckdb::LogicalTypeId::TIMESTAMP_SEC, static TIMESTAMP_MS = duckdb::LogicalTypeId::TIMESTAMP_MS, static TIMESTAMP_NS = duckdb::LogicalTypeId::TIMESTAMP_NS, static TIME = duckdb::LogicalTypeId::TIME, static TIME_NS = duckdb::LogicalTypeId::TIME_NS, static TIMESTAMP_TZ = duckdb::LogicalTypeId::TIMESTAMP_TZ, static TIME_TZ = duckdb::LogicalTypeId::TIME_TZ, static VARCHAR = duckdb::LogicalTypeId::VARCHAR, static ANY = duckdb::LogicalTypeId::ANY, static BLOB = duckdb::LogicalTypeId::BLOB, static BIT = duckdb::LogicalTypeId::BIT, static BIGNUM = duckdb::LogicalTypeId::BIGNUM, static INTERVAL = duckdb::LogicalTypeId::INTERVAL, static HUGEINT = duckdb::LogicalTypeId::HUGEINT, static UHUGEINT = duckdb::LogicalTypeId::UHUGEINT, static UUID = duckdb::LogicalTypeId::UUID, static HASH = duckdb::LogicalTypeId::UBIGINT, static POINTER = duckdb::LogicalTypeId::POINTER, static TABLE = duckdb::LogicalTypeId::TABLE, static LAMBDA = duckdb::LogicalTypeId::LAMBDA, static INVALID = duckdb::LogicalTypeId::INVALID, static ROW_TYPE = duckdb::LogicalTypeId::BIGINT, static JSON_TYPE_NAME = <optimized out>}, is_null = true, value_ = {boolean = 80, tinyint = 80 'P', smallint = 9808, integer = 1880565328, bigint = 138755094029904, utinyint = 80 'P', usmallint = 9808, uinteger = 1880565328, ubigint = 138755094029904, hugeint = {lower = 138755094029904, upper = 138755094028896}, uhugeint = {lower = 138755094029904, upper = 138755094028896}, float_ = 1.87114214e+29, double_ = 6.8554125145647412e-310, pointer = 138755094029904, hash = 138755094029904, date = {days = 1880565328}, time = {micros = 138755094029904}, time_ns = {<duckdb::dtime_t> = {micros = 138755094029904}, <No data fields>}, timetz = {static TIME_BITS = 40, static OFFSET_BITS = 24, static OFFSET_MASK = 16777215, static MAX_OFFSET = 57599, static MIN_OFFSET = -57599, static OFFSET_MICROS = 1000000, bits = 138755094029904}, timestamp = {value = 138755094029904}, timestamp_s = {<duckdb::timestamp_t> = {value = 138755094029904}, <No data fields>}, timestamp_ms = {<duckdb::timestamp_t> = {value = 138755094029904}, <No data fields>}, timestamp_ns = {<duckdb::timestamp_t> = {value = 138755094029904}, <No data fields>}, timestamp_tz = {<duckdb::timestamp_t> = {value = 138755094029904}, <No data fields>}, interval = {months = 1880565328, days = 32306, micros = 138755094028896}}, value_info_ = {internal = std::shared_ptr<struct duckdb::ExtraValueInfo> (empty) = {      get() = 0x0    }}}, error_message=0x7e3270172020, strict=false)at /test/13.1_dbg/storage/duckdb/third_parties/duckdb/src/common/types/value.cpp:2012
      #20 0x000076318f872a8e in duckdb::Value::CastAs (this=0x7e3270172650, set=@0x7e3270172108: {config = {ptr = 0x0}, bind_functions = {<std::vector<duckdb::BindCastFunction, std::allocator<duckdb::BindCastFunction> >> = std::vector of length 1, capacity 1 = {{function = 0x763190a37e40 <duckdb::DefaultCasts::GetDefaultCastFunction(duckdb::BindCastInput&, duckdb::LogicalType const&, duckdb::LogicalType const&)>, info = {<std::unique_ptr<duckdb::BindCastInfo, std::default_delete<duckdb::BindCastInfo> >> = std::unique_ptr<struct duckdb::BindCastInfo> = {            get() = 0x0          }, <No data fields>}}}, <No data fields>}, map_info = {ptr = 0x0}}, get_input=@0x7e32701720f8: {context = {ptr = 0x0}, query_location = {static INVALID_INDEX = 18446744073709551615, index = 18446744073709551615}}, target_type=@0x7e3270172190: {id_ = duckdb::LogicalTypeId::VARCHAR, physical_type_ = duckdb::PhysicalType::VARCHAR, type_info_ = {internal = std::shared_ptr<struct duckdb::ExtraTypeInfo> (empty) = {      get() = 0x0    }}, static SQLNULL = duckdb::LogicalTypeId::SQLNULL, static UNKNOWN = duckdb::LogicalTypeId::UNKNOWN, static BOOLEAN = duckdb::LogicalTypeId::BOOLEAN, static TINYINT = duckdb::LogicalTypeId::TINYINT, static UTINYINT = duckdb::LogicalTypeId::UTINYINT, static SMALLINT = duckdb::LogicalTypeId::SMALLINT, static USMALLINT = duckdb::LogicalTypeId::USMALLINT, static INTEGER = duckdb::LogicalTypeId::INTEGER, static UINTEGER = duckdb::LogicalTypeId::UINTEGER, static BIGINT = duckdb::LogicalTypeId::BIGINT, static UBIGINT = duckdb::LogicalTypeId::UBIGINT, static FLOAT = duckdb::LogicalTypeId::FLOAT, static DOUBLE = duckdb::LogicalTypeId::DOUBLE, static DATE = duckdb::LogicalTypeId::DATE, static TIMESTAMP = duckdb::LogicalTypeId::TIMESTAMP, static TIMESTAMP_S = duckdb::LogicalTypeId::TIMESTAMP_SEC, static TIMESTAMP_MS = duckdb::LogicalTypeId::TIMESTAMP_MS, static TIMESTAMP_NS = duckdb::LogicalTypeId::TIMESTAMP_NS, static TIME = duckdb::LogicalTypeId::TIME, static TIME_NS = duckdb::LogicalTypeId::TIME_NS, static TIMESTAMP_TZ = duckdb::LogicalTypeId::TIMESTAMP_TZ, static TIME_TZ = duckdb::LogicalTypeId::TIME_TZ, static VARCHAR = duckdb::LogicalTypeId::VARCHAR, static ANY = duckdb::LogicalTypeId::ANY, static BLOB = duckdb::LogicalTypeId::BLOB, static BIT = duckdb::LogicalTypeId::BIT, static BIGNUM = duckdb::LogicalTypeId::BIGNUM, static INTERVAL = duckdb::LogicalTypeId::INTERVAL, static HUGEINT = duckdb::LogicalTypeId::HUGEINT, static UHUGEINT = duckdb::LogicalTypeId::UHUGEINT, static UUID = duckdb::LogicalTypeId::UUID, static HASH = duckdb::LogicalTypeId::UBIGINT, static POINTER = duckdb::LogicalTypeId::POINTER, static TABLE = duckdb::LogicalTypeId::TABLE, static LAMBDA = duckdb::LogicalTypeId::LAMBDA, static INVALID = duckdb::LogicalTypeId::INVALID, static ROW_TYPE = duckdb::LogicalTypeId::BIGINT, static JSON_TYPE_NAME = <optimized out>}, strict=false)at /test/13.1_dbg/storage/duckdb/third_parties/duckdb/src/common/types/value.cpp:2039
      #21 0x000076318f869b36 in duckdb::Value::DefaultCastAs (this=0x7e3270172650, target_type=@0x7e3270172190: {id_ = duckdb::LogicalTypeId::VARCHAR, physical_type_ = duckdb::PhysicalType::VARCHAR, type_info_ = {internal = std::shared_ptr<struct duckdb::ExtraTypeInfo> (empty) = {      get() = 0x0    }}, static SQLNULL = duckdb::LogicalTypeId::SQLNULL, static UNKNOWN = duckdb::LogicalTypeId::UNKNOWN, static BOOLEAN = duckdb::LogicalTypeId::BOOLEAN, static TINYINT = duckdb::LogicalTypeId::TINYINT, static UTINYINT = duckdb::LogicalTypeId::UTINYINT, static SMALLINT = duckdb::LogicalTypeId::SMALLINT, static USMALLINT = duckdb::LogicalTypeId::USMALLINT, static INTEGER = duckdb::LogicalTypeId::INTEGER, static UINTEGER = duckdb::LogicalTypeId::UINTEGER, static BIGINT = duckdb::LogicalTypeId::BIGINT, static UBIGINT = duckdb::LogicalTypeId::UBIGINT, static FLOAT = duckdb::LogicalTypeId::FLOAT, static DOUBLE = duckdb::LogicalTypeId::DOUBLE, static DATE = duckdb::LogicalTypeId::DATE, static TIMESTAMP = duckdb::LogicalTypeId::TIMESTAMP, static TIMESTAMP_S = duckdb::LogicalTypeId::TIMESTAMP_SEC, static TIMESTAMP_MS = duckdb::LogicalTypeId::TIMESTAMP_MS, static TIMESTAMP_NS = duckdb::LogicalTypeId::TIMESTAMP_NS, static TIME = duckdb::LogicalTypeId::TIME, static TIME_NS = duckdb::LogicalTypeId::TIME_NS, static TIMESTAMP_TZ = duckdb::LogicalTypeId::TIMESTAMP_TZ, static TIME_TZ = duckdb::LogicalTypeId::TIME_TZ, static VARCHAR = duckdb::LogicalTypeId::VARCHAR, static ANY = duckdb::LogicalTypeId::ANY, static BLOB = duckdb::LogicalTypeId::BLOB, static BIT = duckdb::LogicalTypeId::BIT, static BIGNUM = duckdb::LogicalTypeId::BIGNUM, static INTERVAL = duckdb::LogicalTypeId::INTERVAL, static HUGEINT = duckdb::LogicalTypeId::HUGEINT, static UHUGEINT = duckdb::LogicalTypeId::UHUGEINT, static UUID = duckdb::LogicalTypeId::UUID, static HASH = duckdb::LogicalTypeId::UBIGINT, static POINTER = duckdb::LogicalTypeId::POINTER, static TABLE = duckdb::LogicalTypeId::TABLE, static LAMBDA = duckdb::LogicalTypeId::LAMBDA, static INVALID = duckdb::LogicalTypeId::INVALID, static ROW_TYPE = duckdb::LogicalTypeId::BIGINT, static JSON_TYPE_NAME = <optimized out>}, strict=false)at /test/13.1_dbg/storage/duckdb/third_parties/duckdb/src/common/types/value.cpp:2053
      #22 0x000076318f86df65 in duckdb::Value::ToString[abi:cxx11]() const (this=0x7e3270172650)at /test/13.1_dbg/storage/duckdb/third_parties/duckdb/src/common/types/value.cpp:1644
      #23 0x000076318f86de80 in duckdb::Value::GetValue<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > (this=0x7e3270172650)at /test/13.1_dbg/storage/duckdb/third_parties/duckdb/src/common/types/value.cpp:1306
      #24 0x000076318f481394 in store_duckdb_field_in_mysql_format (field=0x76319434fca0, value=@0x7e3270172650: {type_ = {id_ = duckdb::LogicalTypeId::TIME, physical_type_ = duckdb::PhysicalType::INT64, type_info_ = {internal = std::shared_ptr<struct duckdb::ExtraTypeInfo> (empty) = {        get() = 0x0      }}, static SQLNULL = duckdb::LogicalTypeId::SQLNULL, static UNKNOWN = duckdb::LogicalTypeId::UNKNOWN, static BOOLEAN = duckdb::LogicalTypeId::BOOLEAN, static TINYINT = duckdb::LogicalTypeId::TINYINT, static UTINYINT = duckdb::LogicalTypeId::UTINYINT, static SMALLINT = duckdb::LogicalTypeId::SMALLINT, static USMALLINT = duckdb::LogicalTypeId::USMALLINT, static INTEGER = duckdb::LogicalTypeId::INTEGER, static UINTEGER = duckdb::LogicalTypeId::UINTEGER, static BIGINT = duckdb::LogicalTypeId::BIGINT, static UBIGINT = duckdb::LogicalTypeId::UBIGINT, static FLOAT = duckdb::LogicalTypeId::FLOAT, static DOUBLE = duckdb::LogicalTypeId::DOUBLE, static DATE = duckdb::LogicalTypeId::DATE, static TIMESTAMP = duckdb::LogicalTypeId::TIMESTAMP, static TIMESTAMP_S = duckdb::LogicalTypeId::TIMESTAMP_SEC, static TIMESTAMP_MS = duckdb::LogicalTypeId::TIMESTAMP_MS, static TIMESTAMP_NS = duckdb::LogicalTypeId::TIMESTAMP_NS, static TIME = duckdb::LogicalTypeId::TIME, static TIME_NS = duckdb::LogicalTypeId::TIME_NS, static TIMESTAMP_TZ = duckdb::LogicalTypeId::TIMESTAMP_TZ, static TIME_TZ = duckdb::LogicalTypeId::TIME_TZ, static VARCHAR = duckdb::LogicalTypeId::VARCHAR, static ANY = duckdb::LogicalTypeId::ANY, static BLOB = duckdb::LogicalTypeId::BLOB, static BIT = duckdb::LogicalTypeId::BIT, static BIGNUM = duckdb::LogicalTypeId::BIGNUM, static INTERVAL = duckdb::LogicalTypeId::INTERVAL, static HUGEINT = duckdb::LogicalTypeId::HUGEINT, static UHUGEINT = duckdb::LogicalTypeId::UHUGEINT, static UUID = duckdb::LogicalTypeId::UUID, static HASH = duckdb::LogicalTypeId::UBIGINT, static POINTER = duckdb::LogicalTypeId::POINTER, static TABLE = duckdb::LogicalTypeId::TABLE, static LAMBDA = duckdb::LogicalTypeId::LAMBDA, static INVALID = duckdb::LogicalTypeId::INVALID, static ROW_TYPE = duckdb::LogicalTypeId::BIGINT, static JSON_TYPE_NAME = <optimized out>}, is_null = false, value_ = {boolean = false, tinyint = 0 '\000', smallint = 1024, integer = -194313216, bigint = 90000000000, utinyint = 0 '\000', usmallint = 1024, uinteger = 4100654080, ubigint = 90000000000, hugeint = {lower = 90000000000, upper = 129955308616880}, uhugeint = {lower = 90000000000, upper = 129955308616880}, float_ = -7.44794245e+31, double_ = 4.4465908125712189e-313, pointer = 90000000000, hash = 90000000000, date = {days = -194313216}, time = {micros = 90000000000}, time_ns = {<duckdb::dtime_t> = {micros = 90000000000}, <No data fields>}, timetz = {static TIME_BITS = 40, static OFFSET_BITS = 24, static OFFSET_MASK = 16777215, static MAX_OFFSET = 57599, static MIN_OFFSET = -57599, static OFFSET_MICROS = 1000000, bits = 90000000000}, timestamp = {value = 90000000000}, timestamp_s = {<duckdb::timestamp_t> = {value = 90000000000}, <No data fields>}, timestamp_ms = {<duckdb::timestamp_t> = {value = 90000000000}, <No data fields>}, timestamp_ns = {<duckdb::timestamp_t> = {value = 90000000000}, <No data fields>}, timestamp_tz = {<duckdb::timestamp_t> = {value = 90000000000}, <No data fields>}, interval = {months = -194313216, days = 20, micros = 129955308616880}}, value_info_ = {internal = std::shared_ptr<struct duckdb::ExtraValueInfo> (empty) = {      get() = 0x0    }}}, thd=0x763194000d60)at /test/13.1_dbg/storage/duckdb/convertor/duckdb_select.cc:190
      #25 0x000076318f3fa1f6 in ha_duckdb_select_handler::next_row (this=0x76319434bad0)at /test/13.1_dbg/storage/duckdb/ha_duckdb_pushdown.cc:922
      #26 0x000056e00bab2650 in select_handler::execute (this=0x76319434bad0)at /test/13.1_dbg/sql/select_handler.cc:172
      #27 0x000056e00ba394bd in JOIN::exec_inner (this=0x76319401bce0)at /test/13.1_dbg/sql/sql_select.cc:5104
      #28 0x000056e00ba38840 in JOIN::exec (this=0x76319401bce0)at /test/13.1_dbg/sql/sql_select.cc:4914
      #29 0x000056e00ba12ffc in mysql_select (thd=0x763194000d60, tables=0x76319401abc0, fields=@0x76319401a7d8: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x76319401ab50, last = 0x76319401c780, elements = 2}, <No data fields>}, conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2164525824, result=0x76319401bcb0, unit=0x7631940052f8, select_lex=0x76319401a520) at /test/13.1_dbg/sql/sql_select.cc:5440
      #30 0x000056e00ba12ad5 in handle_select (thd=0x763194000d60, lex=0x763194005218, result=0x76319401bcb0, setup_tables_done_option=0)at /test/13.1_dbg/sql/sql_select.cc:637
      #31 0x000056e00b9afd9d in execute_sqlcom_select (thd=0x763194000d60, all_tables=0x76319401abc0) at /test/13.1_dbg/sql/sql_parse.cc:6229
      #32 0x000056e00b9a48b6 in mysql_execute_command (thd=0x763194000d60, is_called_from_prepared_stmt=false) at /test/13.1_dbg/sql/sql_parse.cc:3997
      #33 0x000056e00b99c974 in mysql_parse (thd=0x763194000d60, rawbuf=0x76319401a490 "SELECT * FROM t1", length=16, parser_state=0x7e3270174a80) at /test/13.1_dbg/sql/sql_parse.cc:7968
      #34 0x000056e00b999c9d in dispatch_command (command=COM_QUERY, thd=0x763194000d60, packet=0x76319400b6c1 "", packet_length=16, blocking=true) at /test/13.1_dbg/sql/sql_parse.cc:1903
      #35 0x000056e00b99d523 in do_command (thd=0x763194000d60, blocking=true)at /test/13.1_dbg/sql/sql_parse.cc:1437
      #36 0x000056e00bba2969 in do_handle_one_connection (connect=0x56e03f479940, put_in_cache=true) at /test/13.1_dbg/sql/sql_connect.cc:1514
      #37 0x000056e00bba270e in handle_one_connection (arg=0x56e03f47c1e0)at /test/13.1_dbg/sql/sql_connect.cc:1426
      #38 0x00007e3271a9cb84 in start_thread (arg=<optimized out>)at ./nptl/pthread_create.c:447
      #39 0x00007e3271b29d6c in clone3 ()at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
      

      Bug Detection Matrix

          Rel    o/d  Build   Commit                                    UniqueID observed
      CS  10.6   dbg  170826  210ab6edf47fa73f3b77e974ed2e9357ccdd051c  No bug found
      CS  10.6   opt  170826  210ab6edf47fa73f3b77e974ed2e9357ccdd051c  No bug found
      CS  10.11  dbg  170826  0fe578244bc2904ae482d7836a7e3d4415e3482f  No bug found
      CS  10.11  opt  170826  0fe578244bc2904ae482d7836a7e3d4415e3482f  No bug found
      CS  11.4   dbg  170826  77c8f791618136002e5724ca81f365134b583a29  SIGABRT|__cxa_throw|duckdb::DuckDBAssertInternal|duckdb::Time::Convert|duckdb::StringAsTime<false>
      CS  11.4   opt  170826  77c8f791618136002e5724ca81f365134b583a29  No bug found
      CS  11.8   dbg  170826  d26f9ab217a7fcf9d4eccc62c01020ff275ff42e  SIGABRT|__cxa_throw|duckdb::DuckDBAssertInternal|duckdb::Time::Convert|duckdb::StringAsTime<false>
      CS  11.8   opt  170826  d26f9ab217a7fcf9d4eccc62c01020ff275ff42e  No bug found
      CS  12.3   dbg  170826  91156c3de58762196605150ab3f756fe952592d1  SIGABRT|__cxa_throw|duckdb::DuckDBAssertInternal|duckdb::Time::Convert|duckdb::StringAsTime<false>
      CS  12.3   opt  170826  91156c3de58762196605150ab3f756fe952592d1  No bug found
      CS  13.0   dbg  170826  a848493c6fe031f23606144420c1ca1e467cbd81  SIGABRT|__cxa_throw|duckdb::DuckDBAssertInternal|duckdb::Time::Convert|duckdb::StringAsTime<false>
      CS  13.0   opt  170826  a848493c6fe031f23606144420c1ca1e467cbd81  No bug found
      CS  13.1   dbg  170826  f4299f0bbf38820794295bd4cae427544681cbd1  SIGABRT|__cxa_throw|duckdb::DuckDBAssertInternal|duckdb::Time::Convert|duckdb::StringAsTime<false>
      CS  13.1   opt  170826  f4299f0bbf38820794295bd4cae427544681cbd1  No bug found
      ES  11.4   dbg  060526  90f707057d44f1b5c013a0c3672fd12f32ea7085  No bug found
      ES  11.4   opt  060526  90f707057d44f1b5c013a0c3672fd12f32ea7085  No bug found
      ES  11.8   dbg  060526  1499789de285a8109d68d79347de0281865b28f4  No bug found
      ES  11.8   opt  060526  1499789de285a8109d68d79347de0281865b28f4  No bug found
      

      Attachments

        Issue Links

          Activity

            People

              drrtuy Roman
              ramesh Ramesh Sivaraman
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0d
                  0d
                  Logged:
                  Time Spent - 0.5h
                  0.5h

                  Git Integration

                    Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.