Hi all,

I'm currently evaluating Apache Syncope for my institution and have setup a 
connector server with a csvdir bundle installed. After setting up the connector 
and adding the resource I want to start a pull task to see if it is working.
The Problem is that the execution of the pull tasks always errors out with the 
following stacktrace<https://pastebin.com/Wfgat5Q0>:


  org.quartz.JobExecutionException: While pulling from connector [See nested 
exception: 
org.identityconnectors.framework.impl.api.remote.RemoteWrappedException: 
org.identityconnectors.framework.common.exceptions.ConnectorIOException: 
java.lang.IllegalStateException: java.sql.SQLSyntaxErrorException: user lacks 
privilege or object not found: USER_EX10716 in statement [SELECT * FROM 
USER_EX10716]]
        at 
org.apache.syncope.core.provisioning.java.pushpull.PullJobDelegate.doExecuteProvisioning(PullJobDelegate.java:385)
        at 
org.apache.syncope.core.provisioning.java.pushpull.PullJobDelegate.doExecuteProvisioning(PullJobDelegate.java:78)
        at 
org.apache.syncope.core.provisioning.java.pushpull.AbstractProvisioningJobDelegate.doExecute(AbstractProvisioningJobDelegate.java:702)
        at 
org.apache.syncope.core.provisioning.java.job.AbstractSchedTaskJobDelegate.execute(AbstractSchedTaskJobDelegate.java:155)

Which I think comes from a HSQLD used by the connector? I'm on my wit's end 
about it and would greatly appreciate if someone could point me towards a 
solution.

Thank you

--- Some more hopefully helpful information ---

Connector:

[
  {
    "key": "018b38c5-07b2-7d6a-a08c-e706f3745cda",
    "errored": false,
    "adminRealm": "/",
    "location": "connids://*****@127.0.0.1:8759?trustAllCerts=true",
    "connectorName": "net.tirasa.connid.bundles.csvdir.CSVDirConnector",
    "bundleName": "net.tirasa.connid.bundles.csvdir",
    "version": "0.8.9",
    "conf": [
      {
        "schema": {
          "name": "sourcePath",
          "displayName": "Source path",
          "helpMessage": "Absolute path of a directory where the CSV files to 
be processed are located",
          "type": "java.lang.String",
          "required": true,
          "order": 1,
          "confidential": false,
          "defaultValues": []
        },
        "values": [
          "/Filepath/"
        ],
        "overridable": false
      },
      {
        "schema": {
          "name": "fileMask",
          "displayName": "File mask",
          "helpMessage": "Regular expression describing files to be processed",
          "type": "java.lang.String",
          "required": true,
          "order": 2,
          "confidential": false,
          "defaultValues": []
        },
        "values": [
          "fileName.csv"
        ],
        "overridable": false
      },
      {
        "schema": {
          "name": "encoding",
          "displayName": "File encoding",
          "helpMessage": "Basic encoding of the file",
          "type": "java.lang.String",
          "required": false,
          "order": 3,
          "confidential": false,
          "defaultValues": [
            "UTF-8"
          ]
        },
        "values": [
          "UTF-8"
        ],
        "overridable": false
      },
      {
        "schema": {
          "name": "fieldDelimiter",
          "displayName": "Field delimiter",
          "helpMessage": "Delimiter used to separate fields in CSV files. 
Default is \",\".",
          "type": "char",
          "required": false,
          "order": 4,
          "confidential": false,
          "defaultValues": [
            ","
          ]
        },
        "values": [
          "§"
        ],
        "overridable": false
      },
      {
        "schema": {
          "name": "textQualifier",
          "displayName": "Text qualifier",
          "helpMessage": "Delimiter to determine beginning and end of text in 
value. Default is \".",
          "type": "char",
          "required": false,
          "order": 5,
          "confidential": false,
          "defaultValues": [
            "\""
          ]
        },
        "values": [
          "\""
        ],
        "overridable": false
      },
      {
        "schema": {
          "name": "keyColumnNames",
          "displayName": "Key column name",
          "helpMessage": "Name of the column used to identify user uniquely",
          "type": "[Ljava.lang.String;",
          "required": true,
          "order": 6,
          "confidential": false,
          "defaultValues": []
        },
        "values": [
          "campusnet_id",
          "studyid"
        ],
        "overridable": false
      },
      {
        "schema": {
          "name": "passwordColumnName",
          "displayName": "Password column name",
          "helpMessage": "Name of the column used to specify user password",
          "type": "java.lang.String",
          "required": false,
          "order": 7,
          "confidential": false,
          "defaultValues": []
        },
        "values": [],
        "overridable": false
      },
      {
        "schema": {
          "name": "deleteColumnName",
          "displayName": "Delete column name",
          "helpMessage": "Name of the column used to specify users to be 
deleted",
          "type": "java.lang.String",
          "required": false,
          "order": 8,
          "confidential": false,
          "defaultValues": []
        },
        "values": [],
        "overridable": false
      },
      {
        "schema": {
          "name": "quotationRequired",
          "displayName": "Value quotation required",
          "helpMessage": "Specify if value quotation is required. Default is 
true.",
          "type": "java.lang.Boolean",
          "required": false,
          "order": 9,
          "confidential": false,
          "defaultValues": [
            true
          ]
        },
        "values": [
          "false"
        ],
        "overridable": false
      },
      {
        "schema": {
          "name": "fields",
          "displayName": "Column names",
          "helpMessage": "Column names",
          "type": "[Ljava.lang.String;",
          "required": true,
          "order": 10,
          "confidential": false,
          "defaultValues": []
        },
        "values": [
          "Matr.Nr.",
          "Nachname",
          "Vorname",
          "Gs",
          "WahlFB",
          "Semester",
          "RMdatum",
          "Mittelname",
          "Titel",
          "Geburtsname",
          "NamePrefix",
          "NameAdd",
          "Geburtsdatum",
          "ErstSem",
          "Strasse",
          "PLZ",
          "Ort",
          "Land",
          "campusnet_id",
          "initpin",
          "studyid",
          "WahlFS",
          "Fach1",
          "Fachsem1",
          "Fach2",
          "Fachsem2",
          "Fach3",
          "Fachsem3",
          "Fach4",
          "Fachsem4",
          "akteurtyp"
        ],
        "overridable": false
      },
     {
        "schema": {
          "name": "ignoreHeader",
          "displayName": "Ignore header",
          "helpMessage": "Specify if first line of the file must be ignored. 
Default is true.",
          "type": "java.lang.Boolean",
          "required": false,
          "order": 11,
          "confidential": false,
          "defaultValues": [
            true
          ]
        },
        "values": [
          "true"
        ],
        "overridable": false
      },
      {
        "schema": {
          "name": "keyseparator",
          "displayName": "Key separator",
          "helpMessage": "Character used to separate keys in a multi-key 
scenario. Default is \",\".",
          "type": "java.lang.String",
          "required": false,
          "order": 12,
          "confidential": false,
          "defaultValues": [
            ","
          ]
        },
        "values": [
          ","
        ],
        "overridable": false
      },
      {
        "schema": {
          "name": "multivalueSeparator",
          "displayName": "Multi value separator",
          "helpMessage": "Character used to separate values in a multi-value 
scenario. Multivalue unsupported if not provided.",
          "type": "java.lang.String",
          "required": false,
          "order": 13,
          "confidential": false,
          "defaultValues": []
        },
        "values": [],
        "overridable": false
      },
      {
        "schema": {
          "name": "defaultStatusValue",
          "displayName": "Default Status Value",
          "helpMessage": "Enter the value for status in case of status not 
specified. Default is \"true\".",
          "type": "java.lang.String",
          "required": false,
          "order": 14,
          "confidential": false,
          "defaultValues": [
            "true"
          ]
        },
        "values": [
          "true"
        ],
        "overridable": false
      },
      {
        "schema": {
          "name": "disabledStatusValue",
          "displayName": "Disabled Status Value",
          "helpMessage": "Specify a value for disabled status. Default is 
\"false\".",
          "type": "java.lang.String",
          "required": false,
          "order": 15,
          "confidential": false,
          "defaultValues": [
            "false"
          ]
        },
        "values": [
          "false"
        ],
        "overridable": false
      },
      {
        "schema": {
          "name": "enabledStatusValue",
          "displayName": "Enable Status Value",
          "helpMessage": "Specify a value for enabled status. Default is 
\"true\".",
          "type": "java.lang.String",
          "required": false,
          "order": 16,
          "confidential": false,
          "defaultValues": [
            "true"
          ]
        },
        "values": [
          "true"
        ],
        "overridable": false
      },
      {
        "schema": {
          "name": "statusColumn",
          "displayName": "Status Column name",
          "helpMessage": "Status column name.",
          "type": "java.lang.String",
          "required": false,
          "order": 17,
          "confidential": false,
          "defaultValues": []
        },
        "values": [],
        "overridable": false
      },
      {
        "schema": {
          "name": "objectClassColumn",
          "displayName": "ObjectClass Column Name",
          "helpMessage": "Column name identifying identity record type",
          "type": "java.lang.String",
          "required": false,
          "order": 18,
          "confidential": false,
          "defaultValues": []
        },
        "values": [],
        "overridable": false
      },
      {
        "schema": {
          "name": "objectClass",
          "displayName": "Supported Object Classes",
          "helpMessage": "Supported object classes (__ACCOUNT__ as default if 
empty)",
          "type": "[Ljava.lang.String;",
          "required": false,
          "order": 19,
          "confidential": false,
          "defaultValues": [
            "__ACCOUNT__"
          ]
        },
        "values": [
          "CONTRACT"
        ],
        "overridable": false
      }
    ],
    "capabilities": [
      "SEARCH"
    ],
    "displayName": "remoteCSV",
    "connRequestTimeout": 10,
    "poolConf": null
  }
]

Pulltask:

{
  "prev": null,
  "next": null,
  "result": [
    {
      "_class": "org.apache.syncope.common.lib.to.PullTaskTO",
      "key": "018b4347-f95c-7a42-bcbd-ef19f28934fb",
      "start": "2023-10-18T16:54:37.881+02:00",
      "end": "2023-10-18T16:54:38.058+02:00",
      "latestExecStatus": "FAILURE",
      "lastExecutor": "admin",
      "executions": [
        {
          "start": "2023-10-18T16:54:37.881+02:00",
          "end": "2023-10-18T16:54:38.058+02:00",
          "key": "018b4348-0f39-7306-8fef-328f11f795fb",
          "jobType": "TASK",
          "refKey": "018b4347-f95c-7a42-bcbd-ef19f28934fb",
          "refDesc": "PULL Task 018b4347-f95c-7a42-bcbd-ef19f28934fb 
FullRecoPull",
          "status": "FAILURE",
          "message": "very long stacktrace",
          "executor": "admin"
        }
      ],
      "startAt": null,
      "cronExpression": null,
      "jobDelegate": null,
      "name": "FullRecoPull",
      "description": null,
      "lastExec": "2023-10-18T16:54:37.881+02:00",
      "nextExec": null,
      "active": true,
      "resource": "TUCaNImportCSV",
      "performCreate": true,
      "performUpdate": true,
      "performDelete": false,
      "syncStatus": false,
      "unmatchingRule": "IGNORE",
      "matchingRule": "UPDATE",
      "actions": [],
      "concurrentSettings": null,
      "pullMode": "FULL_RECONCILIATION",
     "reconFilterBuilder": null,
      "destinationRealm": "/",
      "remediation": false,
      "templates": {}
    }
  ],
  "page": 1,
  "size": 1,
  "totalCount": 1
}

Reply via email to