The .hotfiles.btree is a file that is used to keep track of the files that currently occupy the hot file area of the metadata zone. The metadata zone, is the area where volume metadata and frequently used small files ("hot files") are stored the on disk.
The is used to track commonly-used small files so their position on disk can be optimized and improve performance.
You will find the .hotfiles.btree at the root of the file system...
Regarding error -36:
Type -36 error (I/O Errors (bummers)
This file is having difficulty while either reading from the drive or writing to the drive. The file
may have been improperly written data to the drive or the hard drive or disk may be damaged.
This is almost always indicative of a media error (hard error on the disk). Sometimes (rarely) it is transient.
Solutions: Try copying the file to another drive. Use a disk recovery software, such as Disk First Aid to examine the disk. You can try rebooting with all extensions off. Once in a while this will allow you to read the data. The file in question should be restored from a backup that was stored on a different disk. Regular backups can reduce the time to recover from this error.
Something further (and more technical gobbldy-gook) on the error -36:
If you pass a block of memory to FSWriteFork and part of that memory is not mapped (that is, trying to access that memory to do the disk write generates a segfault) then you get ioErr back, not paramErr. That tip led us to realize that what we really had was bad endian-swapping code that (on little-endian Macs only) generated bogus pointers. Depending on luck and the stars, that bogus memory might be mapped (thus writing junk into the file) or unmapped (generating the -36 error)