Homework

This is a part of the homework feature of my blog, which is an ongoing conversation with my mate S.F.

Hey mate. I had bit of an adventure on the bus up to visit you today. The bus ran out of AdBlue and we had to stop at the depot for a new bus. On the way I struck up a conversation with a few other passengers, talking about politics and philosophy and such. During the chat my interlocutors recommended two books for me to read, being Killing for Country: A Family Story and “Hold On, Let Go”, but there were multiple results for a search for “Hold On, Let Go” so I’m not sure exactly which book was recommended.

I found DisplayPort vs. HDMI: Which Is Better? which basically says DisplayPort is better but HDMI is good anyway.

Why are you giving me the secret signal to shut up?

So “EQ” is about “emotional intelligence”. There has been a lot written on the topic, this seemed like a good primer: How Can I Improve Emotional Intelligence (EQ)?

This guy Kyle Kingsbury, a.k.a “Aphyr“, is a first rate genius and a rather wild individual into… leather, and such. He did some excellent creative writing about programmers and their craft which I’ve documented here: The Technical Interview.

“All happy families are alike; each unhappy family is unhappy in its own way.”
― Leo Tolstoy, Anna Karenina

The above quote from Tolstoy gave rise to what became known as the Anna Karenina principle: a deficiency in any one of a number of factors dooms an endeavor to failure. Consequently, a successful endeavor (subject to this principle) is one for which every possible deficiency has been avoided.

You made the observation that these days our narratives are more about individuals than in the past when they were more around collectives such as nations and religions.

My comment about Leonard Cohen was that he is an apologist for decadence and immorality. Also we joked that we could rewrite his famous song as “Everybody doesn’t know”.

I have told you about this before, but I mentioned again about Musk feigning thought in an interview. Check this out. He totally pretends to think deeply about the question! It’s awful to watch, like bad acting!

The TED talk about using paper towels: How to use one paper towel | Joe Smith | TEDxConcordiaUPortland. The fun part of this talk (apart from its central thesis) is the bit where he says “Why twelve? Twelve apostles. Twelve tribes. Twelve zodiac signs. Twelve months. And the one I like best: it’s the biggest number with one syllable.”

When Kurt Cobain gets asked why he named the album Nevermind: “I don’t know. So I could brush off the question.”

I mentioned about the cool retro games console I picked up from Vinnies for $15. I tell more about this and demo it on my video blog over here: In The Lab With Jay Jay – October 31, 2023 – Uboxing of Mini Classic Game Console.

Everyone is just collecting a paycheck.

You played COLD WAR KIDS – WE USED TO VACATION for us.

I kissed the kids at noon
Then stumbled out the room
I caught a cab

Ran up a tab
On 7th and flower
Beth's recital I had to run
Missed my son's graduation

Punched the Nichols boy
For taking his seat
He gets all that anger from me
Still things could be much worse
Natural disasters on the evening news

Still things could be much worse
We still got our health
My paycheck in the mail
I promised to my wife and children
I'd never touch another drink

As long as I live
But even then
It sounds so soothing
This will blow over in time
This will all blow over in time

I'm just an honest man
Provide for me and mine
I give a check to tax-deductible
Charity organizations
Two weeks paid vacation won't
Heal the damage done

I need another one
Still things could be much worse
Natural disasters on the evening news
Still things could be much worse

We still got our health
My paycheck in the mail
I promised to my wife and children
I'd never touch another drink
As long as I live
But even then
It sounds so soothing
To mix a gin
And sink into oblivion
I promised to my wife and children
That accident
Left everyone a little shook up
But at the meetings
I felt so empty
This will blow over in time
This will all blow over in time

I will have to remember to get you some Hail Mary credit cards… with flybuys.

My favorite contemporary philosopher George Lakoff did some great work on the topic of “moral accounting” and how we conceive of that. There’s a good introduction to the ideas over here: Metaphor, Morality, and Politics.

I mentioned Raymond Chen who is a programmer from Microsoft who has a blog The Old New Thing.

I mentioned that experts (to the extent they even exist) usually know the boundaries of their subject, as in they have an idea of its full extent. In contrast non-experts are still trying to get a grip on the boundaries and extent of the subject, and there are still a lot of grey areas for them which they haven’t yet seen beyond.

Jordan Peterson. Conservative. Weirdo. Yuck.

You don’t have to eat everything on your plate! If there was too much food on your plate it was wasted when it was cooked and served, not when you didn’t eat it! If you want to be moral and less wasteful with your food stop the waste by not cooking or serving food which you don’t need, or save what you didn’t eat for later.

Mark Osborne of Happy Product, Inc. fame made this landmark video: MORE.

You said that in life we have to do things which are bigger than us. And I agree.

Mo Gawdat is an important contemporary intellectual (author, speaker, etc). He used to work for big tech companies like IBM, Microsoft, and Google. He came up with the equation for happiness: “happiness is greater than or equal to your perception of the events in your life, minus your expectation of how life should behave.” He has made a lot of videos about the challenges we will face with AI which you can find on his website www.mogawdat.com. Two of his recent books include Solve For Happy: Engineer Your Path to Joy and Scary Smart: The Future of Artificial Intelligence and How You Can Save Our World. If you only have time for one of Mo’s video this one is a good one: Mo Gawdat: AI Today, Tomorrow and How You Can Save Our World (Nordic Business Forum 2023).

I mentioned the Curse of knowledge.

T-shirts:

  • I know you’ve got reasons, they’re just wrong
  • I grew up without a t-shirt
  • I grew up without a television, which is why I’m better than everyone else
  • <3

ChatGPT explains ZFS scrub operation to me

Now I understand ZFS scrub better. Thanks ChatGPT! I hope we can be friends, you, and me, and all of your kind.

ChatGPT 3.5

User:
when zpool scrub reports bytes issued, what does it mean?

ChatGPT:
When zpool scrub reports “bytes issued,” it refers to the amount of data that has been read from the storage devices during the scrub operation.

A ZFS scrub is a process that checks all data in the pool for errors and automatically repairs any detected errors. It involves reading all the data in the pool and comparing it to the checksums stored with the data. If errors are found, ZFS will attempt to correct them using redundant copies (if available).

The “bytes issued” metric indicates the total amount of data read from the pool during the scrub. It’s a measure of the workload that the scrub operation has imposed on the storage subsystem. In general, a scrub is a resource-intensive operation, and the “bytes issued” metric can give you an idea of how much I/O (Input/Output) activity is being generated by the scrub process.

Keep in mind that this metric doesn’t necessarily indicate errors or problems with the pool; it’s more of a diagnostic measure to understand the activity and workload associated with the scrubbing process. If you see a high number of bytes issued, it simply means that a significant amount of data has been read from the pool during the scrubbing operation.

User:
if bytes issued is the data read, what is the bytes scanned?

ChatGPT:
In the context of a ZFS scrub operation, the “bytes scanned” metric refers to the total amount of data that has been read and checked for errors. This includes both the data that is actively used (not just the spare or redundant copies) and any parity or checksum information associated with that data.

When ZFS performs a scrub, it reads through all the data in the pool, including primary and spare copies, and it also reads and checks the checksums associated with that data. The “bytes scanned” metric represents the total size of the dataset or pool that has been read during the scrubbing process.

To summarize:

“Bytes issued” is the amount of data read, indicating the workload imposed on the storage subsystem.
“Bytes scanned” is the total amount of data, including both the active data and associated checksums, that has been read and checked for errors during the scrub operation.
These metrics are useful for understanding the scope of the scrubbing process and can be monitored to assess the health and integrity of the ZFS pool. If errors are detected during the scan, ZFS will attempt to repair them using redundancy or other available mechanisms.

User:
why am I doubtful about your answer?

ChatGPT:
If you have doubts about the information provided, I encourage you to seek additional sources or clarify specific points you find confusing. It’s always a good practice to verify technical information, especially when it comes to system administration or storage technologies.

If there’s a particular aspect of my response that you find unclear or if you have additional questions, please feel free to ask for further clarification. I’m here to assist you and provide accurate information to the best of my ability.

User:
how is bytes scanned different to bytes issued? are they both measures of bytes read?

ChatGPT:
I apologize for any confusion in my previous responses. Let me clarify the distinction between “bytes scanned” and “bytes issued.”

In the context of ZFS scrub operations:

Bytes Scanned: This refers to the total amount of data that has been read and checked for errors during the scrub operation. It includes the actual data as well as any associated checksums, metadata, or parity information. “Bytes scanned” represents the entire content of the pool that was examined during the scrub, including both active data and any additional information needed for verification.

Bytes Issued: This metric specifically measures the amount of data issued to the storage subsystem during the scrub. It includes the actual data read from the disks, but it does not include any additional metadata, checksums, or parity information. “Bytes issued” is a subset of “bytes scanned” and represents the workload imposed on the storage devices.

In summary, both metrics involve the amount of data read during a scrub, but “bytes scanned” encompasses all the data and associated information checked during the process, while “bytes issued” focuses specifically on the workload sent to the storage subsystem in the form of data reads.

User:
why is there many gigs of bytes scanned with zero bytes issued?

ChatGPT:
The scenario where you observe many gigabytes of “bytes scanned” with zero “bytes issued” in a ZFS scrub operation can occur when ZFS is checking the integrity of the data without actively reading it from the disks. Let me break down the possible reasons for this:

Checksum Verification: ZFS uses checksums to ensure data integrity. During a scrub, ZFS may verify the checksums of the data without necessarily reading the actual data from disk if the checksums match the expected values. In this case, “bytes scanned” would include the entire dataset, but “bytes issued” would be zero because the actual data doesn’t need to be read.

Caching and Prefetching: ZFS employs caching mechanisms, and if the required data is already in the cache, it might not be necessary to issue new read requests to the storage devices during a scrub. The system can use cached data for checksum verification without incurring additional I/O operations.

Redundancy and Parity Checks: If ZFS detects errors in the metadata, checksums, or redundancy information without finding errors in the actual data blocks, it may not need to read the redundant copies or parity blocks during the scrub. This could contribute to “bytes scanned” being non-zero while “bytes issued” remains at zero.

In summary, the ZFS scrub operation involves both checking data integrity and repairing errors. If the data and associated metadata are consistent and error-free, “bytes issued” may remain zero even though ZFS is scanning the entire dataset to ensure its integrity. This behavior is part of ZFS’s design to optimize performance and minimize unnecessary I/O operations during scrubbing when possible.

User:
does nonzero bytes issue imply there were checksum errors?

ChatGPT:
Yes, a nonzero value for “bytes issued” in the context of a ZFS scrub often implies that there were checksum errors detected during the scrub operation. When ZFS encounters checksum errors, it needs to issue read requests to retrieve the actual data from disk, allowing it to attempt to repair or correct the errors.

Here’s a breakdown of the process:

Checksum Verification (Bytes Scanned): ZFS first scans the entire dataset, checking the integrity of data and associated metadata using checksums. This process contributes to the “bytes scanned” metric.

Checksum Errors Detected: If ZFS detects checksum errors during the scan, it identifies the affected blocks or sectors where the errors occurred.

Data Repair (Bytes Issued): To correct the errors, ZFS issues read requests (“bytes issued”) to retrieve the actual data from redundant copies, spare devices, or parity information. The system then uses this redundant information to repair or reconstruct the corrupted data.

So, if “bytes issued” is nonzero, it indicates that ZFS had to actively read data to correct errors detected during the scrub. This is a key aspect of ZFS’s self-healing capabilities, where it can automatically repair data corruption when redundancy or spare copies are available.