Feature Request P2
Status Update
Comments
al...@google.com <al...@google.com> #2
Debug console shows "E/emuglGLESv2_enc( 9261): device/generic/goldfish-opengl/system/GLESv2_enc/GL2Encoder.cpp:s_glGetUniformLocation:2206 GL error 0x502"
I suspect it is emulator related.
bw...@google.com <bw...@google.com>
me...@google.com <me...@google.com> #3
Hi,
do we have more logs? do you see a shader compilation error / program link error in previous logs?
sv...@gmail.com <sv...@gmail.com> #4
Hi, files generated with Bug Report on emulator, also a logcat when launching the app.
Description
Hello BQ devs!
Thank you for such a wonderful tool!
What you would like to accomplish:
I'd like to do
ST_INTERSECT
on more than two geographies at a time, just like it is possible to do union withST_UNION
/ST_UNION_AGG
.How this might work:
or
If applicable, reasons why alternative solutions are not sufficient:
My current workaround is a javascript UDF which is passed an array of WKT strings and computes the intersection using TURF library. However, in some edge cases here . In my case polygons have small number of nodes (around 20) and max number of polygons is about few hundreds, so explicit UDF limits are unlikely the issue here. Switching to other library does not guarantee that there will be no similar issues. So purely-BQ way to do this would be much better.
turf.intersect
throws an error. If I wrap failing call to try/catch I'm gettingResources exceeded during query execution: UDF out of memory.
, which is probably related to some V8 memory leak, likeOther information (workarounds you have tried, documentation consulted, etc):
There seem to be no way to implement reduce semantics in a single query, that is one can not repeatedly apply a function (
ST_INTERSECT
here) to elements of a sequence and an accumulator, soST_INTERSECT
function is not generalizable by means of the language itself. Solutions based onLOOP
will incur additional costs (as the table will be scanned multiple times) and are unnecessarily complicated for such a trivial task. I imagine one can generate a string with nested calls toST_INTERSECT
and run it usingEXECUTE IMMEDIATE
, but that probably has its limitations too.Cheers,
Sergey