Skip to content

Conversation

@JaroslavTulach
Copy link
Member

@JaroslavTulach JaroslavTulach commented Jan 10, 2026

Pull Request Description

Checklist

Please ensure that the following checklist has been satisfied before submitting the PR:

  • All code follows the
    Scala,
    Java,
  • Unit tests continue to work in mock dual JVM mode:
sbt:enso> runEngineDistribution --jvm 
 --vm.D=polyglot.enso.classLoading=Standard.Tableau:guest,hosted 
 --run test/Tableau_Tests

@github-actions github-actions bot added the -libs-API-change-Table Marks a PR that changes the public API of Standard.Table label Jan 11, 2026
if schemas.distinct.length <= 1 then (Table_Viz_Data.GenericGrid [Table_Viz_Header.Link "Table" "Table" "read {{@Table}}"] [tables]) else
(Table_Viz_Data.GenericGrid [Table_Viz_Header.Label "Schema", Table_Viz_Header.Link "Table" "Table" "read {{@Table}} {{@Schema}}"] [schemas, tables])

private wrap_io_exception (file : File | Nothing) io_exception =
Copy link
Member Author

Choose a reason for hiding this comment

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

@JaroslavTulach JaroslavTulach force-pushed the wip/jtulach/TableauInDualJvm branch from b96b610 to d8730c9 Compare January 11, 2026 20:17
@enso-bot
Copy link

enso-bot bot commented Jan 12, 2026

Jaroslav Tulach reports a new STANDUP for yesterday (2026-01-11):

Progress: .

@JaroslavTulach
Copy link
Member Author

There two failures in Write Tables:

  • ❌ should be able to write a decimal column [91ms]
    • Reason: An unexpected error was returned: (Hyper_Unsupported_Type.Error '3.14 type: java.math.BigDecimal')
  • ❌ in dry run mode only first 1000 records are written to a temporary file
    • Expected only warning Dry_Run_Operation, but a dataflow error has been matched: Tableau Hyper files do not support columns of type 0 type: java.lang.Long

if (v.getMetaObject() instanceof Value meta) {
type = meta.getMetaQualifiedName();
}
if ("java.math.BigDecimal".equals(type)) {
Copy link
Member Author

Choose a reason for hiding this comment

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

case LocalDate ld -> inserter.add(ld);
case LocalTime lt -> inserter.add(lt);
case ZonedDateTime zdt -> inserter.add(zdt);
case BigDecimal bd -> inserter.add(bd);
Copy link
Member Author

Choose a reason for hiding this comment

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

This code is different than the classical switch over StorageType. That one can be fixed by making the StorageType local. Is there any reason why this code has to be different and not follow the typical switch (storageType) pattern?

Copy link
Member

@Akirathan Akirathan left a comment

Choose a reason for hiding this comment

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

Don't forget to also delete std-bits/tableau/**/resources/**/native directory with NI config files.

@enso-bot
Copy link

enso-bot bot commented Jan 13, 2026

Jaroslav Tulach reports a new STANDUP for yesterday (2026-01-12):

Progress: .

@github-project-automation github-project-automation bot moved this to 🌟 Q/A review in Issues Board Jan 13, 2026
@JaroslavTulach JaroslavTulach moved this from 🌟 Q/A review to 👁️ Code review in Issues Board Jan 13, 2026
@JaroslavTulach JaroslavTulach added -libs Libraries: New libraries to be implemented -compiler labels Jan 13, 2026
@JaroslavTulach JaroslavTulach merged commit 36da1a3 into develop Jan 13, 2026
75 checks passed
@github-project-automation github-project-automation bot moved this from 👁️ Code review to 🟢 Accepted in Issues Board Jan 13, 2026
@JaroslavTulach JaroslavTulach deleted the wip/jtulach/TableauInDualJvm branch January 13, 2026 15:12
@enso-bot
Copy link

enso-bot bot commented Jan 14, 2026

Jaroslav Tulach reports a new STANDUP for yesterday (2026-01-13):

Progress: .

mergify bot pushed a commit that referenced this pull request Jan 14, 2026
- #14607 reveals a problem when running

```ruby
from Standard.Base import all
from Standard.Table import all
from Standard.Tableau import all

main =
node1 = Data.read '/tmp/x.hyper'
node2 = node1.read 'Extract'
node3 = node2.set (expr 'year([Date])') "Year"
node3.get "Year" . to_vector
```
in _dual JVM_ (mock) mode:
```
sbt:enso> runEngineDistribution --vm.D=polyglot.enso.classLoading=Standard.Tableau:guest,hosted --run hyper.enso
Error:Argument_Mismatch Unsupported type: class com.oracle.truffle.polyglot.PolyglotMapAndFunction (expected date/time type).
```
- builds upon #14309
- and upon #14471
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

-compiler -libs Libraries: New libraries to be implemented -libs-API-change-Table Marks a PR that changes the public API of Standard.Table

Projects

Status: 🟢 Accepted

Development

Successfully merging this pull request may close these issues.

4 participants