Yes, if you look at the tool parameter you'll see that there is a tick box for 'selected feature only'
All you have to do is to select the polygon you want to split (manually, with the 'select by expression' button or by using the processing tool 'select by expression') on your polygon layer then run the 'split by line' tool with the box checked.
Note that ...
Turns out to be quite simple. You use the "PostgreSQL execute and Load" process step. And the output from this SQL will be available as inputs to other steps.
Also worth knowing that this does not work unless your query outputs a geometry (despite it being marked optional). I faked it with:-
SELECT distinct code,
It is not yet the ultimate solution in terms of using entirely a Virtual Layer. However, it is possible to overcome the issue of creating offset for the starting/ending points. And it works well within a Processing Modeller, see Phase 3.
Tested on QGIS 3.4
The full solution will probably include something as ST_Line_Interpolate_Point() and using ...
I had the same error with QGIS 3, by writing multiple times to a vector layer with "qgis:zonalstatistics" processing function.
The layer wasn't in the registry:
registryLayers = QgsProject.instance().mapLayers().keys()
legendLayers = [ layer.layerId() for layer in QgsProject.instance().layerTreeRoot().findLayers() ]
layersToRemove = set( registryLayers ) - ...