zotero error

Error: cleanDOI: argument must be a string
cleanDOI@chrome://zotero/content/xpcom/utilities/utilities.js:407:15
_cacheKeyMappings@chrome://zotero/content/xpcom/retractions.js:773:21
From previous event:
ZoteroService@file:///C:/Program%20Files%20(x86)/Zotero/components/zotero-service.js:346:7
@chrome://zotero/content/include.js:4:14
my zotero suddenly meet this error, I can't open it
«1
  • Can you provide a Debug ID for Zotero startup through getting this error, using the "Restart with Logging Enabled" option?
  • where can i find it, i can't see the option at all
  • I linked to instructions.
  • I have tried but I can't open the debug
  • edited March 22, 2022
    Meaning what, exactly?

    Can you take a screenshot, upload it somewhere (e.g., Dropbox or Google Drive), and provide a link here, or email it to support@zotero.org with a link to this thread? (We'll respond here in either case.)
  • file:///C:/Users/Administrator/Desktop/Debug%20Output.htm
  • No, that doesn't work. You can email files to support@zotero.org with a link to this thread.
  • No, please don't post the output here. Just email us the whole thing.
  • edited March 22, 2022
    [output removed — D.S.]

    (3)(+0000011): Loading collection relations

    (4)(+0000001): SELECT * FROM collectionRelations JOIN relationPredicates USING (predicateID)

    (3)(+0000001): Loaded collection relations in 2 ms

    (3)(+0000000): Loading item relations

    (4)(+0000001): SELECT * FROM itemRelations JOIN relationPredicates USING (predicateID)

    (3)(+0000001): Loaded item relations in 2 ms

    (4)(+0000001): SELECT itemID AS id, fieldID, value FROM itemData JOIN itemDataValues USING (valueID) WHERE fieldID IN (?, ?) [58, 16]

    (1)(+0000026): Error: cleanDOI: argument must be a string Error: cleanDOI: argument must be a string cleanDOI@chrome://zotero/content/xpcom/utilities/utilities.js:407:15 _cacheKeyMappings@chrome://zotero/content/xpcom/retractions.js:773:21 From previous event: ZoteroService@file:///C:/Program%20Files%20(x86)/Zotero/components/zotero-service.js:346:7 @chrome://zotero/content/include.js:4:14

    (4)(+0000003): REPLACE INTO settings VALUES ('db', 'integrityCheck', 1)

    […]

    (3)(+0098002): HTTP POST "version => 6.0.1, platform => …" (15464 chars) to https://repo.zotero.org/repo/report?debug=1
  • OK, we'll investigate and get back to you shortly — thanks.
  • I have sent a email. I am really in a hurry, as my note is in it, and I really need it
  • OK, can you go to Tools → Developer → Run JavaScript, run this code, and let us know the result?

    var doiFieldID = Zotero.ItemFields.getID('DOI');
    var extraFieldID = Zotero.ItemFields.getID('extra');

    var sql = "SELECT itemID AS id, fieldID, value FROM itemData "
    + "JOIN itemDataValues USING (valueID) WHERE fieldID IN (?, ?)";
    var rows = await Zotero.DB.queryAsync(
    sql,
    [
    doiFieldID,
    extraFieldID
    ]
    );

    for (let row of rows) {
    if (row.fieldID != doiFieldID) {
    let { doi, pmid } = Zotero.Retractions._extractExtraFields(row.value);
    if (doi) {
    let value;
    try {
    value = Zotero.Utilities.cleanDOI(doi);
    }
    catch (e) {
    return `DOI ${doi}, value ${value} ${typeof value}`;
    }
    }
    }
    }
  • ok, please bear me
  • ===>undefined<=== (undefined)

    the result
  • Hmm. But you're still getting the same error at startup?
  • Oh, sorry, try this:

    var doiFieldID = Zotero.ItemFields.getID('DOI');
    var extraFieldID = Zotero.ItemFields.getID('extra');

    var sql = "SELECT itemID AS id, fieldID, value FROM itemData "
    + "JOIN itemDataValues USING (valueID) WHERE fieldID IN (?, ?)";
    var rows = await Zotero.DB.queryAsync(
    sql,
    [
    doiFieldID,
    extraFieldID
    ]
    );

    for (let row of rows) {
    if (row.fieldID == doiFieldID) {
    let value;
    try {
    value = Zotero.Utilities.cleanDOI(row.value);
    }
    catch (e) {
    return `Value: ${row.value}`;
    }
    }
    }
  • i can't use the tool now, I don't know why
  • Value: 0

    result
  • OK, thanks — we'll have a fix out shortly. Stay tuned.
  • As a temporary fix, open the Zotero preferences, go to the Advanced, click on Config Editor, and set extensions.zotero.retractions.enabled to false.

    That will temporarily disable retracted-item checking but will fix this. We'll let you know when you can turn that back on.
  • @Cindyjyy: Also, have you used any sort of plugins that change the DOI field of items?
  • edited March 22, 2022
    @Cindyjyy: OK, this is caused by the Scite plugin. See https://forums.zotero.org/discussion/comment/402422/#Comment_402422

    Once you've done that, you can set extensions.zotero.retractions.enabled back to true.
  • thank you, i will try
  • I have run the command, still can't sync now
  • Can you provide a Debug ID for an attempt to sync?
  • bug ID:738279864,thank you
  • debug ID:D526833314
  • No, you're still not providing a Debug ID for the actual sync attempt, which is what we need. You need to start logging, reproduce the error, and then submit the output.
This discussion has been closed.