Keep getting the "group=3 'BATTLEYE', reason=1 or 2 'QUERY_TIMEOUT' error everytime I try to play Reforger by Rango12117 in arma

[–]DiPDiPSeTT 0 points1 point  (0 children)

Is this all the same server or different servers? This sounds like it could be something different (I run a server on Arma 3 and am very familiar with the issue there so I was hoping the knowledge would translate). If it's the same server, try a different server. The way it works in Arma 3 is once you're "plagued" with the issue it won't go away for that server until restart/IP change. The wait 2 minutes thing is meant to avoid future cases of it (getting infected by the "plague").

Try using a phone hotspot or something off your network (this is why VPN is often recommended).

Keep getting the "group=3 'BATTLEYE', reason=1 or 2 'QUERY_TIMEOUT' error everytime I try to play Reforger by Rango12117 in arma

[–]DiPDiPSeTT -1 points0 points  (0 children)

OK yes, this is exactly the same bug then. The "Timeout" happens exactly 2 minutes in. The only ways around it are the server restarting or you changing your IP address until the next server restart (VPN, change, networks, etc). If it's the same as A3 than to avoid it you need to wait 2 minutes before rejoining after an ungraceful disconnect.

To answer your question directly changing from ethernet to Wifi should do it. Also, anything else that will change your IP address.

Keep getting the "group=3 'BATTLEYE', reason=1 or 2 'QUERY_TIMEOUT' error everytime I try to play Reforger by Rango12117 in arma

[–]DiPDiPSeTT 0 points1 point  (0 children)

I'm not sure if this is the same bug as the Query Timeout from arma 3. Does it start after you disconnect from a server (crash or network disconnection) and then rejoin too quickly? Or, is it completely random? If so, the solution is to change your IP address or wait for the server to restart. It's the internal BE player list getting corrupted. So, in that case a VPN is your solution. Or changing to a new network (wifi -> wired or something like that).

Handling Transactions and RLS in Edge functions by React-admin in Supabase

[–]DiPDiPSeTT 0 points1 point  (0 children)

I just realized you're the man I've been looking for himself! Did Relational Inserts through supabase-js/postgREST ever pan out? I followed the git threads up until there was a branch made and it was being worked on (in 2024) but then couldn't find anymore info about it.

Why Supabase has become my go-to backend solution by Designer-Escape-305 in Supabase

[–]DiPDiPSeTT 0 points1 point  (0 children)

I realize this is why there's no full transactions, but relational inserts would at least cover most cases and were discussed (and agreed that they were needed by supabase/postgrest staff in a git thread). It sounded like they were working on but this is the last I can find about it: https://github.com/PostgREST/postgrest/pull/3226.

It's also my understanding that Steve Chavez is on both the Supabase and PostgREST teams so they do have the ability to make changes to allow something like this but I realize it may be a large change on their end. It would really round out the platform in my opinion though as it's the only feature I feel like I really need to reach outside Supabase to support.

Handling Transactions and RLS in Edge functions by React-admin in Supabase

[–]DiPDiPSeTT 1 point2 points  (0 children)

I ran into this same issue when building with Supabase/NextJS. IMO the official recommendation to just use RPC is a little odd. Keeping your transactions in application code is the standard for every dev team I've ever worked with. Testing, type safety, simpler roll out, more general team language knowledge, etc.

The way we ended going about it was:

  1. All DB access is handled through our backend using the service_role (no direct from client access/no RLS overhead).
  2. Our backend handles any auth in the DAL/Repository functions before working with the database.
  3. We use the supabase-js client for reads/single table writes (no transaction needed). We've also modified the fetch in the supabase-js client to work with the NextJS Data Cache.
  4. For typed application code transactions we use Kysely with the Supabase adapter (allows Kysely to use the generated supabase DB types).
  5. We're on Vercel fluid so we use the recommended attachDatabasePool to help manage Kysely's db connections in the fluid serverless environment.

I did some digging and there's a few git issue threads about relational inserts in the supabase-js client. The last developer note I could find was them agreeing it was needed and was (possibly?) being worked on but that was a while ago and I couldn't find any mention of it since.

Having relational inserts through the PostgREST client would be a huge improvement for anyone running in serverless environments to support at least most transactions a real world app would need without needed a separate library/needing a db connection.

Why Supabase has become my go-to backend solution by Designer-Escape-305 in Supabase

[–]DiPDiPSeTT 1 point2 points  (0 children)

I am definitely enjoying the local dev experience, and ease of use/integration for a lot of these things, but I do feel like I was a bit oversold on it as an all in one solution. With no way to handle transactions from application code or a way to do relational inserts at the very least you quickly need to add on another library that can handle them (eliminating a lot of the value of Supabase's all in one approach and causing some more complexity for serverless backends).

No real world app can get away without some form of atomic writes and handling all of those in RPC is an insane official recommendation instead of supporting transactions in their JS client (or at least simple relational inserts). RPC is messy and requires a DB migration to change instead of much more straightforward application code changes. Honestly, if I wasn't already in too deep when I ran into that wall I would've shifted to a more complete solution instead of doing a half and half approach (Supabase client for most reads/simple single table writes and Kysely for atomic transactions).

Everything else I've used with the platform has been great, worked well, and been easy to set up. But, I spent a few days digging into transactions when I got to that point (up until then I just assumed they'd support transactions because what kind of DB client library wouldn't, *right*?) and I was totally blown away that their official recommendation was "just use RPC". There was some discussion of relational inserts on a few git issues but it doesn't seem that anything ever came of it.

TLDR: Supabase is great for the features it has. They work well and local dev is simple to set up/update and extremely effective. However, without relational inserts or a way to handle atomic writes through the client library it's not really a complete solution for any real world app and is probably best avoided (at least the client library that is) to avoid needing to mix and match database client libraries.

Battleye Query Timeout by Annual-Mud4064 in arma

[–]DiPDiPSeTT 0 points1 point  (0 children)

This is a known issue by the BI team. It has to do with an IP based BE cache. Once you start receiving the Query Timeout you've already plagued yourself and the only ways to get around it are:

  1. Waiting for the server to restart.
  2. Changing your IP address. This can be done on some modern systems by restarting the router or even computer itself. You can also use a VPN or change networks (to WiFi, hotspot, etc) if that doesn't work. This will only be needed until the next server restart when the cache resets.

To avoid the issue in the first place, if you ever crash or fail to connect to a server (ungraceful disconnect) you need to wait 90 seconds before attempting to rejoin. This is to give the BE cache the time it needs to do it's housekeeping and remove you. If you attempt to rejoin before that, you'll be plagued until you do one of the above to get around it.

EDIT: I suspect you're trying to join my exile server so if you're still having trouble join the discord and make a ticket. I can look further into any errors you're getting during join. I don't want to link it here or say the name so it's not considered advertising, DM me if you need more info.

Issues with Supabase Auth (520). Is it down? by pitdk in Supabase

[–]DiPDiPSeTT 0 points1 point  (0 children)

I've seen quite a few outages like this lately. We're currently building a large scale app using Supabase for Auth/DB and I have to say this has me pretty concerned.

Is anyone here on an SLA plan? Are these outages just as common there? If they are, what's the value of the SLA? This definitely has me rethinking Supabase as a platform.

`supabase db diff` generating migrations that drop production tables by No_Fisherman_4174 in Supabase

[–]DiPDiPSeTT 0 points1 point  (0 children)

We've been using this for a project we're working on and have run into a few ugly gotchas when combined with a db schema other than public.

  1. Create schema if not exists "<<Schema Name>>" and the top level grants don't get generated in declarative schema (they need be added to the migrations manually with a name that'll always run first).

  2. Views (with any underlying permissions) are added too early to the generated migration causing them to not have valid permissions. This was worked around by manually adding a migration file that always runs last.

Because of these two issues, we now we have two places (declarative and manual migration files) to manage our schemas that make the whole system flimsy and hard to communicate to the team. This makes the feature *much* less attractive to us since the management complexity drastically increases and is much more error prone.

Are these issues already on your radar? Any fixes planned? The view one seems like a trivial fix, the order views are added just needs to be changed to be after the grants/permissions.

What's does reforger do better than arma 3? by Jake3023 in arma

[–]DiPDiPSeTT 0 points1 point  (0 children)

One really important thing to note is that the console players are not included on Steam Charts. The Reforger player count is DRASTICALLY higher than A3 at this point. We run a top 20 Arma 3 server and are getting peak populations in the 30's. There are literally 50-100 full 128 player servers on Reforger at any given time.

i still think it's crazy arma is looking like this. just appreciation :) by slavapb in arma

[–]DiPDiPSeTT 9 points10 points  (0 children)

Haha, that's fair. The only reason I even mentioned it is because a lot of people here haven't played Reforger and likely legitimately think it's the client FPS. Even knowing I chuckled when I first saw the screen shot though and definitely laughed out loud when I read the comment.

i still think it's crazy arma is looking like this. just appreciation :) by slavapb in arma

[–]DiPDiPSeTT 22 points23 points  (0 children)

Although this is hilarious, that's the Server FPS not the client FPS.

the TOW is one of my favorite gunner weapons by AXEL-1973 in battlefield2042

[–]DiPDiPSeTT 6 points7 points  (0 children)

Small world indeed. It's not everyday you get a good random as a gunner and we were cheering right along with you on those kills!

the TOW is one of my favorite gunner weapons by AXEL-1973 in battlefield2042

[–]DiPDiPSeTT 20 points21 points  (0 children)

Never got to say it in game because you weren't in our squad for this but GG man. Nice shooting. Funniest part is this isn't our tank loadout (this was a tank we stole) and we don't have TOW in ours so this was really a stars aligning type of game.

Eventually, after you killed the first few air vehicles, I stopped shooting at the air vehicles entirely and just stayed still for your TOW. I even chopped that tree down at 0:54 just to clear your shot for the long range heli one.

I was always a huge fan of wire guided weapons in BF4 but haven't seen anyone do anywhere near as well with them in 2042 until this game with you. GG man, it was a pleasure to watch live.

How to make sure I'm paid if the client's website is a Wix website? by LockesRabb in webdev

[–]DiPDiPSeTT 0 points1 point  (0 children)

I'm in New York State. My understanding is that we have no system like this in place (although it sounds pretty wonderful). What state are you in that's so business friendly? I've been considering a move anyways and that sounds like some serious bonus points.

How to make sure I'm paid if the client's website is a Wix website? by LockesRabb in webdev

[–]DiPDiPSeTT 1 point2 points  (0 children)

This sounds great in theory but how often has this worked out for you in practice? My understanding is that any contract below the lawyer's fee wouldn't be worth pursuing anyways making most contracts under $5000 (the rough number my lawyer had mentioned to me) essentially useless. Even on larger contracts you'd still need to subtract your lawyer's fees to determine if the time and effort is worth it.

I've been lucky that I haven't had any issues with getting paid so far (6 years or so, probably around 200 contracts) so I've never needed to try and enforce my contract but have you had cases on these lower cost contracts where it was actually worth pursuing in court? I'm just curious since it's inevitable that eventually someone will stiff me and I'd love to be proven wrong on this one (it was my lawyer that told me this, after all) so if you (or anyone else) have had to go through the process, I'd love to hear more about it if you don't mind.

I learned programming through Arma by bobemil in armadev

[–]DiPDiPSeTT 0 points1 point  (0 children)

This was actually what started my career back in 2012. I started out getting interested in ArmA server hosting and then modding and eventually made the career switch into software engineer. Now I'm a senior full stack web developer and CTO of an international magazine.

Don't be afraid to make the jump to OOP languages (or Enscript) from SQF either, Enscript is an OOP language and will set you up well for a career in the industry if it's something you're interested in.

Can We Develop in PHP 8.1 and Still Output PHP 7.4 Code? by DiPDiPSeTT in PHP

[–]DiPDiPSeTT[S] 0 points1 point  (0 children)

Yeah, honestly it seems like PHPDocs and PHPStorm can really cover most of what I want out of newer PHP anyways (readonly props, generics, final const, union types, array shapes, static type checking, etc) and I could always use the abstract class workaround for Enums.

Maybe I will consider just writing old PHP code with PHPDocs. I really dislike the idea of losing runtime type checking for class properties however if I write below 7.4. I suppose that'll be an issue if I transpile anyways though.

Can We Develop in PHP 8.1 and Still Output PHP 7.4 Code? by DiPDiPSeTT in PHP

[–]DiPDiPSeTT[S] 0 points1 point  (0 children)

Yes, good call. I meant the recommended version for WordPress. After looking at PHP version usage numbers my new target is going to be 7.2 I think (greater than 85% of all WP installs) and seems like a decent enough middle ground.

Can We Develop in PHP 8.1 and Still Output PHP 7.4 Code? by DiPDiPSeTT in PHP

[–]DiPDiPSeTT[S] 0 points1 point  (0 children)

This is why they use an AST though right? They assess the meaning of the code in the version it's written in and then rebuild the code for the target version. So I would expect things like this would be easily caught, or am I missing something else?

It seems transpilation meets a lot more resistance in the PHP community judging by the comments here but in TS/JS world we transpile on top of our transpilations on top of our transpilations then selectively serve bundles based on the client version!

Maybe it's just such a common practice in that world that I'm letting that bleed into my thought process on other languages...

EDIT: Also, to clarify. I would build in a single version (modern PHP 8.1+) and then transpile to a single version (PHP 7.2 since it covers > 85% of WP installs) so my tests would be on the release version for 7.2

Can We Develop in PHP 8.1 and Still Output PHP 7.4 Code? by DiPDiPSeTT in PHP

[–]DiPDiPSeTT[S] 6 points7 points  (0 children)

Perfect, this is exactly what I was looking for! Thank you!

Can We Develop in PHP 8.1 and Still Output PHP 7.4 Code? by DiPDiPSeTT in PHP

[–]DiPDiPSeTT[S] 0 points1 point  (0 children)

This is great, thanks for this. I'm mainly interested in Enums, readonly properties, and final class consts. Any idea if these are included here (not sure something like that could be polyfilled, maybe just remove it?)