forcedPhotCcd.py is currently broken due to the requirement of the lsst.afw.table.getChildren() function that the SourceCatalog is sorted by the parent key (i.e. lsst.afw.table.SourceTable.getParentKey()). This occurs naturally in the case of SourceCatalogs produced by the detection and deblending tasks, but it may not be true when concatenating multiple such catalogs. This is indeed the case for forcedPhotCcd.py as a given CCD can be overlapped by multiple patches, thus requiring a concatenation of the reference catalogs of all overlapping patches.
There two places in the running of forcedPhotCcd.py where calls to getChildren() can cause a failure: one in the subset() function in references.py, and the other in the run function of SingleFrameMeasurementTask in sfm.py.