My implementation of Experience Manager 2013 - specifically Session Preview - is having trouble and I can't quite put my finger on why. Site Edit works just fine - I can hook into it from the pages that I've configured to be editable, make adjustments to the appropriate components, etc. After editing a component, the message "The preview for this page is not up to date" appears - as expected. The changes I made to the component are successfully committed to the CME, and a republish from within THAT system works just fine. However, if I try to update the preview inside XPM - or do any publishing from within that context - it fails without throwing an error. The page refreshes, but the "Preview out of date" message appears again and the component presentation has not been updated through a publish
After digging into the logs, there is an error present there:
ERROR SessionWrapperFactory - Exception while cleaning-up session data: Error while committing the transaction, Error while committing the transaction
Well, that's not particularly helpful (or maybe it is, just not to me - in which case awesome! Please explain :). To dig deeper, I turned the log threshold to DEBUG, and some more information fell out, immediately preceding the ERROR above:
DEBUG SqlExceptionHelper - The DELETE statement conflicted with the REFERENCE constraint "FK_VARIANTS_BINARY". The conflict occurred in database "Tridion_Experience_Manager", table "dbo.BINARYVARIANTS". [n/a]
com.microsoft.sqlserver.jdbc.SQLServerException: The DELETE statement conflicted with the REFERENCE constraint "FK_VARIANTS_BINARY". The conflict occurred in database "Tridion_Experience_Manager", table "dbo.BINARYVARIANTS".
The stack trace is quite long and seems irrelevant although I can provide it if that would be helpful.
The debug log shows that the file was an image contained in the presentation that I edited (hence no doubt the BINARYVARIANTS table being involved in the complaint). Unfortunately at this point I'm kind of stumped - I can't figure out why session preview is having trouble publishing this binary file. The official documentation isn't much help here - it's very probable that I've misconfigured something, but I can't tell WHAT it is that I've misconfigured. Hopefully someone who has a better understanding of what Session Preview does internally will be able to take a look at this and see what the trouble is.
Additional information available on request - another problem I'm having is that I'm unsure what is and is not worth investigating as part of the troubleshooting process, so any guidance in that regard would be most helpful.