incorporate locking
incorporate locking
SQLite support
add with_lock support to rails 3.0 and 3.1
ORLY? close isn't a thing until rails 3.2? SRSLY?
SQLite, I give up on you.
make it more likely to see dupes
add transaction around root creation
add transaction around find_or_create creation
can't ask for nested advisory locks with MySQL, so use a back-ported with_lock.
OK, no more locking except within find_or_create_by, because that can't be done by the user.
forgot the .first
added test for child creation (which doesn't use the advisory lock), and moved class-level find_or_create_by_path into a transaction boundary INSIDE the advisory lock (which makes sense after looking at the SQL logs)
flipped transaction and advisory lock to prevent deadlocks
skip parallel tests on rails 3.0 and rails 3.1
boo known bugs
less send()s are better send()s. Also: no more double-locking existing records.
MAYBE I LIKE IT WHEN THE STACK IS THAT DEEP
make transaction boundary and locks as short as possible.
kick travis.