Uploaded image for project: 'Apache Jena'
  1. Apache Jena
  2. JENA-1000

tdbdump / tdbloader sequence corrupts rdf:type predicates

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Critical
    • Resolution: Cannot Reproduce
    • Affects Version/s: Jena 2.12.1, Jena 2.13.0
    • Fix Version/s: Jena 3.0.1
    • Component/s: TDB
    • Labels:
      None
    • Environment:

      Tested with tdbloader and tdbloader2 versions 2.12.1 and 2.13.0 on Windows/Sun Java 1.7.0_60 and CentOS 6.3/OpenJDK 1.8.0_25. tdbdump was 2.12.1 on CentOS 6.3/OpenJDK 1.8.0_25.

    • Flags:
      Important

      Description

      Steps to reproduce:

      1. A TDB database was exported to N-Quads with tdbdump.
      2. The dump file was then imported into a new TDB database with tdbloader2.
      3. Observe that all rdf:type predicates were replaced with the same randomly selected predicate.

      Work-around:

      A work-around was to run a DELETE/INSERT SPARQL command to reassign rdf:type predicates after the load:

      DELETE

      { ?s custom:200501898-4-1 ?o }

      INSERT

      { ?s rdf:type ?o }

      WHERE {
      ?s custom:200501898-4-1 ?o
      }

      Testing:

      The behavior was consistent across multiple reloads of the same dump file. tdbloader and tdbloader2 were both used for loads and they were run on both Windows and Linux with the same results.

      Note that this is a Critical issue as it leads to silent corruption of user data.

        Attachments

          Activity

            People

            • Assignee:
              andy Andy Seaborne
              Reporter:
              donpellegrino Donald Pellegrino
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: