From c39dcc6fe834267eb8eefb3403d1cd4dedbee32f Mon Sep 17 00:00:00 2001 From: Ahmet Guzererler Date: Wed, 25 Mar 2026 01:03:10 +0100 Subject: [PATCH] fix(supabase_client): enhance cursor method to reconnect on dropped connection --- tradingagents/agents/.DS_Store | Bin 0 -> 8196 bytes tradingagents/portfolio/supabase_client.py | 5 ++++- 2 files changed, 4 insertions(+), 1 deletion(-) create mode 100644 tradingagents/agents/.DS_Store diff --git a/tradingagents/agents/.DS_Store b/tradingagents/agents/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..438fd2d9b3cf04ea81cac46d46ead4a854bce2a3 GIT binary patch literal 8196 zcmeHMTWl0n7(U;$$P5$8v=&;BO}DIE#3e1IMG?iN+Zt}A4cpQSg>`mkfCiyd?VI1s^magn-e+XynNkOw>e-@jr8R8+v=uXlk63ob#V^ z{>#k&&;Om%f6Ev{Yu;GTSS@2rrp~FR(lA5geBP%uskl>46r|6X!%UWAUS`A_o+ce` zgb@fM5Jn)3Kp25A0&^h(bZ7G>&vNezZa9V!2qW;ni~v6$qSQG}6zRC2!O=lOPy!I; zB|y+eIaY2PTgHUHEJ{iRd1;Nuv zFB*t5Bm@n|Falu&rbmFoM`j+&GM%dTTk7|W?PiE~Av0`Sp5NGb1yWi0yxZo>^JP`u zpE~T0q^o;6psV8 zaEfcEX7bDS3Q6Ht*)F;Qj+?P0M@c9@Ex+t6;Y2zUig4MIO1i zJ?lDMIkQ0S^=4f=KjaXnGOOF!JPDgyZ98Q>BBZl9*S5P{&+;wT>F@K+V?O6`Lz7s2 z1D>1nlYy~5i|h-jD*lYlVXo}$HFF+OMR}{DrtZ!)>zeMlf9pd#J5!ezX_ZxKwYsFY zV0l)?HhV@a!#~`wds)*lEa%VwMb`1HgO-_7Dp8?yJNl4$xvF;QvOAVXB2%SHR{HW8 z>uBEck83em7SE`U#1!qEJZO-U9j?JG8UZI#A6YHS`}lq`XVNIP)wPkhqUmzCM=lE! z4eEMD^OWu*^!bHqv$|2%45i1`Go~%JHmRFsZKu*(5FU%oEowrpL|p01x8g)J`nj>KhG81y`Lf!jRgs=ZudH1n9nEqI7UevB2$A}7tdw-I#9A?peP~C6SrF)0 zqET#D3o?rv9>)_niBot6FW^PIj8||P zZ{r=D!C8EOPw*)&;&WWXclaJZ;5u&LH{8VUQiW6_)k`a+m=u@RNexn?l$6?}4r#BH zmJDe~_#u_Bm!9w|m`EpxOgmEud&2^I(wUjDSGR5Zj-9(Y<}CKERdBT3UcGopO?2hj zhUR-8Xq`w%k;0{{y%h}s04BjE06>r*Q!`hL#H;MV?n;mrR!Iyb=o|_ zkXWu-P0QN|KVo@zysl1@2)1I`xV}!+$_SK7pxY9sC5nqp_o=E@PVf}GEf3O?@e@O= zlWk;)gH8UYlKvvQ#ICY$*^iX;f1nI9Y7oUL#3{+QAVG=VhIUHyF6==H-Pn&bbYv*) zZ8#XlQRFa+F+7TKJVr_XB%Z?4cn;4~;=e?xe;Tjhb-aN$aUK`&F5biY0R+CpReXc% zQ&M{Oj|0moxf{_3K literal 0 HcmV?d00001 diff --git a/tradingagents/portfolio/supabase_client.py b/tradingagents/portfolio/supabase_client.py index 7c3aa0bc..9603d55d 100644 --- a/tradingagents/portfolio/supabase_client.py +++ b/tradingagents/portfolio/supabase_client.py @@ -94,7 +94,10 @@ class SupabaseClient: cls._instance = None def _cursor(self): - """Return a RealDictCursor.""" + """Return a RealDictCursor, reconnecting if the connection was dropped.""" + if self._conn.closed: + self._conn = psycopg2.connect(self._dsn) + self._conn.autocommit = True return self._conn.cursor(cursor_factory=psycopg2.extras.RealDictCursor) # ------------------------------------------------------------------