exasol / bigquery-virtual-schema

Virtual Schema for connecting Big Query as a data source to Exasol
MIT License
1 stars 1 forks source link

Evaluate BigQuery Emulator again #14

Closed ckunki closed 1 month ago

ckunki commented 1 year ago

https://github.com/goccy/bigquery-emulator Check if BigQuery Emulator now supports the required features, see #9.

kaklakariada commented 1 year ago

Tests still fail with ghcr.io/goccy/bigquery-emulator:0.2.12:

Caused by: java.sql.SQLException: [Simba][JDSI](20560) Unexpected error while sorting metadata.
com.simba.googlebigquery.dsi.dataengine.impl.DSIMetadataResultSet.[init](Unknown Source)
com.simba.googlebigquery.dsi.dataengine.impl.DSIDataEngine.getMetadataResultImplementation(Unknown Source)
com.simba.googlebigquery.googlebigquery.dataengine.BQDataEngine.getMetadataResultImplementation(Unknown Source)
com.simba.googlebigquery.dsi.dataengine.impl.DSIDataEngine.makeNewMetadataResult(Unknown Source)
com.simba.googlebigquery.jdbc.jdbc42.S42DatabaseMetaData.createMetaDataResult(Unknown Source)
com.simba.googlebigquery.googlebigquery.jdbc42.BQS42DatabaseMetaData.createMetaDataResult(Unknown Source)
com.simba.googlebigquery.jdbc.common.BaseDatabaseMetaData.getTables(Unknown Source)
com.exasol.adapter.jdbc.AbstractRemoteMetadataReader.extractTableMetadata(AbstractRemoteMetadataReader.java:135)
com.exasol.adapter.jdbc.AbstractRemoteMetadataReader.getTableMetadata(AbstractRemoteMetadataReader.java:127)
com.exasol.adapter.jdbc.AbstractRemoteMetadataReader.getSchemaMetadata(AbstractRemoteMetadataReader.java:118)
com.exasol.adapter.jdbc.AbstractRemoteMetadataReader.readRemoteSchemaMetadataForSelectedTables(AbstractRemoteMetadataReader.java:108)
com.exasol.adapter.jdbc.AbstractRemoteMetadataReader.readRemoteSchemaMetadata(AbstractRemoteMetadataReader.java:98)
com.exasol.adapter.dialects.AbstractSqlDialect.readSchemaMetadata(AbstractSqlDialect.java:146)
com.exasol.adapter.jdbc.JDBCAdapter.readMetadata(JDBCAdapter.java:74)
com.exasol.adapter.jdbc.JDBCAdapter.createVirtualSchema(JDBCAdapter.java:44)
com.exasol.adapter.AdapterCallExecutor.executeCreateVirtualSchemaRequest(AdapterCallExecutor.java:47)
com.exasol.adapter.request.CreateVirtualSchemaRequest.executeWith(CreateVirtualSchemaRequest.java:24)
com.exasol.adapter.AdapterCallExecutor.executeAdapterCall(AdapterCallExecutor.java:34)
com.exasol.adapter.RequestDispatcher.processAdapterCall(RequestDispatcher.java:55)
com.exasol.adapter.RequestDispatcher.adapterCall(RequestDispatcher.java:33)
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
java.base/java.lang.reflect.Method.invoke(Method.java:566)
Caused by: com.simba.googlebigquery.support.exceptions.GeneralException: [Simba][JDSI](20560) Unexpected error while sorting metadata.
 ... 24 more
Caused by: java.lang.NullPointerException
java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195)
java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195)
java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1655)
java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)
java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:913)
java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:578)
com.simba.googlebigquery.googlebigquery.client.BQClient.getProjects(Unknown Source)
com.simba.googlebigquery.googlebigquery.client.metadata.BQMetadataExecutor.execute(Unknown Source)
com.simba.googlebigquery.googlebigquery.dataengine.metadata.BQMetadataSource.executeFetch(Unknown Source)
com.simba.googlebigquery.googlebigquery.dataengine.metadata.BQMetadataSource.moveToNextTable(Unknown Source)
com.simba.googlebigquery.googlebigquery.dataengine.metadata.BQTablesMetadataSource.moveToNextRow(Unknown Source)
com.simba.googlebigquery.dsi.dataengine.impl.DSIMetadataResultSet.moveToNextUnsortedRow(Unknown Source)
com.simba.googlebigquery.dsi.dataengine.impl.DSIMetadataResultSet.initializeRows(Unknown Source)
com.simba.googlebigquery.dsi.dataengine.impl.DSIMetadataResultSet.sortData(Unknown Source)
com.simba.googlebigquery.dsi.dataengine.impl.DSIMetadataResultSet.[init](Unknown Source)
com.simba.googlebigquery.dsi.dataengine.impl.DSIDataEngine.getMetadataResultImplementation(Unknown Source)
com.simba.googlebigquery.googlebigquery.dataengine.BQDataEngine.getMetadataResultImplementation(Unknown Source)
com.simba.googlebigquery.dsi.dataengine.impl.DSIDataEngine.makeNewMetadataResult(Unknown Source)
com.simba.googlebigquery.jdbc.jdbc42.S42DatabaseMetaData.createMetaDataResult(Unknown Source)
com.simba.googlebigquery.googlebigquery.jdbc42.BQS42DatabaseMetaData.createMetaDataResult(Unknown Source)
com.simba.googlebigquery.jdbc.common.BaseDatabaseMetaData.getTables(Unknown Source)
com.exasol.adapter.jdbc.AbstractRemoteMetadataReader.extractTableMetadata(AbstractRemoteMetadataReader.java:135)

You can start the emulator with the following command:

docker run --publish 9050:9050 --publish 9060:9060 ghcr.io/goccy/bigquery-emulator:0.2.12 --project=myProject --port=9050 --grpc-port=9060 --log-level=debug 
redcatbear commented 1 month ago

Closing because its unlikely we will have time for this.