docs: function( err ){
          if( err ) return cb( err );
  
          consolelog( rnd, "Multiple record lookup in insert done. At this point, recordWithLookups is:", recordWithLookups );
  
          // Cycle through each lookup child of the current record,
          async.eachSeries(
            Object.keys( self.lookupChildrenTablesHash ),
  
            function( recordKey, cb ){
  
              consolelog( rnd, "Working on lookup table:", recordKey);
  
              var childTableData = self.lookupChildrenTablesHash[ recordKey ];
  
              var childLayer = childTableData.layer;
              var nestedParams = childTableData.nestedParams;
  
              consolelog( rnd, "Working on ", childTableData.layer.table );
              consolelog( rnd, "Getting children data (lookup) in child table ", childTableData.layer.table," for field ", nestedParams.localField ," for record", recordWithLookups );
  
              // EXCEPTION: check if the record being looked up isn't the same as the one
              // being added. This is an edge case, but it's nice to cover it
              if( childLayer.table === self.table && recordWithLookups[ self.idProperty ] === recordWithLookups[ recordKey ] ){
  
                // Make up a temporary copy of the record, to which _children and __uc__ fields
                // will be added
                var t = {};
                for( var k in record ){
                  if( !record.hasOwnProperty( k ) ) continue;
                  t[ k ] = record[ k ];
                }
                childLayer._addUcFields( t );
                t._children = {};
                recordWithLookups._children[ recordKey ] = t;
  
                return cb( null );
              }
  
              // Get children data for that child table
              // ROOT to _getChildrenData
              self._getChildrenData( recordWithLookups, recordKey, function( err, childData){
                if( err ) return cb( err );
  
                if( childData ){
  
                  childLayer._addUcFields( childData );
                  childData._children = {};
  
                  consolelog( rnd, "The childData data is:", childData );
  
                   // Make the record uppercase since it's for a search
                  recordWithLookups._children[ recordKey ] = childData;
                }
  
                // That's it!
                cb( null );
              });
            },
  
            // End of cycle: function can continue
  
            function( err ){
              if( err ) return cb( err );
  
              consolelog( rnd, "completeRecord done. At this point, recordWithLookups is:", recordWithLookups );
  
              cb( null, recordWithLookups );
            }
          );
  
        }