Can you please log a bug? Describe symptoms, not what’s happening in the code.

(I don’t remember what “derive” is, even though I probably wrote it.)

Log the bug before you have a solution, and you’ll write a better bug.

> On Mar 15, 2021, at 6:08 AM, Konstantin Orlov <[email protected]> wrote:
> 
> Hi all!
> 
> I did a reproducer for mentioned case, and possible fix (at least it fixes 
> this particular problem). [1]
> 
> Could someone verify please is provided reproducer/fix valid?
> 
> [1] 
> https://github.com/korlov42/calcite/commit/f4a5c2f01e0ec67156f7e91c6b5839dca1db6776
>  
> <https://github.com/korlov42/calcite/commit/f4a5c2f01e0ec67156f7e91c6b5839dca1db6776>
> 
> -- 
> Regards,
> Konstantin Orlov
> 
> 
> 
> 
>> On 5 Mar 2021, at 19:53, Konstantin Orlov <[email protected]> wrote:
>> 
>> Hi, folks!
>> 
>> I am facing the problem that derive is not being called for some newly 
>> created relations. 
>> 
>> We have a several join algorithms, so we implemented a several physical 
>> nodes. During an optimization process they all are created from a logical 
>> join with default distribution trait and then they are converted to a single 
>> distribution by a passThrough call. But derive is invoked only for the first 
>> physical rel, because others relations after conversion from a logical rel 
>> are added to the already optimized subset (subset.taskState == OPTIMIZED).
>> 
>> A derive invocation is important for us, because we create a different 
>> variations of distribution here (like colocated join, sending one side to 
>> another or full rehashing).
>> 
>> So the questions are:
>> 1) Is it a bug or it so by design?
>> 2) if this was done on purpose, how can we best get around this limitation?
>> 
>> Thanks in advance!
>> 
>> -- 
>> Regards,
>> Konstantin Orlov
>> 
>> 
> 

Reply via email to