We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
This statement crashes duckdb spatial:
SELECT ST_Distance(a2, a1), ST_Distance(a1, a2) FROM (SELECT ST_GeomFromText('MULTIPOINT((-2 0), EMPTY)') As a1 ,ST_GeomFromText('GEOMETRYCOLLECTION(POINT(1 0),LINESTRING(0 0,1 0))') As a2);
Here is the stack information:
#0 0x00005570df204d29 in geos::algorithm::Distance::pointToSegment (p=..., A=..., B=...) at /duckdb_spatial/build/debug/deps/projects/Source/GEOS/src/algorithm/Distance.cpp:56 #1 0x00005570df151050 in geos::operation::distance::DistanceOp::computeMinDistance (this=0x7ffd1d7279b0, line=0x5570e9cb5500, pt=0x5570e9cafbf0, locGeom=...) at /duckdb_spatial/build/debug/deps/projects/Source/GEOS/src/operation/distance/DistanceOp.cpp:506 #2 0x00005570df15078d in geos::operation::distance::DistanceOp::computeMinDistanceLinesPoints (this=0x7ffd1d7279b0, lines=std::vector of length 1, capacity 1 = {...}, points=std::vector of length 2, capacity 2 = {...}, locGeom=...) at /duckdb_spatial/build/debug/deps/projects/Source/GEOS/src/operation/distance/DistanceOp.cpp:417 #3 0x00005570df150183 in geos::operation::distance::DistanceOp::computeFacetDistance (this=0x7ffd1d7279b0) at /duckdb_spatial/build/debug/deps/projects/Source/GEOS/src/operation/distance/DistanceOp.cpp:315 #4 0x00005570df14f9ba in geos::operation::distance::DistanceOp::computeMinDistance (this=0x7ffd1d7279b0) at /duckdb_spatial/build/debug/deps/projects/Source/GEOS/src/operation/distance/DistanceOp.cpp:183 #5 0x00005570df14f3e4 in geos::operation::distance::DistanceOp::distance (this=0x7ffd1d7279b0) at /duckdb_spatial/build/debug/deps/projects/Source/GEOS/src/operation/distance/DistanceOp.cpp:113 #6 0x00005570df14f24e in geos::operation::distance::DistanceOp::distance (g0=0x5570e9cb5420, g1=0x5570e9cb5470) at /duckdb_spatial/build/debug/deps/projects/Source/GEOS/src/operation/distance/DistanceOp.cpp:59 --Type <RET> for more, q to quit, c to continue without paging-- #7 0x00005570df0a370d in geos::geom::Geometry::distance (this=0x5570e9cb5420, other=0x5570e9cb5470) at /duckdb_spatial/build/debug/deps/projects/Source/GEOS/src/geom/Geometry.cpp:814 #8 0x00005570df0498cb in GEOSDistance_r::$_20::operator() (this=0x7ffd1d727ab8) at /duckdb_spatial/build/debug/deps/projects/Source/GEOS/capi/geos_ts_c.cpp:815 #9 0x00005570df0330d6 in execute<GEOSDistance_r::$_20>(GEOSContextHandle_HS*, std::conditional<std::is_same<decltype ((std::declval<GEOSDistance_r::$_20>())()), bool>::value, char, decltype ((std::declval<GEOSDistance_r::$_20>())())>::type, GEOSDistance_r::$_20&&) ( extHandle=0x5570e9cb22c0, errval=0, f=...) at /duckdb_spatial/build/debug/deps/projects/Source/GEOS/capi/geos_ts_c.cpp:396 #10 0x00005570df03306f in GEOSDistance_r (extHandle=0x5570e9cb22c0, g1=0x5570e9cb5420, g2=0x5570e9cb5470, dist=0x7ffd1d727b40) at /duckdb_spatial/build/debug/deps/projects/Source/GEOS/capi/geos_ts_c.cpp:814 #11 0x00005570ddf23a5f in spatial::geos::ExecutePreparedDistance(spatial::geos::GEOSFunctionLocalState&, duckdb::Vector&, duckdb::Vector&, unsigned long, duckdb::Vector&)::$_2::operator()(duckdb::string_t&, duckdb::string_t&) const (this=0x7ffd1d727bc0, left_blob=..., right_blob=...) at /duckdb_spatial/spatial/src/spatial/geos/functions/scalar/st_distance.cpp:51 #12 0x00005570ddf238c1 in duckdb::BinaryLambdaWrapper::Operation<spatial::geos::ExecutePreparedDistance(spatial::geos::GEOSFunctionLocalState&, duckdb::Vector&, duckdb::Vector&, unsigned long, duckdb::Vector&)::$_2, bool, duckdb::string_t, duckdb::string_t, double>(spatial::geos::ExecutePreparedDistance(spatial::geos::GEOSFunctionLocalState&, duckdb::Vector&, duckdb::Vector&, unsigned long, duckdb::--Type <RET> for more, q to quit, c to continue without paging-- Vector&)::$_2, duckdb::string_t, duckdb::string_t, duckdb::ValidityMask&, unsigned long) (fun=..., left=..., right=..., mask=..., idx=0) at /duckdb_spatial/duckdb/src/include/duckdb/common/vector_operations/binary_executor.hpp:51 #13 0x00005570ddf221fa in duckdb::BinaryExecutor::ExecuteConstant<duckdb::string_t, duckdb::string_t, double, duckdb::BinaryLambdaWrapper, bool, spatial::geos::ExecutePreparedDistance(spatial::geos::GEOSFunctionLocalState&, duckdb::Vector&, duckdb::Vector&, unsigned long, duckdb::Vector&)::$_2>(duckdb::Vector&, duckdb::Vector&, duckdb::Vector&, spatial::geos::ExecutePreparedDistance(spatial::geos::GEOSFunctionLocalState&, duckdb::Vector&, duckdb::Vector&, unsigned long, duckdb::Vector&)::$_2) (left=..., right=..., result=..., fun=...) at /duckdb_spatial/duckdb/src/include/duckdb/common/vector_operations/binary_executor.hpp:137 #14 0x00005570ddf21af1 in duckdb::BinaryExecutor::ExecuteSwitch<duckdb::string_t, duckdb::string_t, double, duckdb::BinaryLambdaWrapper, bool, spatial::geos::ExecutePreparedDistance(spatial::geos::GEOSFunctionLocalState&, duckdb::Vector&, duckdb::Vector&, unsigned long, duckdb::Vector&)::$_2>(duckdb::Vector&, duckdb::Vector&, duckdb::Vector&, unsigned long, spatial::geos::ExecutePreparedDistance(spatial::geos::GEOSFunctionLocalState&, duckdb::Vector&, duckdb::Vector&, unsigned long, duckdb::Vector&)::$_2) (left=..., right=..., result=..., count=1, fun=...) at /duckdb_spatial/duckdb/src/include/duckdb/common/vector_operations/binary_executor.hpp:234 #15 0x00005570ddf1d991 in duckdb::BinaryExecutor::Execute<duckdb::string_t, duckdb::string_t, double, spatial::geos::ExecutePreparedDistance(spatial::geos::GEOSFunctionLocalState&, duckdb::Vector&, duckdb::Vector&, unsigned long, duckdb::Vector&)::$_2>(duckdb::Vector&, duckdb::Vector&, duckdb::Vector&, unsigned long, spatial::geos::ExecutePreparedDistance(spatial::geos::GEOSFunctionLocalState&, duck --Type <RET> for more, q to quit, c to continue without paging-- db::Vector&, duckdb::Vector&, unsigned long, duckdb::Vector&)::$_2) (left=..., right=..., result=..., count=1, fun=...) at /duckdb_spatial/duckdb/src/include/duckdb/common/vector_operations/binary_executor.hpp:253 #16 0x00005570ddf1d71d in spatial::geos::ExecutePreparedDistance (lstate=..., left=..., right=..., count=1, result=...) at /duckdb_spatial/spatial/src/spatial/geos/functions/scalar/st_distance.cpp:46 #17 0x00005570ddf1cd0a in spatial::geos::DistanceFunction (args=..., state=..., result=...) at /duckdb_spatial/spatial/src/spatial/geos/functions/scalar/st_distance.cpp:62 #18 0x00005570da3af5d9 in std::__invoke_impl<void, void (*&)(duckdb::DataChunk&, duckdb::ExpressionState&, duckdb::Vector&), duckdb::DataChunk&, duckdb::ExpressionState&, duckdb::Vector&> ( __f=@0x5570e9cb0d00: 0x5570ddf1ca30 <spatial::geos::DistanceFunction(duckdb::DataChunk&, duckdb::ExpressionState&, duckdb::Vector&)>, __args=..., __args=..., __args=...) at /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/invoke.h:61 #19 0x00005570da3af2a5 in std::__invoke_r<void, void (*&)(duckdb::DataChunk&, duckdb::ExpressionState&, duckdb::Vector&), duckdb::DataChunk&, duckdb::ExpressionState&, duckdb::Vector&> ( __fn=@0x5570e9cb0d00: 0x5570ddf1ca30 <spatial::geos::DistanceFunction(duckdb::DataChunk&, duckdb::ExpressionState&, duckdb::Vector&)>, __args=..., __args=..., __args=...) at /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/invoke.h:154 #20 0x00005570da3aedc5 in std::_Function_handler<void (duckdb::DataChunk&, duckdb::ExpressionState&, duckdb::Vector&), void (*)(duckdb::DataChunk&, duckdb::ExpressionState&, duckdb::Vector&)>::_M_invoke(std::_Any_data const&, duckdb::DataChunk&, duckdb::ExpressionState&, duckdb::Vector&) (__functor=..., __args=..., __args=..., __args=...) at /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/std_function.h:290 #21 0x00005570d8ab5823 in std::function<void (duckdb::DataChunk&, duckdb::ExpressionState&, duckdb::Vector&)>::operator()(duckdb::DataChunk&, duckdb::ExpressionState&, duckdb::Vector&) const (this=0x5570e9cb0d00, __args=..., __args=..., __args=...) at /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/std_function.h:590 #22 0x00005570d8aa45e4 in duckdb::ExpressionExecutor::Execute (this=0x5570e9cb35b8, expr=..., state=0x5570e9cb1e80, sel=0x0, count=1, result=...) at /duckdb_spatial/duckdb/src/execution/expression_executor/execute_function.cpp:79 #23 0x00005570d8eeb866 in duckdb::ExpressionExecutor::Execute (this=0x5570e9cb35b8, expr=..., state=0x5570e9cb1e80, sel=0x0, count=1, result=...) at /duckdb_spatial/duckdb/src/execution/expression_executor.cpp:211 #24 0x00005570d8ee9204 in duckdb::ExpressionExecutor::ExecuteExpression (this=0x5570e9cb35b8, expr_idx=0, result=...) at /duckdb_spatial/duckdb/src/execution/expression_executor.cpp:105 #25 0x00005570d8ee8a1e in duckdb::ExpressionExecutor::Execute (this=0x5570e9cb35b8, input=0x5570e9cb04f0, result=...) at /duckdb_spatial/duckdb/src/execution/expression_executor.cpp:76 #26 0x00005570d8f918c5 in duckdb::ExpressionExecutor::Execute (this=0x5570e9cb35b8, input=..., result=...) at /duckdb_spatial/duckdb/src/include/duckdb/execution/expression_executor.hpp:50 #27 0x00005570db9ac0e7 in duckdb::PhysicalProjection::Execute (this=0x5570e9caea40, context=..., input=..., chunk=..., gstate=..., state_p=...) at /duckdb_spatial/duckdb/src/execution/operator/projection/physical_projection.cpp:31 #28 0x00005570d93c3c5f in duckdb::PipelineExecutor::Execute (this=0x5570e9a5e2d0, input=..., result=..., initial_idx=0) at /duckdb_spatial/duckdb/src/parallel/pipeline_executor.cpp:401 #29 0x00005570d93c017b in duckdb::PipelineExecutor::ExecutePushInternal (this=0x5570e9a5e2d0, input=..., initial_idx=0) at /duckdb_spatial/duckdb/src/parallel/pipeline_executor.cpp:208 #30 0x00005570d93c1257 in duckdb::PipelineExecutor::Execute (this=0x5570e9a5e2d0, max_chunks=50) --Type <RET> for more, q to quit, c to continue without paging-- at /duckdb_spatial/duckdb/src/parallel/pipeline_executor.cpp:154 #31 0x00005570d944e90e in duckdb::PipelineTask::ExecuteTask (this=0x7f8ab0000c30, mode=duckdb::TaskExecutionMode::PROCESS_PARTIAL) at /duckdb_spatial/duckdb/src/parallel/pipeline.cpp:39 #32 0x00005570d93a5897 in duckdb::ExecutorTask::Execute (this=0x7f8ab0000c30, mode=duckdb::TaskExecutionMode::PROCESS_PARTIAL) at /duckdb_spatial/duckdb/src/parallel/executor_task.cpp:28 #33 0x00005570d93b1d0e in duckdb::Executor::ExecuteTask (this=0x5570e9cbb600) at /duckdb_spatial/duckdb/src/parallel/executor.cpp:479 #34 0x00005570d9126ce9 in duckdb::ClientContext::ExecuteTaskInternal (this=0x5570e9ca46a0, lock=..., result=...) at /duckdb_spatial/duckdb/src/main/client_context.cpp:439 #35 0x00005570d9160c34 in duckdb::PendingQueryResult::ExecuteTaskInternal (this=0x5570e9cab630, lock=...) at /duckdb_spatial/duckdb/src/main/pending_query_result.cpp:53 #36 0x00005570d912d1d8 in duckdb::PendingQueryResult::ExecuteInternal (this=0x5570e9cab630, lock=...) at /duckdb_spatial/duckdb/src/main/pending_query_result.cpp:59 #37 0x00005570d913500f in duckdb::PendingQueryResult::Execute (this=0x5570e9cab630) at /duckdb_spatial/duckdb/src/main/pending_query_result.cpp:71 #38 0x00005570d9149b8a in duckdb::PreparedStatement::Execute (this=0x5570e9caced0, values=..., allow_stream_result=false) at /duckdb_spatial/duckdb/src/main/prepared_statement.cpp:85 #39 0x00005570d7e8ed51 in duckdb_shell_sqlite3_print_duckbox (pStmt=0x5570e9cabf40, max_rows=40, max_width=0, null_value=0x7ffd1d72baec "", columnar=0) at /duckdb_spatial/duckdb/tools/sqlite3_api_wrapper/sqlite3_api_wrapper.cpp:244 #40 0x00005570d7e4fa4d in exec_prepared_stmt (pArg=0x7ffd1d72b9d8, pStmt=0x5570e9cabf40) at /duckdb_spatial/duckdb/tools/shell/shell.c:12901 #41 0x00005570d7dddc72 in shell_exec (pArg=0x7ffd1d72b9d8, zSql=0x5570e985aa60 "SELECT ST_Distance(a2, a1), ST_Distance(a1, a2)\nFROM (SELECT ST_GeomFromText('MULTIPOINT((-2 0), EMPTY)') As a1\n,ST_GeomFromText('GEOMETRYCOLLECTION(POINT(1 0),LINESTRING(0 0,1 0))') As a2);", pzErrMsg=0x7ffd1d72ae10) at /duckdb_spatial/duckdb/tools/shell/shell.c:13236 #42 0x00005570d7e58b5e in runOneSqlLine (p=0x7ffd1d72b9d8, zSql=0x5570e985aa60 "SELECT ST_Distance(a2, a1), ST_Distance(a1, a2)\nFROM (SELECT ST_GeomFromText('MULTIPOINT((-2 0), EMPTY)') As a1\n,ST_GeomFromText('GEOMETRYCOLLECTION(POINT(1 0),LINESTRING(0 0,1 0))') As a2);", in=0x0, startline=1) at /duckdb_spatial/duckdb/tools/shell/shell.c:19654 #43 0x00005570d7ddfdf9 in process_input (p=0x7ffd1d72b9d8) at /duckdb_spatial/duckdb/tools/shell/shell.c:19772 #44 0x00005570d7db4e51 in main (argc=1, argv=0x7ffd1d72cd08) at /duckdb_spatial/duckdb/tools/shell/shell.c:20585
Version information: v0.9.2-dev209 6545a55cfe
The text was updated successfully, but these errors were encountered:
bugtracker link: duckdb/duckdb-spatial#169 fix link: 11cb971 reproduce: 9266dba
Sorry, something went wrong.
No branches or pull requests
This statement crashes duckdb spatial:
Here is the stack information:
Version information:
v0.9.2-dev209 6545a55cfe
The text was updated successfully, but these errors were encountered: