<?xml version="1.0" encoding="UTF-8"?>
<changelog xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="file:/var/app/InputFileSchema.xsd">
    <changeset id="NR-MIG_missing_featured2:1" author="rshield" run-on-change="true">
        <precondition>
            <sqlquery>
                <![CDATA[
                    SELECT RECORDING_ID, ARTIST_ID, SEQUENCE, ARTIST_NAME
                    FROM dev_engineering.rshield.compound_featured_artists
                    WHERE ARTIST_NAME IS NOT NULL AND RUN = 2
                    AND ARTIST_NAME NOT IN (
                        SELECT DISTINCT C.ARTIST_NAME
                        FROM dev_engineering.rshield.compound_featured_artists F
                        INNER JOIN dev_engineering.rshield.compound_artists C
                        ON F.ARTIST_NAME = C.ARTIST_NAME
                    );
                ]]>
            </sqlquery>
        </precondition>
        <cypherquery>
            <![CDATA[
                MERGE(p:NrParticipant {externalId: event.ARTIST_ID})
                ON CREATE SET
                    p.id = apoc.create.uuid(),
                    p.name = event.ARTIST_NAME,
                    p.createdBy = 'database/NR-MIG_missing_featured2',
                    p.createdAt = datetime(),
                    p.lastModifiedAt = datetime(),
                    p.lastModifiedBy = 'database/NR-MIG_missing_featured2'
                ON MATCH SET
                    p.lastModifiedAt = datetime(),
                    p.lastModifiedBy = 'database/NR-MIG_missing_featured2'
                WITH p,event
                MATCH(s:NrSoundRecording {externalId: event.RECORDING_ID}) 
                WITH p,s,event
                MERGE(s)-[r:HAS_FEATURED_ARTIST {nrSequence: event.SEQUENCE}]->(p)
                ON CREATE SET
                    r.createdBy = 'database/NR-MIG_missing_featured2',
                    r.createdAt = datetime(),
                    r.lastModifiedAt = datetime(),
                    r.lastModifiedBy = 'database/NR-MIG_missing_featured2'
                ON MATCH SET
                    r.lastModifiedAt = datetime(),
                    r.lastModifiedBy = 'database/NR-MIG_missing_featured2'
            ]]>
        </cypherquery>
    </changeset>
</changelog>
