The failure modes of rsync



  • @Gaska said:

    You alluded several times that Linux would be better if it did what Windows does.

    No I did not.

    @Gaska said:

    And Windows spawns console window on first write to stdout.

    That is untrue.


    Ok your post is off to a very stupid start, and I'm just not going to read the rest.



  • @flabdablet said:

    If you make all the strings UTF-8, and interpret the first code point as a length, you can have up to 0x10ffff = 1114111 characters in a string!

    Such an ingenious way of leveraging Unicode to extend your Pascal String length 😀

    @flabdablet said:

    A string value as held in the variable table was actually a three byte descriptor, with one byte for length and two bytes for a pointer into the text pool. [...] But substring operations were nice and quick.

    That is actually neat. But it would not work for C nor for Pascal Strings. So maybe I should switch to this scheme for my assembly string library?


  • Considered Harmful

    @blakeyrat said:

    Windows just automatically and silently creates a console as-needed by an application. The user (or developer, really) never has to think about it, it just happens.

    @blakeyrat said:

    That is untrue.
    @Gaska said:
    And Windows spawns console window on first write to stdout.

    ... !?

    Not that I give I crap how Windows accomplishes this thing that no-one need ever think about. But I do wonder why you are calling yourself a liar.



  • "Console" != "console window".

    I cannot believe I had to say that. I think I'd have a better experience trying to talk to a doberman on here, Jesus you retards.


  • Considered Harmful

    @Gribnit said:

    Not that I give I crap how Windows accomplishes this thing that no-one need ever think about. But I do wonder why you are calling yourself a liar.

    See above. Nobody wants to know fine distinctions in the mass of crazy that is Windows (well, I don't) - so what I would do, is see what about what the crazy person (that's YOU!) is saying I can map to my own experience. Like for instance, I would think, since programs write on stdout when they write, that it opens the console when the write happens. Manifestly not the case (when assuming console == console window), but, likely, the actual case. With that fine fucking distinction nobody should ever have to think about, aside.

    Abuse: You're a colossal buffoon

    Obscene Abuse: You fucking asshat retard idiot. Yes you, @blakeyrat. What, do you jerk off to people insulting you? It is the only way I can think of there being any motive for your behavior.

    Professional Abuse: Turn in your card.


  • Banned

    @blakeyrat said:

    No I did not.

    What is your argument then, if not that Linux should do what Windows does? And when you said it? Because all the way through the topic you were saying that what Linux does is stupid and Windows does it better.

    @blakeyrat said:

    That is untrue.

    Okay, I actually checked and it seems that with Windows subsystem, no console window is written and I never see my program's output at all unless I redirect it somewhere. Which is exactly the same thing that Linux does. Now I'm even more confused about the whole issue. And bonus confusion comes from the fact that I SWEAR IT WAS WORKING DIFFERENTLY IN XP!!!!! I EXPERIENCED IT FIRST-HAND!!!!!!!!!!

    @blakeyrat said:

    "Console" != "console window".

    Now you're fucking kidding me. What is console to you, then, in this context, and how it's not a console window?

    @Gribnit said:

    Nobody wants to know fine distinctions in the mass of crazy that is Windows

    Speak for yourself. I'm totally in for any stupid little details.


  • ♿ (Parody)

    @blakeyrat said:

    we've already debated and I already disagree with.

    LOL

    @Polygeekery said:

    What I am getting at is, just because you disagree with something it doesn't mean you aren't fucking wrong. Which you are.

    A sphincter says what?

    @blakeyrat said:

    "Console" != "console window".

    So what does this windows console that doesn't have a window do?

    My understanding is that there is no console for a windowed program until it calls AllocConsole, at which point stdout and stderr get hooked up.


  • Grade A Premium Asshole

    @boomzilla said:

    A sphincter says what?

    What?

    Now you are just talking gibberish.

    <Yes, I got the joke



  • @sloosecannon said:

    I definitely want useless debug information spewed into my system log when I don't need it! Don't you want that too?

    No, and that's why, unlike on certain other systems, the logs are properly structured and separated.

    @sloosecannon said:

    So.... Eating disk space and filling the logs with crap is OK with you?

    And how's that the issue with Windows? If an application wants to log something, it's going to take up disk space no matter if you use Windows event logger facilities, a DB, or a log file.


  • Banned

    @Maciejasjmj said:

    And how's that the issue with Windows? If an application wants to log something, it's going to take up disk space no matter if you use Windows event logger facilities, a DB, or a log file.

    ...unless it uses stdout for logging and you redirect it to /dev/null.



  • @Gaska said:

    ...unless it uses stdout for logging and you redirect it to /dev/null.

    Then you have to ask yourself why on earth are you logging those things anyway.

    Look, there are generally three types of things you want to log:

    a) reports on what the application does - things like periodic job runs, access logs, etc. Those you generally want to keep for an extended period of time, so that when, say, someone complains that the data for the last month is incomplete, you can check whether the job ran every week that month.
    b) trace- and debug-level information for troubleshooting. You rarely want to keep those for long (for trace, sometimes not at all in production), they're usually noisy, take a lot of space and aren't useful except for specific situations.
    c) errors and crashes. Now here's the funny part, because when the application crashes usually you want the debug info from b) to be available - but you can't go back in time and enable trace logging for this session once a crash occurs.

    With the stdout/stderr approach, it's all-or-nothing - you either get all the logs, or get none at all. Now you can set up verbosity, but that means most of the time you won't have b) when you need it, or you can use both stdout and stderr, but that's just two streams you can play with, no real granularity.

    And in both cases, it's up to the user to determine each time whether he wants the logging or not. Problem is, the users normally don't care about the logs until something breaks.

    Now compare it to Event Viewer, where you can set separate logs for each case, all grouped under your application, and either set the retention policy yourself, or leave it up to the user.


  • Discourse touched me in a no-no place

    @Maciejasjmj said:

    With the stdout/stderr approach, it's all-or-nothing - you either get all the logs, or get none at all.

    Is syslog a thing? Oh yes, it is.



  • @dkf said:

    Is syslog a thing? Oh yes, it is.

    AIUI syslog by itself is just an API to make your text dump logs have some structure and it doesn't really manage the logs beyond that (with things like rollover, etc)?


  • Banned

    @Maciejasjmj said:

    Then you have to ask yourself why on earth are you logging those things anyway.

    Because I can always redirect it to a regular file (or even console output) if I ever want to.

    @Maciejasjmj said:

    With the stdout/stderr approach, it's all-or-nothing

    And usually it's enough. If the application is non-critical, it doesn't hurt that much if it crashes, and if crash is repetitive, you can run again with logs enabled this time. Remember that implementing the "get-b-when-c" thing costs development time, so for non-critical applications it's usually a waste.


  • Discourse touched me in a no-no place

    @Maciejasjmj said:

    AIUI syslog by itself is just an API to make your text dump logs have some structure and it doesn't really manage the logs beyond that (with things like rollover, etc)?

    It's also the log management daemon (when that isn't systemd'd into oblivion). Sensibly, applications that send messages to the log don't need to care about the management of the log. Because that would be an invitation to get things wrong. Indeed, one of the best things of all is the support for logging to entirely different machines, possibly over a non-standard connection; you have a route of finding out what happened that can't actually be compromised after-the-fact.

    Most of this stuff is pretty abstracted out when you're doing production-grade applications. You just log the messages (with appropriate priority). All the details about what that means are configured outside of the main logic of what you're doing.



  • @flabdablet said:

    I like the way Applesoft BASIC dealt with strings. A string value as held in the variable table was actually a three byte descriptor, with one byte for length and two bytes for a pointer into the text pool. Every now and then the text pool would need garbage collecting, which caused noticeable lags especially if you were running on a fully optioned machine with 48K RAM, and sometimes the text pool would grow down in memory far enough to corrupt the graphics display RAM. But substring operations were nice and quick.

    Most (but not all) of the BASIC interpreters of the time did that (partly because many of them were written by Bill's Boys...). On the Commodore 64, you could write a program that would bung up the string table so much that garbage collecting it would take ten minutes, during which time the RUNSTOP key wouldn't do anything useful except if you did the RUNSTOP/RESTORE combination. If you typed the same program into the native mode of a Commodore 128, it wouldn't ever pause even for a moment. As I recall, the program involved concatenating empty strings to variables that contained empty strings or something similar, and the handling of empty strings in the 128 must have been different enough that it never needed to garbage collect for that particular workload.



  • @dkf said:

    It's also the log management daemon (when that isn't systemd'd into oblivion).

    Normally, no. The normal log management daemon (in the absence of systemd) is syslogd, not syslog.

    Well, on my FreeBSD machine, there is no process called syslog, but there is one called syslogd.


  • ♿ (Parody)

    I have rsyslogd here.



  • @blakeyrat said:

    Ok but it does mean Blakeyrat wins again.

    Arguing with you is equivalent to playing chess with a pigeon.
    In the end, the pigeon will always just knocks the pieces over, craps on the board, and claim victory


  • Banned

    And you will always @accalia the tenses of verbs and accidentally a period.


  • Considered Harmful

    @Maciejasjmj said:

    why on earth are you logging those things

    I don't know, I didn't write the application doing it, neither did he...


  • :belt_onion:

    I don't think that's an @accalia because it was what he intended to type... It's more of a @fail



  • Sorry, English is not my first language.
    Can you highlight the mistakes ?
    I am willing to learn


  • Discourse touched me in a no-no place

    @blakeyrat said:

    Is that true? I'm pretty sure that's not true.

    AllocConsole documentation in MSDN says so.

    It kind of makes sense--a console is for displaying stdout/stderr by default. If you had two consoles where would the output go? (You can make a case for either of the two reasonable options but someone will disagree either way which I bet is why MS punted).


  • Discourse touched me in a no-no place

    @Gribnit said:

    Not even a matter of log rotation. Windows is so inherently well designed, that the logs do not in fact take up disk space. True story.

    Actually the Event Viewer (logically) uses a circular buffer, deleting old messages on demand if the log fills up, so no, it effectively doesn't take up disk space. (Well, in that it can't grow exponentially until it fills the disk like regular logs can.)


  • Discourse touched me in a no-no place

    @Gaska said:

    Only a Sith deals in absolutes.

    Howdy, Darth Gaską.


  • Discourse touched me in a no-no place

    @blakeyrat said:

    And your misunderstanding was aptly communicated with the words "pronoun game ding". The meaning of which is obvious to everybody, of course.

    The Bugs Bunny/Daffy Duck "ah, pronoun trouble!" bit from that one cartoon would've been clearer.



  • @FrostCat said:

    The Bugs Bunny/Daffy Duck "ah, pronoun trouble!" bit from that one cartoon would've been clearer.

    Not to me.


  • Discourse touched me in a no-no place

    @blakeyrat said:

    Not to me.

    It may not have narrowed down where the problem was, but it would've told you the nature of the trouble: supposedly-ambiguous pronoun usage (I CBA to go back and see if that was a justified complaint.)

    Plus there's never a wrong time to put in a relevant Bugs Bunny clip. (Or an MLP:FiM one: this is where you say:)

    https://www.youtube.com/watch?v=DxsuR6hSIQE

    (if you feel sarcastic you can use this instead:)

    https://www.youtube.com/watch?v=qzY80OSu5Aw

    (one phrase, two contradictory meanings!


  • Banned

    @TimeBandit said:

    Sorry, English is not my first language.
    Can you highlight the mistakes ?
    I am willing to learn

    First, you always put a period after every sentence (unless exclamation mark or question mark is more appropriate).
    Second, you never put spaces before question marks.
    Third, if you use modal verb "will", the verbs that come after should be infinitive, not present simple.


  • Banned

    @FrostCat said:

    It kind of makes sense--a console is for displaying stdout/stderr by default. If you had two consoles where would the output go?

    It would be very easy problem to solve if console windows had standard streams of their own.

    @FrostCat said:

    (one phrase, two contradictory meanings!

    Contradictory... You keep using that word. I do not think it means what you think it means.


  • :belt_onion:

    So:
    @TimeBandit said:

    Arguing with you is equivalent to playing chess with a pigeon. In the end, the pigeon will always just knocks the pieces over, craps on the board, and claim victory

    Or

    @TimeBandit said:

    Arguing with you is equivalent to playing chess with a pigeon. In the end, the pigeon will always just knocks the pieces over, craps on the board, and claims victory


  • Discourse touched me in a no-no place

    @TimeBandit said:

    In the end, the pigeon will always just knocks the pieces over, craps on the board, and claim victory

    And specifically, in this case,
    "In the end, the pigeon will always just knocks the pieces over, craps on the board, and claim victory"

    should be
    "will always just knock the pieces over, crap on the board, and claim victory". Or leave the word "will" out and leave the s on the end of the verbs.


  • :belt_onion:

    :hanzo:


  • Discourse touched me in a no-no place

    @Gaska said:

    Contradictory... You keep using that word. I do not think it means what you think it means.

    Context is important, and in this case as a non-native speaker you might not have gotten that. In the second clip, Pinkie is expressing suspicion and doubt, i.e., she doesn't really mean "okay".


  • Discourse touched me in a no-no place

    @sloosecannon said:

    :hanzo:

    Yeah, I don't always bother noting it.


  • :belt_onion:

    Given Discourse's reliable post streaming, you may not have seen it either...


  • Banned

    @FrostCat said:

    Context is important, and in this case as a non-native speaker you might not have gotten that. In the second clip, Pinkie is expressing suspicion and doubt, i.e., she doesn't really mean "okay".

    If this is the contradiction you meant, then just one of those two is contradictory - so you're wrong anyway.


  • Discourse touched me in a no-no place

    @Gaska said:

    If this is the contradiction you meant, then just one of those two is contradictory - so you're wrong anyway.

    Are you being obtuse because @blakeyrat got you riled up? The first video is a compilation of Pinkie saying "okey dokey lokey" in a straight-up manner (except if it also includes the second clip, in which case you have to discount it.) Then in the second clip she says it again, but in a manner indicating it's not actually okay. The two clips use the same words to mean the opposite of each other.

    I'm pretty sure they have sarcasm in Poląnd.



  • @TimeBandit said:

    English is not my first language.

    I’ll take a guess: you’re Scandinavian?


  • Banned

    @FrostCat said:

    e you being obtuse because @blakeyrat got you riled up? The first video is a compilation of Pinkie saying "okey dokey lokey" in a straight-up manner (except if it also includes the second clip, in which case you have to discount it.) Then in the second clip she says it again, but in a manner indicating it's not actually okay. The two clips use the same words to mean the opposite of each other.

    If someone asks you if you would lend them a pen and you say "yeah, sure", and later the same day someone else tell you that he solved Rubik's cube in ten seconds and you reply "yeah, sure" because you know he sucks at this, there's no contradiction anywhere. Because contradiction is something else.



  • @Gurth said:

    I’ll take a guess: you’re Scandinavian?

    Nope. Strike one 😉


  • Discourse touched me in a no-no place

    @Gaska said:

    Only a Sith deals in absolutes.

    http://i.imgur.com/mhzV8jP.jpg


  • Discourse touched me in a no-no place

    @Gaska said:

    If someone asks you if you would lend them a pen and you say "yeah, sure", and later the same day someone else tell you that he solved Rubik's cube in ten seconds and you reply "yeah, sure" because you know he sucks at this, there's no contradiction anywhere. Because contradiction is something else.

    The meaning of the two utterances are in contradiction with each other. Please don't be dense.


  • Banned

    They would be contradictions if they referred to the same thing. But they don't, so they're not.



  • It’s just that your sentence that caused this discussion reminded me of the way speakers of Scandinavian languages tends to adds extra s’s to verbs that shoulds not haves them.

    Filed under: Exaggeration added for humorous effect, Failed jokes


  • Banned

    That wasn't even remotely funny.


  • Discourse touched me in a no-no place

    @Gurth said:

    It’s just that your sentence that caused this discussion reminded me of the way speakers of Scandinavian languages tends to adds extra s’s to verbs that shoulds not haves them.

    If it wa's native engli'sh s'peaker's then it would be bonu's apo'strophe's!


  • Banned

    Bon' a'strop's inp'ce o' let's!


  • Discourse touched me in a no-no place

    @Gaska said:

    They would be contradictions if they referred to the same thing. But they don't, so they're not.

    :rolleyes:


Log in to reply