Skip to content

DuckDB Enum support? #59

@eitsupi

Description

@eitsupi

It would be great if Enums were supported in Vortex. Currently it causes a panic.

DuckDB v1.4.2 (Andium) 68d7555f68
Enter ".help" for usage hints.
Connected to a transient in-memory database.
Use ".open FILENAME" to reopen on a persistent database.
D CREATE TYPE mood AS ENUM ('sad', 'ok', 'happy');
D CREATE TABLE person (
      name TEXT,
      current_mood mood
  );
D INSERT INTO person VALUES
      ('Pedro', 'happy'),
      ('Mark', NULL),
      ('Pagliacci', 'sad'),
      ('Mr. Mackey', 'ok');
D load vortex; copy (from person) to 'my.vortex' (format vortex);

thread '<unnamed>' (4469) panicked at vortex-duckdb/src/convert/dtype.rs:154:46:
not yet implemented
stack backtrace:
   0: __rustc::rust_begin_unwind
             at /rustc/ed61e7d7e242494fb7057f2657300d9e77bb4fcb/library/std/src/panicking.rs:698:5
   1: core::panicking::panic_fmt
             at /rustc/ed61e7d7e242494fb7057f2657300d9e77bb4fcb/library/core/src/panicking.rs:75:14
   2: core::panicking::panic
             at /rustc/ed61e7d7e242494fb7057f2657300d9e77bb4fcb/library/core/src/panicking.rs:145:5
   3: <vortex_dtype::dtype::DType as vortex_duckdb::convert::dtype::FromLogicalType>::from_logical_type
   4: vortex_duckdb::duckdb::copy_function::callback::bind_callback
   5: _ZN6vortex10c_bind_oneERN6duckdb13ClientContextERNS0_21CopyFunctionBindInputERKNS0_6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1EEERKNS5_INS0_11LogicalTypeELb1EEE
   6: _ZN6duckdb6Binder10BindCopyToERNS_13CopyStatementERKNS_12CopyFunctionENS_10CopyToTypeE
   7: _ZN6duckdb6Binder4BindERNS_13CopyStatementENS_10CopyToTypeE
   8: _ZN6duckdb6Binder4BindERNS_12SQLStatementE
   9: _ZN6duckdb7Planner10CreatePlanERNS_12SQLStatementE
  10: _ZN6duckdb13ClientContext31CreatePreparedStatementInternalERNS_17ClientContextLockERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS_10unique_ptrINS_12SQLStatementESt14default_deleteISC_ELb1EEENS_12optional_ptrISt13unordered_mapIS8_NS_18BoundParameterDataENS_33CaseInsensitiveStringHashFunctionENS_29CaseInsensitiveStringEqualityESaISt4pairIS9_SI_EEELb1EEE
  11: _ZN6duckdb13ClientContext23CreatePreparedStatementERNS_17ClientContextLockERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS_10unique_ptrINS_12SQLStatementESt14default_deleteISC_ELb1EEENS_12optional_ptrISt13unordered_mapIS8_NS_18BoundParameterDataENS_33CaseInsensitiveStringHashFunctionENS_29CaseInsensitiveStringEqualityESaISt4pairIS9_SI_EEELb1EEENS_21PreparedStatementModeE
  12: _ZN6duckdb13ClientContext24PendingStatementInternalERNS_17ClientContextLockERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS_10unique_ptrINS_12SQLStatementESt14default_deleteISC_ELb1EEERKNS_22PendingQueryParametersE
  13: _ZN6duckdb13ClientContext35PendingStatementOrPreparedStatementERNS_17ClientContextLockERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS_10unique_ptrINS_12SQLStatementESt14default_deleteISC_ELb1EEERNS_10shared_ptrINS_21PreparedStatementDataELb1EEERKNS_22PendingQueryParametersE
  14: _ZN6duckdb13ClientContext43PendingStatementOrPreparedStatementInternalERNS_17ClientContextLockERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS_10unique_ptrINS_12SQLStatementESt14default_deleteISC_ELb1EEERNS_10shared_ptrINS_21PreparedStatementDataELb1EEERKNS_22PendingQueryParametersE
  15: _ZN6duckdb13ClientContext20PendingQueryInternalERNS_17ClientContextLockENS_10unique_ptrINS_12SQLStatementESt14default_deleteIS4_ELb1EEERKNS_22PendingQueryParametersEb
  16: _ZN6duckdb13ClientContext12PendingQueryENS_10unique_ptrINS_12SQLStatementESt14default_deleteIS2_ELb1EEERSt13unordered_mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS_18BoundParameterDataENS_33CaseInsensitiveStringHashFunctionENS_29CaseInsensitiveStringEqualityESaISt4pairIKSC_SD_EEEb
  17: _ZN6duckdb13ClientContext12PendingQueryENS_10unique_ptrINS_12SQLStatementESt14default_deleteIS2_ELb1EEEb
  18: _ZN6duckdb10Connection12PendingQueryENS_10unique_ptrINS_12SQLStatementESt14default_deleteIS2_ELb1EEEb
  19: duckdb_shell_sqlite3_prepare_v2
  20: _ZN12duckdb_shell10ShellState10ExecuteSQLEPKcPPc
  21: _ZN12duckdb_shell10ShellState13RunOneSqlLineENS_9InputModeEPc
  22: _ZN12duckdb_shell10ShellState12ProcessInputENS_9InputModeE
  23: main
  24: <unknown>
  25: __libc_start_main
  26: _start
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
fatal runtime error: failed to initiate panic, error 5, aborting
fish: Job 1, '~/.duckdb/cli/latest/duckdb' terminated by signal SIGABRT (Abort)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions