Skip to content

Conversation

@lixun910
Copy link
Collaborator

  • Add support for casting UBIGINT, HUGEINT, and UHUGEINT to DOUBLE
  • Prevents BigInt issues in JavaScript when dealing with large integer types

From the DuckDB documentation:

  • HUGEINT is a signed 16-byte (128-bit) integer type.
  • UHUGEINT is an unsigned 16-byte (128-bit) integer type.
  • UBIGINT is an unsigned 8-byte (64-bit) integer type.

… types

- Add support for casting UBIGINT, HUGEINT, and UHUGEINT to DOUBLE
- Prevents BigInt issues in JavaScript when dealing with large integer types
- Maintains backward compatibility with existing BIGINT handling
Copilot AI review requested due to automatic review settings October 22, 2025 23:11
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR extends the BigInt casting functionality to handle additional large integer types from DuckDB (UBIGINT, HUGEINT, UHUGEINT) by converting them to DOUBLE, preventing JavaScript BigInt compatibility issues.

Key changes:

  • Expanded type checking condition to include UBIGINT (unsigned 64-bit), HUGEINT (signed 128-bit), and UHUGEINT (unsigned 128-bit) integer types
  • Added inline comment explaining the purpose of casting large integer types

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

@lixun910 lixun910 requested review from igorDykhta and ilyabo October 22, 2025 23:11
@lixun910
Copy link
Collaborator Author

Thanks @igorDykhta !

@lixun910 lixun910 merged commit 2e24bd2 into master Oct 22, 2025
10 checks passed
@lixun910 lixun910 deleted the xli-duckdb-for-h3hub branch October 22, 2025 23:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants