From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id 544B83858D32; Tue, 14 Mar 2023 01:47:29 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 544B83858D32 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1678758449; bh=XQfw/MhcDpCOz1RCBKWVckAinOysuMFBB5utQeWjZW0=; h=From:To:Subject:Date:In-Reply-To:References:From; b=fRAG+h7M7MpJ3vr3Do/QFwCXsKLSB9Zs5WtyeZ3iWQPkHaor4WKDE+Ij07REKWzzW deRIUnWRJml5kIK+H7IwZ1k5/kN5YMAnSoI6JimqVlbNO53m3eWgmsBj35xhP3VkjW 5a6UpOoJYFajCbePm4AXIc8V/vHAY2ju8WIS/OXg= From: "vi at endrift dot com" To: elfutils-devel@sourceware.org Subject: [Bug debuginfod/30221] Negative cache should differentiate failure types Date: Tue, 14 Mar 2023 01:47:28 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: elfutils X-Bugzilla-Component: debuginfod X-Bugzilla-Version: unspecified X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: vi at endrift dot com X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Resolution: X-Bugzilla-Priority: P2 X-Bugzilla-Assigned-To: unassigned at sourceware dot org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://sourceware.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 List-Id: https://sourceware.org/bugzilla/show_bug.cgi?id=3D30221 --- Comment #2 from Vicki Pfau --- 404 and the like *may* be transient, but the fact of the matter is that *mo= st* of the time it won't be And it's a cache, not a definitive answer saying th= is will never exist. Having a 404 cache for 10x the amount of time as a Ctrl-C would be a benefit to users 99% of the time, if not more. You don't need to overgeneralize to a surefire 100% of the time for something that's already "soft" like a cache. I'm already dealing with gdb taking well over 30 secon= ds to start running a program with a bunch of shared object dependencies that aren't in debuginfod...only to have to do that again in 10 minutes because there's no way for the cache to say "this probably won't appear in the short term." Setting cache_miss_s higher works, but is a workaround. Using an artificial timestamp to fake out the cache_miss_s expiry is a hack. There's no other way of describing it. You're trying to wedge down addition= al information to a dumber system instead of making the system smarter if you = go for that approach. Your filesystem representation works for the small, simp= le case you have here, but it won't scale if you try and extend the system with any metadata at all. You have one inode per negative cache file instead of = one entry in, e.g. a SQLite database, which you can add additional columns to. xattrs are still a bit of a kludge but at least aren't trying to spoof information to fool a system unaware of complexity existing. --=20 You are receiving this mail because: You are on the CC list for the bug.=