Hi, Apologies for the "name only" in the "from" field. I switched email clients between sending this and it wasn't properly configured. It should now show the full name.
Best, Alex On 3 October 2024 04:57:10 BST, Alex <alexhans....@gmail.com> wrote: >Hi Pavan, > >Cool AIP! I posted a discussion yesterday >(https://github.com/apache/airflow/discussions/42645) to get feedback on >a Periodic[Callback]Trigger that would run callbacks recurrently with >custom sensors in mind and thought it could be expanded into essentially >what you've envisioned with a "deferrable base sensor". > >Personally, I'm quite interested in supporting a rich fixed time or >backoff rate configurable behavior so that custom sensors may benefit >from enabling deferrable while not having to implement triggers and only >configuring the "wait" strategy. > >A few opinions on the proposal: > >- In my code test >( >https://github.com/Alexhans/airflow/commit/57a0383d8a2e3a4332c79bcac3df100bde777472), > >because I didn't really need the context, I used the same serialization >tool that is used for the classpath: `from airflow.utils.module_loading >import import_string` but I understand the base sensor usecase would >need the context. Is it possible that the serialization logic already >in `airflow.utils.context.py::Context.__reduce_ex__` ? > >- A consistent behavior where every operator implements >deferrable=True/False seems desirable to me. Having just one sensor >(The same way operators do it, see AWS provided operators or my code) >makes it easier to reason about and code changes for the user would be >just at an argument level. I know mode=reschedule|poke seems to >conflict with deferrable=True but limiting the incompatible combinations >should be simple enough. > >@Blain David: Thanks for that msgraph example. The usage of >TimeDeltaTrigger in combination with retry_execute is very elegant. > >I'm happy to help in any way. > >Best, > >Alex > >On 2024/09/27 07:51:51 Pavankumar Gopidesu wrote: > > Thank you David, Yes this is not to block any workers. Looking for more > > feedback. appreciate your time. > > > > Regards, > > Pavan > > > > On Thu, Sep 26, 2024, 11:26 Blain David <da...@infrabel.be> wrote: > > > > > Hello Pavan Kumar, > > > > > > I really like your proposition as this would have facilitated my > > > implementation of the MSGraphSensor, which is actually implemented as a > > > deferrable using a triggerer. > > > > > > You can check here how I did it: > > > >https://github.com/apache/airflow/blob/main/airflow/providers/microsoft/azure/sensors/msgraph.py > > > > > > The idea was the same as in your proposition to not block workers when > > > using a sensor by implementing it as a deferrable. > > > > > > Kind regards, > > > David > > > > > > -----Original Message----- > > > From: Pavankumar Gopidesu <go...@gmail.com> > > > Sent: Thursday, September 26, 2024 11:01 AM > > > To: dev@airflow.apache.org > > > Subject: Re: [DISCUSS] Sensor Improvements With Tirggers > > > > > > EXTERNAL MAIL: Indien je de afzender van deze e-mail niet kent en deze > > > niet vertrouwt, klik niet op een link of open geen bijlages. Bij >twijfel, > > > stuur deze e-mail als bijlage naar ab...@infrabel.be<mailto: > > > ab...@infrabel.be>. > > > > > > Hello Everyone, > > > > > > After discussion on the slack channel, I have decided to retain the > > > current synchronous sensor to offer users the choice to execute >sensors on > > > workers. > > > I have revised the proposal to introduce a new asynchronous version >of the > > > sensor, eliminating the need for workers to run sensors. Additional >details > > > have been included below. Your review and feedback are greatly >appreciated. > > > I am eager to hear from you. > > > > > > > > > >https://cwiki.apache.org/confluence/display/AIRFLOW/AIP+87%3A+Run+Sensors+in+Triggerer+with+AsyncBaseSensor > > > > > > > > > > > > Regards, > > > Pavan Kumar > > > > > > > > > On Wed, Aug 14, 2024 at 11:48 PM Pavankumar Gopidesu < > > > gopidesupa...@gmail.com> wrote: > > > > > > > Hi Wei Lee, > > > > > > > > Thanks for the review, While I was working on the POC , I had a >bit of > > > > confusion about how to use the logic present inside the sensor >execute > > > > method. for both with and without triggerer flow. > > > > so to make it work for both flows, I have moved out to execute logic > > > > with two methods. > > > > > > > > I appreciate the idea of a simple helper function, I'm eager to hear > > > > any suggestions you might have or anyone :). > > > > > > > > Regards, > > > > Pavan Kumar > > > > > > > > On Wed, Aug 14, 2024 at 12:16 PM Wei Lee <we...@gmail.com> wrote: > > > > > > > >> Thank you for bringing this up! I have added some comments to the > > > >> document. I'm unsure if we really want or need to implement more > > > >> complex logic for this. What I have in mind is simply adding helper > > > >> functions to InternalSensorTrigger and continuing to use the run >method > > > in BaseTrigger. > > > >> The main purpose of those methods is to allow operator authors to > > > >> change the sensors to leverage this start/end from trigger more >easily. > > > >> > > > >> Best, > > > >> Wei > > > >> > > > >> > On Aug 14, 2024, at 5:19 PM, Pavankumar Gopidesu < > > > >> gopidesupa...@gmail.com> wrote: > > > >> > > > > >> > Hi Jarek, > > > >> > > > > >> > Thanks for the questions :) , > > > >> > > > > >> > I completely agree with you , from 2.10 we have the > > > >> > start_from_trigger parameter, which , when set , allows a task to > > > >> > be executed directly from the triggerrer without worker > > > >> > involvement. I believe that for any sensor to be executed in the > > > >> > triggerer, a corresponding trigger implementation must be in >place. > > > >> > Good thing is , most of the required trigger implementations are > > > >> > already available in current airflow providers. > > > >> > > > > >> > Additionally, i agree that there is no real difference between a > > > >> deferrable > > > >> > sensor and a deferrable operator, > > > >> > generally , users utilize the BaseSensorOperator to create custom > > > >> sensors, > > > >> > However if they want to run > > > >> > these sensors in triggerer, they must implement the >triggerer's run > > > >> method > > > >> > by extending the base trigger class. > > > >> > > > > >> > The key difference with this proposal is the introduction of a > > > >> > common trigger implementation (referred to in this POC as > > > >> > InternalSensorTrigger )[1]. This would allow users to use the new > > > >> > feature start_from_trigger param with their custom sensor and > > > >> > eliminates the need for individual trigger implementations for >each > > > >> > custom sensor when they create. > > > >> > > > > >> > Alternatively, we could leave the start_from_trigger parameter in > > > >> > BaseSensorOperator with a default value as false and let users > > > >> > decide whether they want to run the sensor > > > >> in > > > >> > triggerrer. If they choose to do so, they can simply set the > > > >> > parameter to true and triggerrer uses the InternalSensorTrigger > > > >> > class. > > > >> > > > > >> > Apologies if my answer is too confusing :) > > > >> > > > > >> > [1]: > > > >> > > > > >> https://git/ > > > >> >hub.com%2Fapache%2Fairflow%2Fpull%2F41355%2Ffiles%23diff-7486f32e385d > > > >> >7ad0376cccda08d80e54939aa901a24616d11fb1f5cba6af7f83R144&data=05%7C02 > > > >> >%7Cdavid.blain%40infrabel.be%7Ce13a7cc2a5fd4807701e08dcde09ebc7%7Cb82 > > > >> >bc314ab8e4d6fb18946f02e1f27f2%7C0%7C0%7C638629381398366280%7CUnknown% > > > >> >7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJ > > > >> >XVCI6Mn0%3D%7C0%7C%7C%7C&sdata=3wwm43IOv4KUwciQatVOM5CKRmwYn4HBsiBZEM > > > >> p2jvI%3D&reserved=0 > > > >> > > > > >> > Regards, > > > >> > Pavan Kumar > > > >> > > > > >> > On Wed, Aug 14, 2024 at 12:29 AM Jarek Potiuk <ja...@potiuk.com> > > > wrote: > > > >> > > > > >> >> How does it differ from the upcoming 2.10 feature? > > > >> >> > > > >> >> * Deferrable operators can now execute directly from the >triggerer > > > >> without > > > >> >> needing to go through the worker. This is especially >efficient for > > > >> certain > > > >> >> operators, like sensors, and can help teams save both time >and money. > > > >> >> > > > >> >> As of 2.10 - Sensors already can run mostly in Triggerrer and > > > >> >> basically there is no big difference any more between deferrable > > > >> >> sensor and deferrable operator. > > > >> >> > > > >> >> > > > >> >> On Mon, Aug 12, 2024 at 3:59 AM Kaxil Naik <ka...@gmail.com> > > > >> wrote: > > > >> >> > > > >> >>> Thanks for putting this together, I will take a look this week. > > > >> >>> > > > >> >>> On Fri, 9 Aug 2024 at 13:12, Pavankumar Gopidesu < > > > >> >> gopidesupa...@gmail.com> > > > >> >>> wrote: > > > >> >>> > > > >> >>>> Hi All, > > > >> >>>> > > > >> >>>> I have created a draft document for Sensor Improvements using > > > >> triggers. > > > >> >>>> > > > >> >>>> Details: > > > >> >>>> > > > >> >>>> > > > >> >>> > > > >> >> > > > >> https://doc/ > > > >> >s.google.com%2Fdocument%2Fd%2F1Kb_wL-T1DHkOpmR_QNa3O5p_2hMTLzM-sb_HzQ > > > >> >0PYCo%2Fedit%3Fusp%3Dsharing&data=05%7C02%7Cdavid.blain%40infrabel.be > > > >> >%7Ce13a7cc2a5fd4807701e08dcde09ebc7%7Cb82bc314ab8e4d6fb18946f02e1f27f > > > >> >2%7C0%7C0%7C638629381398384359%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLj > > > >> >AwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C0%7C%7C%7C&sda > > > >> ta=ve%2FbzO8Vqe8K5yKdMVVsnAmD6zPl0gh7WyBrO6IeKjw%3D&reserved=0 > > > >> >>>> > > > >> >>>> POC: > > > >> >>>> > > > >> >>>> >https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%25 > > > >> >>>> >2Fgithub.com%2Fapache%2Fairflow%2Fpull%2F41355&data=05%7C02%7Cda > > > >> >>>> >vid.blain%40infrabel.be%7Ce13a7cc2a5fd4807701e08dcde09ebc7%7Cb82 > > > >> >>>> >bc314ab8e4d6fb18946f02e1f27f2%7C0%7C0%7C638629381398402033%7CUnk > > > >> >>>> >nown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6I > > > >> >>>> >k1haWwiLCJXVCI6Mn0%3D%7C0%7C%7C%7C&sdata=sYLKcAYQsysHC2%2FPsyV9m > > > >> >>>> Ze%2BWu%2BL2HyJ0SlPulVIvEg%3D&reserved=0 > > > >> >>>> > > > >> >>>> This is my first draft post, apologies if any mistakes in the > > > >> >> document. I > > > >> >>>> would greatly appreciate your insights and suggestions on >draft. > > > >> >>>> > > > >> >>>> Thank you very much for your time. > > > >> >>>> > > > >> >>>> Regards, > > > >> >>>> Pavan > > > >> >>>> > > > >> >>> > > > >> >> > > > >> > > > >> > > > >> >--------------------------------------------------------------------- > > > >> To unsubscribe, e-mail: dev-unsubscr...@airflow.apache.org > > > >> For additional commands, e-mail: dev-h...@airflow.apache.org > > > >> > > > >> > > > > >