0x8007003B timeout copying large file to Samba server

PROBLEM: 0x8007003B timeout copying large file to Samba server

SOLUTION: This is an SMB.CONF issue, solved / fixed with this line:

strict allocate = no

DESCRIPTION: I had this issue for a long time, and mostly the web mocks people, tells them to do stupid things, or generally is unhelpful.  Lots of 2GB, or “your network” or “your firewall” or “turn off DPI” or whatever, none of it applicable to me.  I just accepted it, but decided to dig a little deeper today.

The exact amount of data written before it fails would vary, but the size from LS would always be the full file size.  Higher performance filesystems such as XFS, EXT4, JFS, all of them on NVMe arrays, I found I could get about 55GB allocated before timeout.  On spinning disk, it was much less, which is probably why many people fell down the rabbit hole of claiming 2GB limits, etc.

Strict Allocate = YES tells it to allocate the whole file upon request, which is what Windows does.  Samba says “OK, hold on”, and then times out.  Some people used powershell on a client to change the smbclient timeout to 600 seconds, or whatever, but that’s not really ideal, since it does not scale.

Strict Allocate = NO says to use normal UNIX semantics, where the file has no pre-allocated blocks, and allocates blocks only as the data comes in.  This starts with a fully sparse file, and data copy status on the windows client shows it processing immediately.  This is what we want for large files.  If it was only small files, then we don’t care.

I made this a global change.  I don’t need fully pre-allocated, non-sparse files on my file server.  It’s possible someone writing databases might need this, and you’d want to make sure you didn’t feed data faster than the kernel can allocate blocks.  Another one of those multiple filesystems kind of solutions.

When you play with tunables, you run into things that people don’t really know how to troubleshoot.  That’s what this is for, just so it shows up in web searches.


iMessage broken… and FIXED

iMessage always eats my messages. Both directions.
It’s been broken since I set up my first iPad,
which always gets all of my messages if it is logged in to iMessage.

If I turn off iMessage, Apple users cannot message me, but they get my SMS messages.
I turned it off before moving off of AT&T, but it was mostly broken there too.

I have wiped and reinstalled.
I have moved to a new device.
No AppleCare, so I’m not calling in.

My solution came from complaints about this happening on iOS 7.
The fix appears to be a subset of http://support.apple.com/kb/ts2755.

The summary of this fix, which should fix 99% of any iMessage problems:
* Settings -> Disable Facetime and iMessage on all devices
* Settings -> General -> Reset -> Network on all devices.
* Wait for reboot to finish
* Re-add any WiFi networks as needed.
* On the iPhone first, turn on iMessage. Wait for it to register.
* Turn on Facetime
* On other devices, one at a time, turn on iMessage, then Facetime.

Now, iMessage is working working better than ever.
1) I sent a message from my phone, and I see it on my iPad as having been sent as well. I never had that.

2) I sent one to my son who’s network is turned off in the evenings. My phone said it was sent iMessage. After 2 mins, it updated and said it was sent via SMS.

Neither of these have ever happened for me, so it’s all better than fixed. yAy!