Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
Sesse__
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
46 ms
·
781.
▲
by
Sesse__
3y ago
And even for 56kbps, you need to have the ISP end talk digitally to the telco, so that you don't get the noise (including from the DAC) of the local loop on the ISP end. That's really what pushes the SNR far enough down to make it
782.
▲
by
Sesse__
3y ago
Win8 (and Win8.1) also had the same reception. People were, of course, more than happy to move to Win10, which contained most of the under-the-hood improvements from Win8 and had a more traditional UI. (Also, with Vista → 7, it didn't
783.
▲
by
Sesse__
3y ago
Windows implements fd_set as an array. https://learn.microsoft.com/en-us/windows/win32/api/winsock/...
784.
▲
by
Sesse__
3y ago
The dataset here is 17 TB+, so HDD storage is the only thing that's economically viable, especially for a service hosted as a hobby. :-) It doesn't really help that they DoS themselves, they still do it. (After I limited connectio
785.
▲
by
Sesse__
3y ago
There's already a variant of this from the receiver side, the so-called “download accelerators”. I've seen some of those literally open hundreds of connections for the same file until the server was full (hit its MaxServers limit)
786.
▲
by
Sesse__
3y ago
You can use wee-slack if you wish. It has an active maintainer and a fairly large user base.
787.
▲
by
Sesse__
3y ago
In Postgres, run: select proname from pg_catalog.pg_proc where provolatile='v';
788.
▲
by
Sesse__
3y ago
RANDOM() isn't in the spec at all, which is one of the reasons why the spec doesn't have to worry about such functions. It's just an extension that a bunch of databases happen to implement in similar ways.
789.
▲
by
Sesse__
3y ago
Yes, and there's _still_ not 1080p everywhere! There was a talk on Demuxed 2023 _yesterday_, where the last sentence in the abstract is: “720p real-time AV1 software playback on the large majority of Android devices out in the wild is
790.
▲
by
Sesse__
3y ago
> Why only 4 threads? My phone from 2020 has 8 cores/8 threads and a 720p screen Of which half of them are small cores (Cortex-A53), which is pretty likely to throw a spanner in the works of the threading model. But hey, feel free t
791.
▲
by
Sesse__
3y ago
There are _tons_ of SQL queries that involve redundant and/or stupid things. A lot of them come from autogenerated queries where the user has nearly zero control over the actual SQL. An optimizer's job is to optimize that away, no
792.
▲
by
Sesse__
3y ago
I have no idea what a Cartesian product would have to do with my query; there's only a single table there. > But actually you have a point in that half the problem is the predicate is not linked to the tables No, it really isn'
793.
▲
by
Sesse__
3y ago
Other tricky cases: WITH c AS ( SELECT random() AS r FROM t1 ) SELECT * FROM c WHERE r < 0.5; I've seen bugs where this returned rows with r > 0.5. The semantics of such functions can be very tricky when the database engine ass
794.
▲
by
Sesse__
3y ago
You cannot reject a predicate just because it doesn't refer to a table. SELECT * FROM t1 WHERE 2+2=4 is a completely valid query and should be allowed.
795.
▲
by
Sesse__
3y ago
It's not only about “handle”, it's about not eating through all of your battery before you're done watching the video. But no, “any” phone cannot reliably play 1080p AV1: https://www.spiedigitallibrary.org/con
796.
▲
by
Sesse__
3y ago
dav1d can decode 4K video in realtime on a pretty normal office-class PC. The real issue for is mobile.
797.
▲
by
Sesse__
3y ago
Theora is VP3 with some more leeway in the hope that the encoder can use the additional parameter freedom to produce better video (which never really happened; most of the 1.1 branch was, as I understand it, just cleaning up a lot of old mi
798.
▲
by
Sesse__
3y ago
> The only way to implement that "generally" is to visit all of the rows in the result-set, and skip over duplicates using a hash table of "already seen" pairs, or by sorting the result. The problem is that this inter
799.
▲
by
Sesse__
3y ago
You always need to check the resulting plans if you care about execution performance, that's just how life is. I'm offhand a bit surprised IN does worse than EXISTS; I can understand NOT IN being slow, because it has very surprisi
800.
▲
by
Sesse__
3y ago
Explicit semi- and antijoin operators would be a nice addition to the language, but do note that they present some additional challenges for the optimizer. In particular, when the join condition becomes explicit, it can take on more forms t
801.
▲
by
Sesse__
3y ago
There's no good reason why you couldn't rewrite DISTINCT to GROUP BY, but remember that it wouldn't work in all cases; you could have both. E.g. SELECT DISTINCT COUNT(*) FROM t1 GROUP BY a;. Similarly, HAVING and window funct
802.
▲
by
Sesse__
3y ago
If you don't like EXISTS, the other standard way to get a semijoin is using IN with a subquery. SELECT * FROM a WHERE x IN (SELECT y FROM b);
803.
▲
by
Sesse__
3y ago
The biggest problem isn't that the highest-level athletes would waste away their bodies (that's a big problem, but not the biggest); it is that below them, there will be thousands if not millions of second- and third-level athlete
804.
▲
by
Sesse__
3y ago
It's the other way round; most PEDs _are_ medicine for regular people, abused by athletes. E.g., synthetic EPO is really useful if you just had chemotherapy for cancer and that killed off nearly all of your red blood cells. Anyways, if
805.
▲
by
Sesse__
3y ago
Well, that's outlawing blocking I/O. Replacing every blocking I/O call with a poll() loop creates significantly more boilerplate than EINTR does…
806.
▲
by
Sesse__
3y ago
Replace “thread” with “process”, then. The basic fact doesn't really change; if you want a clean shutdown on Ctrl-C, you'll need to allow an EINTR-like return from a blocking syscall.
807.
▲
by
Sesse__
3y ago
It must also be of an atomic type. POSIX specifies exactly one, namely “volatile sig_atomic_t”. I guess in C++11 etc. you can also use the language-provided atomics.
808.
▲
by
Sesse__
3y ago
The article explicitly mentioned signalfd, which is a less hackish way of doing the same.
809.
▲
by
Sesse__
3y ago
Yes, that's the big evil on that side. :-) (You don't need to reboot, though; you can “mount -o remount,intr …” to switch states and then kill. I wonder if you can also now actually do kill -9 specifically even on nointr, but I ha
810.
▲
by
Sesse__
3y ago
The big problem is; if you have a thread reading from a socket, how can you ever interrupt it if you wish to do so? EINTR on signals is really not so bad when you think of it from that angle. (If you don't want to deal with EINTR every
More ›