user24556: I've created a regtest network consisting of 2 nodes - node0 & node1.
I'd like to have a fork on the common blockchain and seemingly achieved it by doing so:

nodes start
node0 adds node1 via addnode
node0 generates 1 block with hash 4dac...
node1 generates 1 block with hash 5d8b...
node0 invalidates node0's block with hash 5d8b... via invalidate <hash>
node1 stops
node0 generates 1 block with hash 64f2...
node1 restarts
node1 generates 1 block with hash 5sfg...
node0: getchaintips returns an array with invalidated block's hash 5d8b... with status 

Now my questions:
a) How can I achieve a "valid-fork" status in the output of getchaintips for the previously invalidated fork? [SOLVED] 
b) Is it possible for a node to "conciously"/via RPC give up its own chain and switch to the competing chain?

user208: The longest valid chain is always chosen automatically. Thus the way to make it forcefully switch is using the invalidateblock hidden RPC.

24556: <p>I've created a regtest network consisting of 2 nodes - node0 &amp; node1.<br/>
I'd like to have a fork on the common blockchain and seemingly achieved it by doing so:</p>

<ol>
<li>nodes start</li>
<li>node0 adds node1 via <code>addnode</code></li>
<li>node0 generates 1 block with hash 4dac...</li>
<li>node1 generates 1 block with hash 5d8b...</li>
<li>node0 invalidates node0's block with hash 5d8b... via <code>invalidate &lt;hash&gt;</code></li>
<li>node1 stops</li>
<li>node0 generates 1 block with hash 64f2...</li>
<li>node1 restarts</li>
<li>node1 generates 1 block with hash 5sfg...</li>
<li>node0: <code>getchaintips</code> returns an array with invalidated block's hash 5d8b... with status </li>
</ol>

<p><strong>Now my questions:<br/></strong>
<strong>a)</strong> How can I achieve a <em>"<code>valid-fork</code>" status</em> in the output of getchaintips for the previously invalidated fork? [SOLVED] <br/></p>

<h2><strong>b)</strong> Is it possible for a node to "conciously"/via RPC give up its own chain and switch to the competing chain?</h2>
 208: <p>The longest <em>valid</em> chain is always chosen automatically. Thus the way to make it forcefully switch is using the <code>invalidateblock</code> hidden RPC.</p>
