Re: The endless influx of low-quality, low-realism, quantity-over-quality aircraft into FGAddon

Willie Fleming <[email protected]>
Newsgroups gmane.games.flightgear.devel
Message-ID <CADWaU+16BZKwv0zTzL6qpPT7tR3yWx-BOpUgYa_sgHMaXoYkpg@mail.gmail.com>
here you go......


   1. I had an attempted x0x upgrade by on my Windows laptop (daemon
   running in background), which clearly kept failing, and it would keep
   re-downloading the update, leading to a 60gb folder by the time I did the
   upgrade manually. Thankfully I caught it then, or it may have filled up my
   drive [image: 🙂] Also; glad I'm not on a metered connection [image: 😆]
   2.  [ANT],
   [10:09 PM]dirvine [ANT], :
   what was it doing? was it copying the same file to different filenames?
   Did you type x0x upgrade and what did it print out.
   3. [10:48 PM]DavidMc0 [ANT], :
   I wasn't using the computer today, but this evening had a look & saw
   there was an upgrade on the Communitas GUI. I downloaded the latest upgrade
   from Github & went to delete the old x0x folder, but when it showed it was
   a 60gb folder I thought I should check it out. In the folder there are
   1,122 folders made between 20:52 last night & 21:11 tonight. Each folder is
   54mb and labelled .x0x-upgrade-(numbers). I guess it got stuck in an
   upgrade attempt loop or something, though I didn't intentionally initiate
   an update.
   4. [10:49 PM]DavidMc0 [ANT], :
   Most of the folders have 'archive' 'archive.sig' and 'extracted-binary'
   in them.
   5.  [ANT],
   [11:00 PM]dirvine [ANT], :
   Nice catch -- Three bugs, compounding
      1. Windows can never complete the upgrade (root
      cause).Upgrader::atomic_replace (src/upgrade/mod.rs:101) does
      std::fs::rename(new_binary, target) to overwrite the currently running
      x0xd.exe. Windows locks running executables — you cannot rename or
      overwrite one in place. So the rename fails; the rollback then tries
      restore_from_backup → fs::rename(backup, target)(mod.rs:81), which also
      fails because the target is still locked → returns
CriticalFailure. On Unix
      rename over a running binary is fine, which is why this was never caught.
      The upgrade is structurally impossible on Windows as written.
   2. Every failure leaks a 54 MB temp dir. apply_upgrade_from_manifest
      (src/upgrade/apply.rs:94) creates the temp dir, then only cleans it up on
      hash mismatch (:117), signature failure (:131), or the success/rollback
      path that reaches :178. The Windows failure returns early via the? on let
      result = upgrader.perform_upgrade(...)?; at apply.rs:175 — which
skips the
      :178 cleanup entirely. The archive is already downloaded and the binary
      already extracted by then, so the full 54 MB is left on disk.
Exactly your
      folder contents.
   3. No backoff on the gossip path, so it retries forever. The 48h
      fallback poll does track failures (failed_version + 30-min skip,
      x0xd.rs:3188-3221). But the gossip-driven apply loop (x0xd.rs:3030-3167)
      has no backoff at all — it calls apply_upgrade_from_manifest on every
      manifest receipt and just logs the error (:3162). Peers rebroadcast the
      manifest every 5 minutes, and because the node never actually upgrades,
      is_newer() stays true forever. So: receive manifest → download 54 MB →
      extract → fail → leak → repeat, roughly every~77 s in your case.
Unbounded.
   Immediate guidance for the user The 60 GB of .x0x-upgrade-* folders are
   orphaned temp dirs — safe to delete. They are not part of the real install
   (you already did the manual upgrade). There's also no startup sweep that
   would ever reclaim them.
   6. [11:02 PM]dirvine [ANT], :
   Fix will be in place tonight
   7.  [ANT],
   [11:21 PM]storage_guy:
   This is a great example of the openness of this project.
   8. [11:22 PM]dirvine [ANT], :
   Fixed and tested locally now. 6 hour soak test running on another issue
   related to cpu use related to gossip queues and retries. Both should be
   complete by morning. There will be a 4 hour run tomorrow and fix in by
   lunch for both



background
DavidMc0 is a long term supporter, not fantastically technical but knows
the project and its phlosophy - has never contributed  a single line of
code yet is a well loved and  respected community member.
dirvine is our BDFL - although he would hate me saying that......


but just keep deflecting....... and continuing to ignore your core problems.

On Wed, 27 May 2026 at 14:23, <[email protected]> wrote:

> On 5/27/26 9:06 AM, Willie Fleming wrote:
> > Check
> >
> https://discord.com/channels/1209059621319221268/1247881515107483759/1508929040759787610
> > and subsequent messages for an example of how it could and SHOULD be
> done.
>
> sorry... i'm not in the habit of clicking random links... especially those
> to
> some unknown discord with no indication of what it is...
>
> > Then ask yourselves which project would I rather spend my precious free
> time
> > working on?
>
> while this may sound snarky and dismissive, it is not... the fact is that
> you
> are free to do what you like where ever you like... if that's working on
> something else, more power to you... enjoy it and have fun! seriously...
>
>
> _______________________________________________
> Flightgear-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/flightgear-devel
>


-- 
Regards
Willie Fleming

_______________________________________________
Flightgear-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/flightgear-devel
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.