Hacker Newsnew | past | comments | ask | show | jobs | submit | cbzbc's commentslogin

Some of those (including many providers on Openreach) will support mini-jumbo frames that allow an MTU of 1500 inside pppoe.

What are people using to edit entries - because while markdown is fine, a lot of the time I want to be able to drag in screenshots, snippets of other documents like rfcs and so on. So it ends up being easier to make those notes for myself rather than push them into anything publishable.


You can use Obsidian to edit markdown. Obsidian allows easy paste of images.


Is there a Obsidian -> Hugo/Zola/Jekyll thing that's relatively robust?


Quartz might be that. https://quartz.jzhao.xyz/


https://typora.io/ allows pasting images into markdown. I use it for my Zola blog.


The problem is that they react to lights from the opposing vehicle, but they are going to hit your eyes before they detect your lights.

That's with simple high beam assist. The matrix ones you refer to actually have another feature which makes things even worse; they progressively dip the light in parts, but combined with the first effect this means that you have a few seconds of being blinded before all of their component leds have been dipped.

Not to mention that they are only reacting to something directly in front of them for the most part -- meaning you can be blinded on curves, or when turn around and looking at them off axis (say as they wait to turn into a road).


The Sun has cumulatively lost about £500m over the last few years. I presume there must be some other purpose for keeping it around.


They aren't big - but they are bigger than when it was just Urs and a couple of guys turning out plugins.

They becoming popular on the back of Diva, and Hans Zimmer using Zebra (he's very fulsome in his praise whenever mentioning u-he in interviews).


I guess big as in widely impactful.

Making a new plugin standard that is gaining wide adoption is big in my head.


I'd like to know the details of the errors -- because it could have been as simple as running out of memory.


I doubt this hypothesis, because duckdb written in c++ should be able to tolerate memory failure, while this written in rust has to deal with rusts memory allocation failures are panic's behavior.

That is to say that if the issue is duckdb running out of memory, it is most likely because the rust implementation is using memory more efficiently for whatever query is crashing duckdb, rather than graceful handling of memory allocation failure.

Where it is possible in c++ to gracefully handle memory allocation failure, it is not really a thing in rust I'm not even sure whether it is possible to catch_unwind it. I say this as a rust person who doesn't fancy c++ in the slightest...


You cannot use the rust standard library in environments where arbitrary allocations may fail but neither can you use the STL. The difference is the rust standard library doesn't pretend that it has some reasonable way to deal with allocation failure. std::bad_alloc is mainly a parlor trick used to manufacture the idea that copy and move fallibility are reasonable things.

I wouldn't wager a nickel on someone's life if it depended on embedded STL usage.


I’ve never seen anyone try to catch allocation failures in C++ code and in many cases doing so correctly is very difficult, not least of which is that writing exception-safe code is the exception, not the rule.


There's an effort to expose allocation errors in the standard library for the Linux kernel. Pretty sure it is well under way.


OOM are still something a DB can "avoid" so it's not like that class of bugs is some special issue that nullifies thing.


Crashing when running out of memory is not acceptable software behavior in my opinion.


Right, but all it says is that an error was thrown.


You can generate the dataset with the instructions in this readme: https://github.com/apache/sedona-spatialbench/tree/main

Here are the queries: https://github.com/apache/sedona-spatialbench/blob/main/prin...

They should be fairly easy to replicate!


runit doesn't propagate SIGTERM to services it starts.


Hmm, is that desirable? If someone's going around sending SIGTERM to random processes they might also send SIGKILL, and there's no way Nitro can propagate SIGKILL to processes it starts.


It does, because SIGTERM is traditionally understood as the trigger for a shutdown. Docker - for instance - will send a SIGTERM to pid 1 when a container is stopped - which goes back to a previous comment here about using a real init as pid 1 if the thing in your container forks: https://news.ycombinator.com/item?id=44990092


Interesting! I didn't know that—I thought that when you told sysvinit to change its runlevel you normally used some slightly richer interface than signals.


It does if you use SIGHUP.


runit doesn't always take care of services it manages in the same way as a proper init . From the man page:

"If runsvdir receives a TERM signal, it exits with 0 immediately"


This is by design.

runsvdir receiving TERM should only happen when stage 2 is triggered to end.

Once that happens, the individual runsv processes are still supervising their individual tasks and can be requested to stop through their respective control sockets. It's how standard stage 3 is implemented.


How do people deploy this framework typically - speaking for myself, I found NGINX Unit somewhat fiddly.


I tend to deploy all Python based apps using gunicorn behind a caddy proxy. Take a look at the compose.yml https://github.com/confuzeus/simple-django/blob/master/ansib...

Deployment is as simple as `docker compose pull && docker compose up -d`.


uvicorn systemd service behind nginx reverse proxy


Or just docker/uvicorn


With uvicorn.


Presumably the intent record is large (containing the key-value data) while the completion record is tiny

I don't think this is necessarily the case, because the operations may have completed in a different order to how they are recorded in the intent log.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: