I can't see a way to make the trap be any less garbage than it is because the 4" flanged tailpipe (the shortest flanged 1-1/4" tailpipe I could find) plus an additional 8" of tailpipe underneath it (the only 1-1/4" branch tailpipe I could find, which is only available with a slip fitting) means that the bottom of the lower tailpipe is super low. It looks like I left an extra 6" of flexible pipe on the drain side for fun, but that's just the rigid bottom of the tailpipe plus the minimum bend radius without making the flexible pipe start to crimp -- the bottom of the tailpipe is like 1-1/2" below the black plastic retainer clip.
- Queries
- All Stories
- Search
- Advanced Search
- Transactions
- Transaction Logs
All Stories
Nov 3 2022
A few more thoughts:
Since there's no fresh water supply to the dehumidifier I don't think there's much benefit to an air gap, as there's no way backflow could ever contaminate a supply line. A clogged sink drain could possibly drain sink water out through the dehumidifier bucket, but the top of the drain line is only ~1"-2" below the top of the sink so it would overflow the basin onto the floor before very long anyway.
My terminology might be wrong throughout this but a couple thoughts:
Oct 26 2022
Other options I explored and rejected:
- Inline Comments: See PHI2217. See PHI2206. Inline comments don't currently attach images.
- Destroying Edges: See PHI2201. See PHI2217. Destroying files that have old edge types may raise warnings. The destruction still works, although it doesn't hit the edges.
- Destroying Files: See PHI2217. Destroying an object doesn't destroy corresponding FileAttachment objects, so you can end up with ghosts in the UI.
There are some remaining non-security bugs with this that I'll follow up on in T13682. I believe the security side of this is now resolved.
The details of this attack will be disclosed at a later date, once installs have had some sort of plausible chance to upgrade.
An earlier patch here (rCORE6d6170f76463) swapped binlogs to MIXED and set a 24-hour retention policy. This issue has not reoccurred in the cluster since that patch went out, but the root causes remain unresolved.
I filed T13687 as a followup for preventing this particular sort of error (where a Phobject is incorrectly serialized directly).
I patched and partially deployed this in early August. Another unattended MySQL upgrade went out on Monday night, also didn't restart MySQL on affected hosts, and caused some downtime on hosts that didn't have the patch (to "disable unattended upgrades"). I've now deployed this everywhere, and am presuming this is fixed until evidence arises to the contrary.
Oct 25 2022
Aug 8 2022
| Feature | Dimension |
|---|---|
| Barrel | 6.8mm |
| Divot Size | 2.5mm H x 1.15mm W x 1.6mm D |
| Divot Distance | 7mm |
| Shaft | ~3mm |
Aug 1 2022
Jul 29 2022
Jul 8 2022
That's very likely the same problem, and I think it should be fixed by updating to the current stable (rPf2a7db1 or newer).
I believe we may be hitting either the problem one of the above commit fixes, or suffering from a similar caused as side-effect from it.
Jun 14 2022
...ideally this sort of thing should fail loudly at serialization time...
Jun 13 2022
- The drydock_resource table could use a (status, ...) key to satisfy common/default queries.
Jun 9 2022
Jun 7 2022
Jun 3 2022
May 28 2022
May 27 2022
May 26 2022
After recent changes, only DifferentialRevision and ManiphestTask still have onboard mail keys.
May 25 2022
"PhabricatorApplicationTransactionCommentView->setDraft()" has exactly two callers: one in Slowvote...
May 24 2022
May 23 2022
May 20 2022
May 19 2022
Resolved by D21824.
May 17 2022
Thank you!
In T13588#256950, @cspeckmim wrote:A user just ran into this exception with Arcanist...
A user just ran into this exception with Arcanist (current master changeset) while running arc diff (using Mercurial) with PHP 8.1. I haven't looked too in depth but it seems similar to other PHP 8.1 issues.
[2022-05-17 20:49:47] EXCEPTION: (RuntimeException) substr(): Passing null to parameter #1 ($string) of type string is deprecated at [<arcanist>/src/error/PhutilErrorHandler.php:261] arcanist(head=master, ref.master=3cc486d5c156) #0 PhutilErrorHandler::handleError(integer, string, string, integer) #1 substr(NULL, integer, integer) called at [<arcanist>/src/repository/api/ArcanistRepositoryAPI.php:807] #2 ArcanistRepositoryAPI::getDisplayHash(NULL) called at [<arcanist>/src/repository/marker/ArcanistRepositoryMarkerQuery.php:67] #3 ArcanistRepositoryMarkerQuery::execute() called at [<arcanist>/src/repository/query/ArcanistRepositoryQuery.php:20] #4 ArcanistRepositoryQuery::executeOne() called at [<arcanist>/src/repository/api/ArcanistMercurialAPI.php:988] #5 ArcanistMercurialAPI::getActiveBookmark() called at [<arcanist>/src/workflow/ArcanistDiffWorkflow.php:2253] #6 ArcanistDiffWorkflow::buildDiffSpecification() called at [<arcanist>/src/workflow/ArcanistDiffWorkflow.php:380] #7 ArcanistDiffWorkflow::run() called at [<arcanist>/scripts/arcanist.php:427] <<< [1] (+8,567) <exec> 8,567,426 us
May 16 2022
May 12 2022
May 10 2022
I am pretty sure that this error message does not exist prior to PHP 8.1, and PHP 7.4 can not possibly emit it. See here for some evidence that this is true -- note that the error message is not present in the script output until PHP 8.1:
Trying to fresh install using PHP 7.4 or PHP 8.1, have the same result when executing:
- ./bin/config set phd.user root
[2022-05-10 02:01:12] EXCEPTION: (RuntimeException) strlen(): Passing null to parameter #1 ($string) of type string is deprecated at [<arcanist>/src/error/PhutilErrorHandler.php:261] arcanist(head=master, ref.master=fc5b228db537), phabricator(head=master, ref.master=698ada2470b1) #0 PhutilErrorHandler::handleError(integer, string, string, integer) called at [<phabricator>/src/infrastructure/env/PhabricatorEnv.php:128] #1 PhabricatorEnv::initializeCommonEnvironment(boolean) called at [<phabricator>/src/infrastructure/env/PhabricatorEnv.php:75] #2 PhabricatorEnv::initializeScriptEnvironment(boolean) called at [<phabricator>/scripts/init/lib.php:26] #3 init_phabricator_script(array) called at [<phabricator>/scripts/init/init-setup.php:11] #4 require_once(string) called at [<phabricator>/scripts/setup/manage_config.php:5]
May 9 2022
There may be additional work here, but presuming this is more or less resolved until evidence to the contrary arises.
I believe D21811 covers this completely.
May 5 2022
When this mechanism is removed (by commenting out the logic that cares about the 25% limit), we'd expect Drydock to build 8 resources at a time (limited by number of taskmasters). It actually builds ~1-4...
We may fopen() an additional stdout and/or stderr handle, but do not fclose() it?
I am suspicious that D21794 may have broken something subtle with unix magic, since I'm seeing some hangs out of deployment scripts wrapping daemon management scripts. I think the issue is probably one of:
May 4 2022
The outline above isn't quite sufficient because when the active resource list is nonempty, we don't actually reach the "new allocation" logic. Broadly, executeAllocator() is kind of wonky and needs some additional restructuring to cover both the D19762 case ("allocate up to the resource limit before reusing resources") and the normal set of cases. The proper logic is something like:
This issue partially reproduces (consistent with the original report, not immediately consistent with my theorizing about a root cause in PHI2177 -- actually, looks like both parts are right, see below): Drydock builds ~1 working copy per minute serially until it reaches a pool size of 5 resources. Then, it begins allocating 2 simultaneous resources.
What options exist for inter-process communication?
Here's how I'm thinking about overengineering this:
May 3 2022
This was resolved as part of T13630. I didn't actually put it in the UI anywhere, but all requests will now originate from 13.56.71.101, and this isn't likely to change given the wind-down of Phacility hosting.