Quill Work

At last month’s Tecumseh Lodge meeting in Indy, Larry Kincer taught a class in quill work. I’ve wanted to give quill work a try, so I was glad to have the opportunity. Embroidery with porcupine quills is an old (17th century) method of native american clothing decoration. Dyed quills are wrapped or woven in patterns.

Quillwork, front side

Frontside of my quillwork practice piece.

We used pre-dyed quills Larry brought and worked on wrapping them in simple rows on strips cut from a plastic container. Thin strips of rawhide would be the preferred material once you get the hang of wrapping, but the plastic strips worked OK for practice. After clipping off the barb from the quill, the quill is softened either by soaking in water or holding it in your mouth. Next, the quill is flattened either by running it between your teeth or using the back of spoon or knife blade. The flattened quills are wrapped around the strip, once or twice depending on length. The end of each quill is bend over beginning of the next quill and the wrapping covers the ends so that they hold each other in place as you can see in the picture below.

Quillwork practice, back side

My practice quillwork piece, back side.

Handling the quills requires some care and a tolerance for occasionally being pricked by the sharp barbs. The barbs are shaped so that your own muscle motion pulls the barb deeper into your skin. Larry had a porcupine hide with him with the guard hair and quills still on. The hide is covered with quills! You can readily see why you would not want to go grabbing one of these animals bare handed!

iCloud Drive: Large Folder Problem and Solution

I’ve had a love/hate relationship with cloud-based file synchronization services over the years. None seem to offer the golden set of reliability, security, privacy and tight OS integration.

Needless to say, I was excited when Apple finally released iCloud drive with OS X Yosemite (10.10) and iOS 8.1. According to Apple’s documentation, data stored in iCloud drive is encrypted in transit and at rest. Apple has not explicitly said if they scan your files while on their servers, but Apple’s statements to date make me think that they do not. I would call Apple’s security good, their privacy “probably good” until proven otherwise and their OS integration excellent. While some folks have had issues with iCloud reliability, it’s worked well for me over the past year, so I’m willing to give it a try as shared file storage space.

So, with that background I decided to move off of Bit Torrent Sync (which is very good, but not well integrated into OS X or iOS) and onto iCloud Drive right after I installed Yosemite on my iMac and MacBook Pro. Yes, I know, I was asking for early adopter problems and unfortunately I was not disappointed.

My initial attempt was a simple move of files into iCloud Drive using the Finder. This worked fine for a few small (< 2GB) folders. However, when I moved over a large (42 GB) folder with some animation asset collections (> 10,000 files per folder). I ran into problems.

For reference, the iCloud drive folder is hidden. You can find it in your “Library” folder at “~/Library/Mobile\ Documents/com~apple~CloudDocs”. This directory is what is mapped to the “iCloud Drive” folder in the Finder.

After much digging around, here’s what appears to happen:

  1. Upon moving files into the iCloud Folder, meta-data for each file is recorded locally for purposes of tracking file changes.
  2. The local meta-data is bundled up, apparently on a per-folder basis and transmitted up to Apple’s servers in batches as files are written to the iCloud drive folder.
  3. When a large enough group of files changes all at once (or nearly so) as happens with a large finder copy, the bundled up meta-data groupings get very large.
  4. When more than 100 files are updated all at once, the resulting meta-data bundle exceeds the size of a single database commit on Apple’s servers and the sync process registers an error and stops working.

How did I find this out? There’s a ASL-based log of all of the iCloud Drive sync processing that can be found in the directory /var/log/com.apple.clouddocs.asl. You can view it either using the Console application or using the new “brctl” command, like so:

brctl log -w

The “log” verb specifies log file viewing and “-w” invokes a “tail -F” style of continuous playback of the current log file. The Console app can do the same thing by picking the directory listed above and the most recent log file in the directory.

The tell-tail error message is as follows:

documentContent/731CDF0F-DD1C-4D7B-A627-5EED6E245B9A:(com.apple.CloudDocs:__defaultOwner__) = <CKError 0x7f8d08d919a0: "Limit Exceeded" (27/2023); server message = "Database commit size exceeds limit">

It’s the last part of that error, the “server message” that’s important. The “documentContent” code is unique to my files. You will have a different one.

To work around this problem, I did the following:

  1. I tar’d up the animation asset folders I had lying about in my source folder. I did that and the total number of files in the overall folder dropped from over 100,000 to just over 12,000.
  2. I reset the iCloud Drive meta-data store, by killing off the “bird” daemon (killall bird), removing the meta-data store which is found in ~/Library/Application\ Support/CloudDocs/ (cd ~/Library/Application\ Support ; rm -rf CloudDocs), and immediately restarting the Mac.
  3. I then waited until the iCloud Drive sync process rebuilt the meta-data and finished syncing successfully as evidenced by activity stopping in the log file (see above) without any new errors appearing. This can take several hours.
  4. Finally, I copied over the remainder of the folder slowly, leveraging a simple infinite loop in bash and the bandwidth usage control in rsync, like this:
while true; do rsync -av --delete --max-delete=10 --bwlimit=4 --exclude-from=/tmp/exclude source-dir/ iCloud; sleep 5; done

The combination of the infinite shell loop, the delete limit and bandwidth limit on rsync causes the copy to move slowly enough to avoid a mass file change, even when deleting files. This takes several hours to finish, but works without error.

The contents of /tmp/exclude were picked to avoid duplicating Apple specific file meta-data and the meta-data directories used by Bit Torrent Sync which I had been using previously. The contents of /tmp/exclude are:

.DS*
.Sync*

If I were starting to move to iCloud from scratch, I would use the shell loop and rsync shown above right from the start to avoid problems.

I hope this helps some OS X Yosemite users escape this problem and avoid several days of detective work to find and work around this issue.

NOTE: As always, when moving important files to new drives, make sure you have multiple backup copies! It’s really easy to accidentally delete things and it’s absolutely required to have a backup to compare to once you believe things have worked! I am able to say this worked because I compared the results on two Macs to a known good backup and every file matched, byte for byte.

Cars on Campus #4

It’s the Banana Mobile!

Banana Mobile

Banana Mobile

Banana Mobile

Banana Mobile at stop light?

One of the local rental property management companies uses a banana as their logo and has a truck frame modified with a fiberglass banana body. I managed to catch it while I was riding back to work after lunch with my wife.

Almost ready…

My dream of getting back into native american dancing is getting closer. I am close to having all the parts needed for my fancy dance outfit in useable shape. I checked how it all fit together recently and here’s how it looks.

Fancy Dance Outfit 2014-09-21

Test fit of my fancy dance outfit

I’m a lot happier than I look in the photo! Many of the outfit parts are 30+ years old so I’m amazed and glad they are still in workable shape and still fit, especially my lovely, and loud cow bells. I need to clean up the placement of the ties for back bustles and get used to the new feather whips.

There are several things yet to fix, refurbish or outright replace with items more in keeping with a modern era outfit. One I’m working now on is attaching rosettes to the two arm and two back bustles. You can just glimpse the cardboard stand-in for a rosette on my left arm in the picture above. It looks much better with the rosette attached.

Arm Bustle with Rosette

Arm Bustle with Rosette

Having just joined the Tecumseh Lodge after enjoying a brief visit to their powwow in August, I’m planning to go to their October craft meeting and dance practice. I’m hoping to have enough of the fancy outfit ready to take it with me and dance in it. That would be the first time I’d done that in something like 30 years! I’m looking forward to it and to their large social dance this winter.

Cars on Campus #2

Unknown model Ferrari, 2013-04-23

IMG_0042

I saw this Ferrari parked behind the Krannert Building last April. There are occasionally some really beautiful vehicles back there, presumably owned by successful MBAs. I really love the bright yellow paint job and the easily visible rear engine with the classic red Ferrari manifold.

IMG_0041IMG_0043

 

Does anyone know what model Ferrari this is? If so, please leave me a comment!

Cars on Campus #1

Walking around the Purdue University campus, I’m always amazed at some of the impressive cars students, faculty and staff drive. To document some of those lovely rides, I’m starting a new series, “Cars on Campus” that will include a picture of car I saw on campus.

To start this series, feast your eyes on this white Lotus Evora I caught on campus the end of August.

Lotus Evora 1 Lotus Evora 2

Guardians of the Galaxy

I really enjoyed watching Guardians of the Galaxy this past weekend. What follows is not a review, per se, but more my thoughts on what made this movie entertaining for me. It includes spoilers, so if you have not seen the movie yet and want to avoid seeing a spoiler, stop reading now.

Spoiler Alert Warning Symbol

Spoiler Alert Warning

The first thing that comes to mind are the 80’s references. The movie makes good use of a collection of 70’s and 80’s music to set the mood, help define the character of Peter Quill and break the dramatic tension. Quill’s precious cassette tape Walkman is delightfully retro, forms a critical link to his mother and somehow fits right in. Having lived through that era and knowing the music made the movie connect with me. How he manages to have a pair of those foam-covered head phones with the foam still intact after all these years is beyond me.

The second thing is the connections to the rest of the Marvell universe. Sure, there’s the usual Stan Lee cameo. But we also see Thanos, tying us back to the scene at the end of the credits for “The Avengers”. And perhaps more importantly, the infinity stones are introduced, complete with a visual cue suggesting the glowing blue cube from the Captain American and Avengers university is an infinity stone itself. I like the way Marvell is making is harder to miss any of their movies by sprinkling links to the greater Marvell universe in them. Cleaver marketing guys.

Third, there’s the scene at the end of the credits with Howard to Duck. Wow! Howard the Duck was the first Marvell comic character to be turned into a feature film and it also almost drove it’s producer, George Lucas, into bankruptcy. And it’s an awful movie. Don’t watch it. Unless you like to laugh at b-grade Sci Fi.

Finally, the movie seemed to have this really nice balance of seriousness and humor. Not too dark, not too goofy. In short, fun. Just what a summer movie should be.