Call apachesolr_mark_entity without node_save I need your advise. I have this code:

$nid = 5; //example
$engine = 'mustang';
$node = new stdClass();
$node-&gt;nid = $nid;          // node id
$node-&gt;type = 'car';  // aka content type
$node-&gt;engine[LANGUAGE_NONE][0]['value'] = $engine;
field_attach_update('node', $node);
//send to solr
apachesolr_mark_entity('node', $nid);


The code was used to update a field called engine in content type car without using node_save(). This way is used because more lightweight then calling using node_load() and then node_save(). 

But unfortunately I can not send the entity to solr using apachesolr_mark_entity(). apachesolr_mark_entity() needs node_save() to work.

How to allow apachesolr_mark_entity() works although I don't use node_save()?
apachesolr_mark_entity() needs node_save() to work.


I would have to disagree; this is the code:

function apachesolr_mark_entity($entity_type, $entity_id) {
  module_load_include('inc', 'apachesolr', 'apachesolr.index');
  $table = apachesolr_get_indexer_table($entity_type);
  if (!empty($table)) {
    db_update($table)
      -&gt;condition('entity_id', $entity_id)
      -&gt;fields(array('changed' =&gt; REQUEST_TIME))
      -&gt;execute();
  }
}


As you can see it's just a simple database update, node_save() is not involved.