5 Replies Latest reply: Jul 19, 2013 8:53 AM by be6d2b55-d317-4796-bfb1-b8bc3b3bc8be RSS

    MDEX unique property error

    be6d2b55-d317-4796-bfb1-b8bc3b3bc8be

      I am trying to write to the MDEX and I'm receiving this error:

      exception encountered while executing external function 'ingest-internal:update', caused by error endeca-err:MDEX0001 : Invalid input : An assignment from a unique property was not found on record: <ns1:record xmlns:ns="http://www.endeca.com/MDEX/ingest/1/0" xmlns:ns1="http://www.endeca.com/MDEX/XQuery/2009/09" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"

       

      What unique property assignment am I supposed to be setting? Thank you

        • 1. Re: MDEX unique property error
          Frank

          The record spec property for each record. Also known as the primary key. This is the "Spec Attribute" field in the Integrator record-loading components (like Bulk Add/Replace).

          Each record is identified by an assignment from a property that is single-assign and unique; i.e.:

          mdex-property_IsSingleAssign=true

          mdex-property_IsUnique=true

          This is how the Dgraph can identify a given record.

          Note that it is up to you to select which property you are going to use, to configure the property, and then to make sure that there is a unique assignment for that property for each record.

          • 2. Re: MDEX unique property error
            be6d2b55-d317-4796-bfb1-b8bc3b3bc8be

            What to do when both of these are set to true and you still get the error?  Here is my XML string:

             

             

            <mdex:record xmlns=""><mdex-property_Key>id</mdex-property_Key><mdex-property_DisplayName>id</mdex-property_DisplayName><mdex-property_Type>mdex:string</mdex-property_Type><system-navigation_Sorting>lexical</system-navigation_Sorting><mdex-property_IsUnique>TRUE</mdex-property_IsUnique><mdex-property_IsPropertyValueSearchable>FALSE</mdex-property_IsPropertyValueSearchable></mdex:record>

             

            Also, it didn't let me switch Single Assign:  Cannot change single-assign for the property "id"

            • 3. Re: MDEX unique property error
              Samuele S.

              Hi,

              if your record spec property is id the property description record is ok.

              When you ingest new records, you have to assign a value for the property id; if you don't do this, the system throws an error message.

              Please check if you are assigning a value for the id property for each record you are ingesting and let me know if the problem persists.

              Hope this helps.

               

              Best Regards,

              Samuele Scattolini

              • 4. Re: MDEX unique property error
                Frank

                Three things:

                 

                1. I noticed that your XML string does not have: <mdex-property_IsSingleAssign>true</mdex-property_IsSingleAssign>

                If that's missing, then the system will assign the system default setting to that property. You didn't say which version of the MDEX you are running, but from the Ingest WS version number (ingest/1/0), I"m guessing you're running MDEX 7.4. In 7.4, the default for mdex-property_IsSingleAssign is "false". This means that if you really didn't set the property, then you would get IsSingleAssign=false (which I believe would cause your error). Note that in MDEX 7.5, the default for IsSingleAssign was changed to "true".

                 

                2. In both 7.4 and 7.5, you cannot change the value of IsSingleAssign once the PDR has been created (i.e., the PDR for the "id" standard attribute). The only way to chang it is to delete the PDR and then re-create it with the correct properties.

                 

                3. Assuming you have a SOAP tool like soapUI, you can use the getProperties operation of the MDEX config web service to get all the settings of the id standard attribute.

                • 5. Re: MDEX unique property error
                  be6d2b55-d317-4796-bfb1-b8bc3b3bc8be

                  These were some very helpful responses.   After further analysis though the problem was a null value in my data for a required fied.   Thank you Samuele and Frank.