Slashdot is powered by your submissions, so send in your scoop

 



Forgot your password?
typodupeerror
×

Comment Re: FreeNAS (Score 1) 212

I'm not familiar with zfs either, but I suppose this would be a basic function of zfs interfaces, wouldn't it?

Only if it is implemented as such. It probably isn't.

Suppose you have a file which was modified once (ie there are two versions). The overall filesystem has files which have had 3 billion modifications. You have 3 billion trees and the leaf node for that file in each tree points to one of two versions.

The smart way to search the tree is to compare all the roots and eliminate any which aren't different versions (there won't be any at this level, since new roots are only created for new snapshots). Then you descend one level in each and eliminate all which aren't different versions (which will eliminate 99% of the records at this level, since if you snapshot on a single file change most nodes will be shared across two trees except the one containing the one file that changed). Then you keep going down eliminating duplicates in this way. In the end you'll have a bunch of linked lists from root to leaf showing the one file that changed in each new root (a tree with only one node per level is a linked list). Then you search the leaf nodes for the file of interest and generate a linear history for that one file. If you are targetting a particular file then you can stop your search early on most of those trees anytime you discard the parent of the desired leaf (if you're looking for changes in /etc/passwd and in this tree only an unknown file in /usr changed you can stop searching).

That is still a lot of work, because there was no linkage between file versions in the data structures. A filesystem optimized for file versioning would store a link from each file to the previous version so that the history for a single file could be traversed with only one seek per version.

However, doing this from userspace is going to be even less efficient if the filesystem doesn't expose its internals. In userspace you have no visibility into which directories under a snapshot are a shared record in the filesystem. To trace the history of a single file requires descending to that file in every single tree, and doing a full comparison, which is far more operations than in the optimal algorithm. To trace the history of the entire tree requires comparing every file in every snapshot, which is an enormous number of operations even in RAM, let alone on disk.

If you've ever tried to do a git log on an individual file in a very large git repository you might have noticed this problem, and I believe git does things in the optimal way. (Git repositories are very similar to COW filesystems.) If you stuck your entire hard drive into a git repository and did a commit on every change, you'd quickly run into this problem.

To do this well really requires designing the feature into the filesystem. Doing it in a COW filesystem is especially challenging since if you want to remove a snapshot you need to potentially clean up broken links at the leaf level if you're actually linking across snapshots so that you can easily traverse file histories.

Comment Re:ZFS (Score 1) 212

How do you define a "file version"?

Agree that this is a challenge. It would seem to me that the simplest solution would be to create a version anytime you close the descriptor. I realize that some activities that keep files open for long times would not create versions, but for most mainstream cases it would probably work. It would certainly work better than just taking random snapshots at random times when a file might be half-modified.

A solution does not need to be perfect to be useful.

Comment Re:ZFS (Score 1) 212

Well, the whole idea would be to have simple snapshots of every file version without having to re-implement every application I use.

And it sounds like the answer to my second question is no. btrfs works in the same way. The snapshot is at the filesystem/subvolume level, and if you want to find all the versions of a particular file you basically have to find the file in every snapshot that exists and diff them all.

I love btrfs. I just don't think that it solves this particular problem, and neither does any other linux filesystem. The fact that nobody has implemented this on linux doesn't make it any less useful.

Comment Re:FreeNAS (Score 1) 212

Can ZFS actually do versioning on every file close?

The versioning filesystem that Windows Server provides does not version at every file close. It does it via snapshots. So that shouldn't be part of the submitter's requirements.

He never said he was happy with Windows Server's versioning.

He did mention sharepoint, which does retain a version on every file save.

I'm well aware that zfs and btrfs can be told to snapshot the entire filesystem as often as you want to fire off a cron job.

Comment Re:How is this news for nerds? (Score 1) 1083

Marriage is not exclusively about property and inheritance. I can sign a property deed along with someone I'm not married to and I can do the same in my will for inheritance.

While I agree in principle and I'd love to see states get rid of marriage legally, I do think that it will take a lot more reworking of laws to make it happen.

For example, in Pennsylvania any number of random people can buy a house together and each own a portion of the property. However, only a married couple can buy it such that they each own 100% of it. The practical difference is that if one property-owner has a lein in the first case, then the lein remains against their share of the property up to the value of that share even if that owner dies. However, in the case of a married couple if one member of the couple has a lein against the house and the other does not, then upon their death the lein does not remain against the house because the other owner already owned 100% of it and the dead owner is simply struck from the deed.

So, there are likely situations where marriage does get special treatment that need to be resolved.

However, I do agree that there isn't any situation handled by marriage that could be legally handled in some other way, and I'd love to see marriage become purely a cultural/religious/etc arrangement with no legal basis at all. You could still have standard contracts for property ownership among couples just as there are standards for contracts for buying/selling houses, and individuals could enter into these or modify them as they see fit.

Comment Re:FreeNAS (Score 1) 212

Can ZFS actually do versioning on every file close? I know it can do snapshots, but of course btrfs can do that as well. I'd think that the goal of a versioning filesystem would be that versions are captured anytime a file is written, not just when the admin hits the snapshot button, or once an hour, or whatever.

As far as I've seen the COW filesystems only do snapshots when they're asked to, and I'm not sure they're designed to scale to the point where you have billions of snapshots for millions of files.

Comment Re:SCOTUS Decisions often based on reality (Score 1) 591

1. There were HUNDREDS of lawyers involved in combing over every letter of that law. You really think someone left one of the key parts of the bill sloppily worded like that?

Isn't that a bit like saying that there were HUNDREDS of programmers involved in combing over every line of that software. Do you really think that it could contain a bug?

Comment Re: what is interesting is not that it won (Score 1) 591

The actual architect of the law, as well as some other people involved with the writing, specifically stated at the time the law was being written that the purpose of the tax credit only applying to State exchanges was to force uncooperative states to comply with the law.

Perhaps, but the intent of the writer isn't nearly as important as the intent of the congressmen who voted for it, likely not having even read the entire thing.

When you write laws that are hundreds of pages long, it will be like writing software hundreds of pages long, and there will be bugs. The solution to legal "bugs" is to fix them, not pretend we're computers. That is what the court did.

If Congress really intends for Obamacare to go into a death spiral, they can always pass a law to make that happen.

Comment Re:That's enough! (Score 3, Interesting) 40

I'm not saying it is the right solution, but in many areas the individual is responsible.

If an airline tells a pilot to fly more than the legal number of hours in a week or they're fired, the pilot still loses his license if he complies. Of course, if they instead call the local regulator I suspect the airline will get a nasty visit from an inspector.

Engineers are legally liable if they sign off on an unsound building, regardless of the instructions of their employer.

The EU requires an EU citizen to sign off on the quality of imports of stuff like medical devices and if there is a problem they can go to jail. It is their responsibility to ensure that whoever they're working with is getting audited to ensure they are in compliance.

So, there are many areas of the economy where safety is critical and the solution is to make a particular individual personally criminally liable. It forces the buck to stop somewhere. That person is supposed to get a lot of clout with the regulators as well when they feel they're pressured to cut corners.

Comment Re:Cultural differences (Score 1) 266

I think our priorities are a bit different. I don't really see stocks and property as an end in and of themselves.

Don't put words in my mouth. Although as it turns out you might want to look into where pension funds put their money.

I'm well aware that pension funds tend to put their money into stocks. I still don't see them as an end in themselves. There really is no need for private pensions if you have basic income, but certainly I wouldn't ban them. I would tax assets though.

Also, people with nothing to do tend to have kids, and that is definitely something the system couldn't afford, so there would need to be measures to prevent that (if having kids doesn't cost you a lot, you'll tend to have them).

Great, so phase two of your economic masterplan is to make sure the system bankrupts itself within a generation. Hint: people are producers as well as consumers.

Most modern production involves capital more than labor. Resources tend to be limited, and if you endlessly grow population you end up with tons of unemployed.

Plus, regulating childbirth is actually a way to cut down on welfare spending. The pure-free-market approach would be to require parents to pay for the full cost of raising kids before having them, thus ensuring that kids are never a cost on anybody but their parents. However, I think it would probably make more sense to have a bit more diversity and have society kick in to let more people have kids.

Comment Re:Cultural differences (Score 1) 266

Just back of the envelope here, but take the US - 300 million population, give them $200 a week each, that's a cool $3 trillion dollars per annum, which is equivalent to the entire federal tax revenue in 2014. So, you're going to double all taxes to pay for this?

As you point out many some of that existing $3T already goes to social programs, which would be partially redundant. So, the cost wouldn't be quite that high.

However, I'm more than happy to double income taxes to pay for this. I'd lower taxes at the lower income brackets (which gives people more incentive to work), and I'd raise it at the higher brackets (which is where all the money is anyway). The US GDP is $15T - we can afford to pay for food/etc.

And this is before you start to consider the inflationary effects of pumping that much money into the economy, regardless of how recycled it is - most of that will be going to poor people who will mix it straight back into the liquid economy, taken from the mid to high level wealthy who tend to invest in property and stocks instead.

I think our priorities are a bit different. I don't really see stocks and property as an end in and of themselves.

But, I'm all for rehab/etc for those with addiction problems. Also, people with nothing to do tend to have kids, and that is definitely something the system couldn't afford, so there would need to be measures to prevent that (if having kids doesn't cost you a lot, you'll tend to have them).

Slashdot Top Deals

Genetics explains why you look like your father, and if you don't, why you should.

Working...